bun add @evan/opus
npm install @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));
node@10 | node@12 | node@14 | node@16 | node@18 | |
---|---|---|---|---|---|
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
MIT © Evan