From a62d6cfeff1b5f220ec6d0e545d039f9361674fb Mon Sep 17 00:00:00 2001 From: Alex Converse Date: Wed, 22 Jul 2009 03:53:30 +0000 Subject: [PATCH] Be sure to increment our position in the coefficient array when skipping a zero band in the twoloop scalefactor search. Originally committed as revision 19480 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/aaccoder.c | 4 +++- libavcodec/aacenc.c | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libavcodec/aaccoder.c b/libavcodec/aaccoder.c index f2982584d4..be954dd9f8 100644 --- a/libavcodec/aaccoder.c +++ b/libavcodec/aaccoder.c @@ -677,8 +677,10 @@ static void search_for_quantizers_twoloop(AVCodecContext *avctx, float mindist = INFINITY; int minbits = 0; - if (sce->zeroes[w*16+g] || sce->sf_idx[w*16+g] >= 218) + if (sce->zeroes[w*16+g] || sce->sf_idx[w*16+g] >= 218) { + start += sce->ics.swb_sizes[g]; continue; + } minscaler = FFMIN(minscaler, sce->sf_idx[w*16+g]); for (cb = 0; cb <= ESC_BT; cb++) { float dist = 0.0f; diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c index dfa519059c..cc233dd24d 100644 --- a/libavcodec/aacenc.c +++ b/libavcodec/aacenc.c @@ -193,7 +193,7 @@ static av_cold int aac_encode_init(AVCodecContext *avctx) lengths[1] = ff_aac_num_swb_128[i]; ff_psy_init(&s->psy, avctx, 2, sizes, lengths); s->psypp = ff_psy_preprocess_init(avctx); - s->coder = &ff_aac_coders[0]; + s->coder = &ff_aac_coders[2]; s->lambda = avctx->global_quality ? avctx->global_quality : 120; #if !CONFIG_HARDCODED_TABLES