summaryrefslogtreecommitdiff
path: root/libavcodec/aac.c
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2010-01-13 16:46:39 +0000
committerMåns Rullgård <mans@mansr.com>2010-01-13 16:46:39 +0000
commit2ef21b91796fb7c614b12141a3b1e18fbec72c8a (patch)
tree219c21640d6bc6363a5dc678f23ea3570397d10a /libavcodec/aac.c
parent95dff4aceda3fa8013908cfe8b50355662ba90f2 (diff)
AAC: Reduce depth of vlc_spectral tables to 2
Up to 6% faster overall on i7, no change on A8. Originally committed as revision 21191 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/aac.c')
-rw-r--r--libavcodec/aac.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/libavcodec/aac.c b/libavcodec/aac.c
index 1341258a7f..b47b58e291 100644
--- a/libavcodec/aac.c
+++ b/libavcodec/aac.c
@@ -508,17 +508,17 @@ static av_cold int aac_decode_init(AVCodecContext *avccontext)
avccontext->sample_fmt = SAMPLE_FMT_S16;
avccontext->frame_size = 1024;
- AAC_INIT_VLC_STATIC( 0, 144);
- AAC_INIT_VLC_STATIC( 1, 114);
- AAC_INIT_VLC_STATIC( 2, 188);
- AAC_INIT_VLC_STATIC( 3, 180);
- AAC_INIT_VLC_STATIC( 4, 172);
- AAC_INIT_VLC_STATIC( 5, 140);
- AAC_INIT_VLC_STATIC( 6, 168);
- AAC_INIT_VLC_STATIC( 7, 114);
- AAC_INIT_VLC_STATIC( 8, 262);
- AAC_INIT_VLC_STATIC( 9, 248);
- AAC_INIT_VLC_STATIC(10, 384);
+ AAC_INIT_VLC_STATIC( 0, 304);
+ AAC_INIT_VLC_STATIC( 1, 270);
+ AAC_INIT_VLC_STATIC( 2, 550);
+ AAC_INIT_VLC_STATIC( 3, 300);
+ AAC_INIT_VLC_STATIC( 4, 328);
+ AAC_INIT_VLC_STATIC( 5, 294);
+ AAC_INIT_VLC_STATIC( 6, 306);
+ AAC_INIT_VLC_STATIC( 7, 268);
+ AAC_INIT_VLC_STATIC( 8, 510);
+ AAC_INIT_VLC_STATIC( 9, 366);
+ AAC_INIT_VLC_STATIC(10, 462);
dsputil_init(&ac->dsp, avccontext);
@@ -989,7 +989,7 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
int len = off_len;
do {
- const int index = get_vlc2(gb, vlc_tab, 6, 3);
+ const int index = get_vlc2(gb, vlc_tab, 8, 2);
unsigned cb_idx;
if (index >= cb_size) {
@@ -1009,7 +1009,7 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
int len = off_len;
do {
- const int index = get_vlc2(gb, vlc_tab, 6, 3);
+ const int index = get_vlc2(gb, vlc_tab, 8, 2);
unsigned nnz;
unsigned cb_idx;
uint32_t bits;
@@ -1033,7 +1033,7 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
int len = off_len;
do {
- const int index = get_vlc2(gb, vlc_tab, 6, 3);
+ const int index = get_vlc2(gb, vlc_tab, 8, 2);
unsigned cb_idx;
if (index >= cb_size) {
@@ -1054,7 +1054,7 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
int len = off_len;
do {
- const int index = get_vlc2(gb, vlc_tab, 6, 3);
+ const int index = get_vlc2(gb, vlc_tab, 8, 2);
unsigned nnz;
unsigned cb_idx;
unsigned sign;
@@ -1079,7 +1079,7 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
int len = off_len;
do {
- const int index = get_vlc2(gb, vlc_tab, 6, 3);
+ const int index = get_vlc2(gb, vlc_tab, 8, 2);
unsigned nzt, nnz;
unsigned cb_idx;
uint32_t bits;