X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=libavcodec%2Faacenc.h;h=dec445ce346dca9298d6b8333493c61cf59aa723;hb=43de8b328b62cf21ec176c3989065168da471a5f;hp=1f5e6503ca20a8bacd98ef59bef33c3d17ccef60;hpb=025ccf1f8bd669f45b628acf51e7febcb1fddd3b;p=ffmpeg diff --git a/libavcodec/aacenc.h b/libavcodec/aacenc.h index 1f5e6503ca2..dec445ce346 100644 --- a/libavcodec/aacenc.h +++ b/libavcodec/aacenc.h @@ -22,12 +22,12 @@ #ifndef AVCODEC_AACENC_H #define AVCODEC_AACENC_H +#include "libavutil/float_dsp.h" #include "avcodec.h" #include "put_bits.h" -#include "dsputil.h" #include "aac.h" - +#include "audio_frame_queue.h" #include "psymodel.h" typedef struct AACEncOptions { @@ -57,10 +57,11 @@ typedef struct AACEncContext { PutBitContext pb; FFTContext mdct1024; ///< long (1024 samples) frame transform context FFTContext mdct128; ///< short (128 samples) frame transform context - DSPContext dsp; - float *samples; ///< saved preprocessed input + AVFloatDSPContext fdsp; + float *planar_samples[6]; ///< saved preprocessed input int samplerate_index; ///< MPEG-4 samplerate index + int channels; ///< channel count const uint8_t *chan_map; ///< channel configuration map ChannelElement *cpe; ///< channel elements @@ -70,8 +71,15 @@ typedef struct AACEncContext { int cur_channel; int last_frame; float lambda; + AudioFrameQueue afq; DECLARE_ALIGNED(16, int, qcoefs)[96]; ///< quantized coefficients DECLARE_ALIGNED(32, float, scoefs)[1024]; ///< scaled coefficients + + struct { + float *samples; + } buffer; } AACEncContext; +extern float ff_aac_pow34sf_tab[428]; + #endif /* AVCODEC_AACENC_H */