From e23e4de3aeaef701fbfa1cf6c9b4d76a01f015ff Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Sun, 24 Aug 2008 22:55:08 +0000 Subject: cosmetics: rename some functions from *get_* to *decode_* Originally committed as revision 14952 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/Makefile | 2 +- libavcodec/ac3dec.h | 14 +++++++++++++- libavcodec/ac3dec_data.c | 19 ++++++++++--------- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/libavcodec/Makefile b/libavcodec/Makefile index e749b48343..a138625520 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -27,7 +27,7 @@ OBJS-$(CONFIG_ENCODERS) += faandct.o jfdctfst.o jfdctint.o OBJS-$(CONFIG_AAC_DECODER) += aac.o aactab.o mdct.o fft.o OBJS-$(CONFIG_AASC_DECODER) += aasc.o -OBJS-$(CONFIG_AC3_DECODER) += ac3dec.o ac3tab.o ac3dec_data.o ac3.o mdct.o fft.o +OBJS-$(CONFIG_AC3_DECODER) += eac3dec.o ac3dec.o ac3tab.o ac3dec_data.o ac3.o mdct.o fft.o OBJS-$(CONFIG_AC3_ENCODER) += ac3enc.o ac3tab.o ac3.o OBJS-$(CONFIG_ALAC_DECODER) += alac.o OBJS-$(CONFIG_ALAC_ENCODER) += alacenc.o lpc.o diff --git a/libavcodec/ac3dec.h b/libavcodec/ac3dec.h index 9e44019b14..d78fa68102 100644 --- a/libavcodec/ac3dec.h +++ b/libavcodec/ac3dec.h @@ -82,7 +82,7 @@ typedef struct { int phase_flags[18]; ///< phase flags (phsflg) int num_cpl_subbands; ///< number of coupling sub bands (ncplsubnd) int num_cpl_bands; ///< number of coupling bands (ncplbnd) - int cpl_band_struct[18]; ///< coupling band structure (cplbndstrc) + uint8_t cpl_band_struct[18]; ///< coupling band structure (cplbndstrc) int firstchincpl; ///< first channel in coupling int first_cpl_coords[AC3_MAX_CHANNELS]; ///< first coupling coordinates states (firstcplcos) int cpl_coords[AC3_MAX_CHANNELS][18]; ///< coupling coordinates (cplco) @@ -168,4 +168,16 @@ typedef struct { ///@} } AC3DecodeContext; +/** + * Parse the E-AC-3 frame header. + * This parses both the bit stream info and audio frame header. + */ +int ff_eac3_parse_header(AC3DecodeContext *s); + +/** + * Decode mantissas in a single channel for the entire frame. + * This is used when AHT mode is enabled. + */ +void ff_eac3_decode_transform_coeffs_aht_ch(AC3DecodeContext *s, int ch); + #endif /* FFMPEG_AC3DEC_H */ diff --git a/libavcodec/ac3dec_data.c b/libavcodec/ac3dec_data.c index a04bbc0c53..5a2312fb7b 100644 --- a/libavcodec/ac3dec_data.c +++ b/libavcodec/ac3dec_data.c @@ -87,18 +87,19 @@ const int16_t ff_eac3_gaq_remap_2_4_a[9][2] = { /** * Table E3.6, Gk=2 & Gk=4, B * Large mantissa inverse quantization, negative mantissa remapping offsets + * Table values from the spec are right-shifted by 8 to simplify calculations. * ff_eac3_gaq_remap_3_4_b[hebap-8][Gk=2,4] */ const int16_t ff_eac3_gaq_remap_2_4_b[9][2] = { - { -5461, -1170}, - { -11703, -4915}, - { -14199, -6606}, - { -15327, -7412}, - { -15864, -7805}, - { -16126, -7999}, - { -16255, -8096}, - { -16320, -8144}, - { -16352, -8168} + { -22, -5 }, + { -46, -20 }, + { -56, -26 }, + { -60, -29 }, + { -62, -31 }, + { -63, -32 }, + { -64, -32 }, + { -64, -32 }, + { -64, -32 }, }; static const int16_t vq_hebap1[4][6] = { -- cgit v1.2.3