diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c index 3a7eec902f..26856632c7 100644 --- a/libavcodec/ac3dec.c +++ b/libavcodec/ac3dec.c @@ -901,9 +901,8 @@ static int decode_audio_block(AC3DecodeContext *s, int blk) } /* exponent strategies for each channel */ - s->exp_strategy[blk][CPL_CH] = EXP_REUSE; - s->exp_strategy[blk][s->lfe_ch] = EXP_REUSE; for (ch = !cpl_in_use; ch <= s->channels; ch++) { + if (!s->eac3) s->exp_strategy[blk][ch] = get_bits(gbc, 2 - (ch == s->lfe_ch)); if(s->exp_strategy[blk][ch] != EXP_REUSE) bit_alloc_stages[ch] = 3;