ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
audio.cpp File Reference

Go to the source code of this file.

Data Structures

class  AudioProcessorBinding
class  OpusCodecBinding

Functions

 EMSCRIPTEN_DECLARE_VAL_TYPE (AudioSamples)
 EMSCRIPTEN_DECLARE_VAL_TYPE (PcmSamples)
 EMSCRIPTEN_DECLARE_VAL_TYPE (OpusBytes)
 EMSCRIPTEN_DECLARE_VAL_TYPE (NullableOpusBytes)
 EMSCRIPTEN_DECLARE_VAL_TYPE (NullablePcmSamples)
 EMSCRIPTEN_BINDINGS (ascii_chat_audio)

Function Documentation

◆ EMSCRIPTEN_BINDINGS()

EMSCRIPTEN_BINDINGS ( ascii_chat_audio )

Definition at line 169 of file audio.cpp.

169 {
170 emscripten::register_type<AudioSamples>("AudioSamples", "Float32Array");
171 emscripten::register_type<PcmSamples>("PcmSamples", "Int16Array");
172 emscripten::register_type<OpusBytes>("OpusBytes", "Uint8Array");
173 emscripten::register_type<NullableOpusBytes>("NullableOpusBytes", "Uint8Array | null");
174 emscripten::register_type<NullablePcmSamples>("NullablePcmSamples", "Int16Array | null");
175 emscripten::class_<AudioProcessorBinding>("AudioProcessorBinding")
176 .constructor<int, bool, unsigned>()
177 .constructor<int, bool, unsigned, int>()
178 .function("valid", &AudioProcessorBinding::valid)
179 .function("process", &AudioProcessorBinding::process);
180 emscripten::class_<OpusCodecBinding>("OpusCodecBinding")
181 .constructor<int, int, int, unsigned>()
182 .function("valid", &OpusCodecBinding::valid)
183 .function("encode", &OpusCodecBinding::encode)
184 .function("decode", &OpusCodecBinding::decode);
185}
int process(AudioSamples input, AudioSamples output)
Definition audio.cpp:51
bool valid() const
Definition audio.cpp:48
bool valid() const
Definition audio.cpp:113
NullablePcmSamples decode(OpusBytes packet, int frame_size)
Definition audio.cpp:139
NullableOpusBytes encode(PcmSamples samples)
Definition audio.cpp:117

References OpusCodecBinding::decode(), OpusCodecBinding::encode(), AudioProcessorBinding::process(), AudioProcessorBinding::valid(), and OpusCodecBinding::valid().

◆ EMSCRIPTEN_DECLARE_VAL_TYPE() [1/5]

EMSCRIPTEN_DECLARE_VAL_TYPE ( AudioSamples )

◆ EMSCRIPTEN_DECLARE_VAL_TYPE() [2/5]

EMSCRIPTEN_DECLARE_VAL_TYPE ( NullableOpusBytes )

◆ EMSCRIPTEN_DECLARE_VAL_TYPE() [3/5]

EMSCRIPTEN_DECLARE_VAL_TYPE ( NullablePcmSamples )

References ERROR_INVALID_PARAM.

◆ EMSCRIPTEN_DECLARE_VAL_TYPE() [4/5]

EMSCRIPTEN_DECLARE_VAL_TYPE ( OpusBytes )

◆ EMSCRIPTEN_DECLARE_VAL_TYPE() [5/5]

EMSCRIPTEN_DECLARE_VAL_TYPE ( PcmSamples )