Add opusscript as a possible opus encoder (#558)

* Add opusscript as a possible opus encoder

* Make weird eslint rule happy
This commit is contained in:
abal
2016-08-28 09:35:59 -07:00
committed by Amish Shah
parent a959cd339c
commit ac7e1a052c
4 changed files with 32 additions and 2 deletions

View File

@@ -35,7 +35,8 @@
"fs-extra": "^0.30.0" "fs-extra": "^0.30.0"
}, },
"optionalDependencies": { "optionalDependencies": {
"node-opus": "^0.1.13" "node-opus": "^0.1.13",
"opusscript": "^0.0.1"
}, },
"engines": { "engines": {
"node": ">=0.12.7" "node": ">=0.12.7"

View File

@@ -20,7 +20,7 @@ class NodeOpusEngine extends OpusEngine {
} }
decode(buffer) { decode(buffer) {
super.encode(buffer); super.decode(buffer);
return this.encoder.decode(buffer, 1920); return this.encoder.decode(buffer, 1920);
} }
} }

View File

@@ -1,5 +1,6 @@
const list = [ const list = [
require('./NodeOpusEngine'), require('./NodeOpusEngine'),
require('./OpusScriptEngine'),
]; ];
exports.add = encoder => { exports.add = encoder => {

View File

@@ -0,0 +1,28 @@
const OpusEngine = require('./BaseOpusEngine');
let Opusscript;
class NodeOpusEngine extends OpusEngine {
constructor(player) {
super(player);
try {
// eslint-disable-next-line import/no-unresolved
Opusscript = require('opusscript');
} catch (err) {
throw err;
}
this.encoder = new Opusscript(48000, 2);
}
encode(buffer) {
super.encode(buffer);
return this.encoder.encode(buffer, 960);
}
decode(buffer) {
super.decode(buffer);
return this.encoder.decode(buffer);
}
}
module.exports = NodeOpusEngine;