diff options
| author | 8cy <[email protected]> | 2020-04-03 02:37:42 -0700 |
|---|---|---|
| committer | 8cy <[email protected]> | 2020-04-03 02:37:42 -0700 |
| commit | 60867fb030bae582082340ead7dbc7efdc2f5398 (patch) | |
| tree | 4c6a7356351be2e4914e15c4703172597c45656e /node_modules/@discordjs/opus/src/node-opus.h | |
| parent | commenting (diff) | |
| download | s5nical-60867fb030bae582082340ead7dbc7efdc2f5398.tar.xz s5nical-60867fb030bae582082340ead7dbc7efdc2f5398.zip | |
2020/04/03, 02:34, v1.2.0
Diffstat (limited to 'node_modules/@discordjs/opus/src/node-opus.h')
| -rw-r--r-- | node_modules/@discordjs/opus/src/node-opus.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/node_modules/@discordjs/opus/src/node-opus.h b/node_modules/@discordjs/opus/src/node-opus.h new file mode 100644 index 0000000..5ca3292 --- /dev/null +++ b/node_modules/@discordjs/opus/src/node-opus.h @@ -0,0 +1,43 @@ +using namespace Napi; + +#define FRAME_SIZE 960 +#define MAX_FRAME_SIZE 6 * 960 +#define MAX_PACKET_SIZE 3 * 1276 +#define BITRATE 64000 + +class OpusEncoder : public ObjectWrap<OpusEncoder> { + private: + OpusEncoder* encoder; + OpusDecoder* decoder; + + opus_int32 rate; + int channels; + int application; + + unsigned char outOpus[MAX_PACKET_SIZE]; + opus_int16* outPcm; + + protected: + int EnsureEncoder(); + + int EnsureDecoder(); + + public: + static Object Init(Napi::Env env, Object exports); + + OpusEncoder(const CallbackInfo& args); + + ~OpusEncoder(); + + Napi::Value Encode(const CallbackInfo& args); + + Napi::Value Decode(const CallbackInfo& args); + + void ApplyEncoderCTL(const CallbackInfo& args); + + void ApplyDecoderCTL(const CallbackInfo& args); + + void SetBitrate(const CallbackInfo& args); + + Napi::Value GetBitrate(const CallbackInfo& args); +}; |