diff options
author | Mirjana Vulin <mvulin@mips.com> | 2013-01-28 17:47:53 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-01-31 01:23:09 +0100 |
commit | 2b6a8187a6ae7407498888298e8d59f90cf94f9d (patch) | |
tree | e7f35c24c6e95174282e7ab99152364195e44c9c /libavcodec/aac.h | |
parent | 9df9420dea0fc4c523dabc1bb6186c98885bdd9f (diff) | |
download | ffmpeg-2b6a8187a6ae7407498888298e8d59f90cf94f9d.tar.gz |
mips: optimization for float aac decoder (core module)
Signed-off-by: Mirjana Vulin <mvulin@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/aac.h')
-rw-r--r-- | libavcodec/aac.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/libavcodec/aac.h b/libavcodec/aac.h index 5b98856e67..d17366c8ee 100644 --- a/libavcodec/aac.h +++ b/libavcodec/aac.h @@ -257,10 +257,12 @@ typedef struct ChannelElement { SpectralBandReplication sbr; } ChannelElement; +typedef struct AACContext AACContext; + /** * main AAC context */ -typedef struct AACContext { +struct AACContext { AVClass *class; AVCodecContext *avctx; AVFrame frame; @@ -317,6 +319,18 @@ typedef struct AACContext { OutputConfiguration oc[2]; int warned_num_aac_frames; -} AACContext; + + /* aacdec functions pointers */ + void (*imdct_and_windowing)(AACContext *ac, SingleChannelElement *sce); + void (*apply_ltp)(AACContext *ac, SingleChannelElement *sce); + void (*apply_tns)(float coef[1024], TemporalNoiseShaping *tns, + IndividualChannelStream *ics, int decode); + void (*windowing_and_mdct_ltp)(AACContext *ac, float *out, + float *in, IndividualChannelStream *ics); + void (*update_ltp)(AACContext *ac, SingleChannelElement *sce); + +}; + +void ff_aacdec_init_mips(AACContext *c); #endif /* AVCODEC_AAC_H */ |