4#include "AACDecoderFDK.h"
5#include "AACEncoderFDK.h"
26 dec =
new aac_fdk::AACDecoderFDK(output_buffer_size);
31 dec =
new aac_fdk::AACDecoderFDK(out_stream, output_buffer_size);
38 const char *
mime()
override {
return "audio/aac"; }
42 dec->setOutput(out_stream);
46 return dec->begin(TT_MP4_ADTS, 1);
50 bool begin(TRANSPORT_TYPE transportType, UINT nrOfLayers){
51 return dec->begin(transportType, nrOfLayers);
61 AAC_DECODER_ERROR
configure(uint8_t *conf,
const uint32_t &length) {
62 return dec->configure(conf, length);
66 virtual size_t write(
const uint8_t *data,
size_t len)
override {
67 return dec->write(data, len);
72 return dec->audioInfo();
91 virtual operator bool()
override {
117 aac_fdk::AACDecoderFDK *
dec=
nullptr;
134 enc =
new aac_fdk::AACEncoderFDK();
138 enc =
new aac_fdk::AACEncoderFDK();
139 enc->setOutput(out_stream);
148 enc->setOutput(out_stream);
157 enc->setBitrate(bitrate);
182 enc->setAudioObjectType(aot);
197 enc->setAfterburner(afterburner);
207 enc->setSpectralBandReplication(eld_sbr);
229 enc->setVariableBitrateMode(vbr);
238 enc->setOutputBufferSize(outbuf_size);
245 aac_fdk::AudioInfo
info;
271 virtual bool begin(
int input_channels=2,
int input_sample_rate=44100,
int input_bits_per_sample=16) {
273 return enc->begin(input_channels,input_sample_rate, input_bits_per_sample);
283 size_t write(
const uint8_t *data,
size_t len)
override {
284 LOGD(
"write %d bytes", (
int)len);
285 return enc->write((uint8_t*)data, len);
295 return enc->getParameter(param);
299 return enc->setParameter(param, value);
310 operator bool()
override {
316 aac_fdk::AACEncoderFDK *
enc=
nullptr;
#define TRACED()
Definition AudioLoggerIDF.h:31
#define LOGD(...)
Definition AudioLoggerIDF.h:27