@caitun/speex
v1.0.0
Published
Browser Speex encoder and decoder powered by Speex WebAssembly.
Readme
@caitun/speex
Browser Speex encoder and decoder powered by Speex compiled to WebAssembly.
Install
npm install @caitun/speexUsage
import { SpeexEncoder, SpeexDecoder } from '@caitun/speex'
const encoder = await SpeexEncoder.create({
sampleRate: 16000,
quality: 8,
complexity: 3
})
const pcm = new Float32Array(encoder.frameSize)
const frame = encoder.encode(pcm)
encoder.close()
const decoder = await SpeexDecoder.create({
sampleRate: 16000
})
const decoded = decoder.decode(frame)
decoder.close()If your bundler serves WASM assets from a custom location, pass locateFile:
const encoder = await SpeexEncoder.create({
locateFile: (path) => `/assets/${path}`
})Build
npm run buildbuild:wasm requires Emscripten emcc.
