diff --git a/libavcodec/aaccoder.c b/libavcodec/aaccoder.c index 53c4b66397..0f4fc54a39 100644 --- a/libavcodec/aaccoder.c +++ b/libavcodec/aaccoder.c @@ -566,13 +566,14 @@ static void search_for_quantizers_anmr(AVCodecContext *avctx, AACEncContext *s, if (nz) { int minscale, maxscale; float minrd = INFINITY; + float maxval; //minimum scalefactor index is when minimum nonzero coefficient after quantizing is not clipped minscale = av_clip_uint8(log2(qmin)*4 - 69 + SCALE_ONE_POS - SCALE_DIV_512); //maximum scalefactor index is when maximum coefficient after quantizing is still not zero maxscale = av_clip_uint8(log2(qmax)*4 + 6 + SCALE_ONE_POS - SCALE_DIV_512); minscale = av_clip(minscale - q0, 0, TRELLIS_STATES - 1); maxscale = av_clip(maxscale - q0, 0, TRELLIS_STATES); - float maxval = find_max_val(sce->ics.group_len[w], sce->ics.swb_sizes[g], s->scoefs+start); + maxval = find_max_val(sce->ics.group_len[w], sce->ics.swb_sizes[g], s->scoefs+start); for (q = minscale; q < maxscale; q++) { float dist = 0; int cb = find_min_book(maxval, sce->sf_idx[w*16+g]);