@evan/opus

fast opus bindings for node and browsers

Usage no npm install needed!

<script type="module">
  import evanOpus from 'https://cdn.skypack.dev/@evan/opus';
</script>

README

fast opus bindings for node and browsers

npm i @evan/opus

import { Encoder, Decoder } from '@evan/opus';

const e = new Encoder({ channels: 2, sample_rate: 48_000 });
const d = new Decoder({ channels: 2, sample_rate: 48_000 });

d.decode(e.encode(pcm));

supported platforms

node@10 node@12 node@14 node@16
wasm32
macos x64
macos arm64
windows x64
linux x64 gnu
linux arm64 gnu

you can force usage of wasm by setting OPUS_FORCE_WASM env variable

for deno and browsers use @evan/wasm/target/opus/deno.js from npm/cdn

benchmarks

encoding decoding

License

MIT © Evan