23 info.sample_rate = 16000;
28 const char *
mime()
override {
return "audio/amr"; }
32 buffer.resize(
amr.getEncodedFrameSizeBytes());
48 size_t write(
const uint8_t *data,
size_t len)
override {
49 for (
size_t j = 0; j < len; j++) {
52 int result_samples =
amr.getFrameSizeSamples();
53 int16_t result[result_samples];
71 int frameSize() {
return amr.getFrameSizeSamples() *
sizeof(int16_t); }
78 operator bool()
override {
return getOutput() !=
nullptr; }
102 info.sample_rate = 16000;
129 size_t write(
const uint8_t *data,
size_t len)
override {
130 for (
size_t j = 0; j < len; j++) {
134 uint8_t result[result_bytes];
137 buffer.size() /
sizeof(int16_t), result, result_bytes);
152 return amr.getEncodedFrameSizeBytes();
156 int frameSize() {
return amr.getFrameSizeSamples() *
sizeof(int16_t); }
158 const char *
mime() {
return "audio/amr"; }