aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Caldwell <saintdev@gmail.com>2010-10-25 06:15:21 +0000
committerMartin Storsjö <martin@martin.st>2010-10-25 06:15:21 +0000
commit276df9d8210121f6d59b7876e1724ebe7a11f5e5 (patch)
tree0b8627b34631102caef22875b91d1c7f4b707c96
parentd545aea8f03ab880b08f7cce109388a169125e8e (diff)
downloadffmpeg-276df9d8210121f6d59b7876e1724ebe7a11f5e5.tar.gz
aacenc: Fix bug in LAME windowing where only one channel got initalized
I used the same loop counter for the inner and outer initalization loops. This caused initalization to only run for the first channel. This in turn lead to any channel other than the first using only short blocks. Patch by Nathan Caldwell, saintdev at gmail Originally committed as revision 25566 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/aacpsy.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/aacpsy.c b/libavcodec/aacpsy.c
index b1bfc7b1a5..d5b51f8bea 100644
--- a/libavcodec/aacpsy.c
+++ b/libavcodec/aacpsy.c
@@ -195,7 +195,7 @@ static float lame_calc_attack_threshold(int bitrate)
* LAME psy model specific initialization
*/
static void lame_window_init(AacPsyContext *ctx, AVCodecContext *avctx) {
- int i;
+ int i, j;
for (i = 0; i < avctx->channels; i++) {
AacPsyChannel *pch = &ctx->ch[i];
@@ -205,8 +205,8 @@ static void lame_window_init(AacPsyContext *ctx, AVCodecContext *avctx) {
else
pch->attack_threshold = lame_calc_attack_threshold(avctx->bit_rate / avctx->channels / 1000);
- for (i = 0; i < AAC_NUM_BLOCKS_SHORT * PSY_LAME_NUM_SUBBLOCKS; i++)
- pch->prev_energy_subshort[i] = 10.0f;
+ for (j = 0; j < AAC_NUM_BLOCKS_SHORT * PSY_LAME_NUM_SUBBLOCKS; j++)
+ pch->prev_energy_subshort[j] = 10.0f;
}
}