import * as opusscript_native from "dist/opusscript.js"
// 48kHz sampling rate, 20ms frame duration, stereo audio (2 channels)
var samplingRate = 48000;
var frameDuration = 20;
var channels = 2;
// Optimize encoding for audio. Available applications are VOIP, AUDIO, and RESTRICTED_LOWDELAY
var encoder = new opusscript(samplingRate, channels, opusscript.Application.AUDIO);
var frameSize = samplingRate * frameDuration / 1000;
// Get PCM data from somewhere and encode it into opus
var pcmData = new Buffer(pcmSource);
var encodedPacket = encoder.encode(pcmData, frameSize);
// Decode the opus packet back into PCM
var decodedPacket = encoder.decode(encodedPacket);
// Delete the encoder when finished with it (Emscripten does not automatically call C++ object destructors)
encoder.delete();
forked from abalabahaha/opusscript
-
Notifications
You must be signed in to change notification settings - Fork 0
JS bindings for libopus 1.3.1, ported with emscripten
License
safelix/opusscript
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
About
JS bindings for libopus 1.3.1, ported with emscripten
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- JavaScript 36.2%
- Makefile 34.7%
- C++ 29.1%