From a05c41acd1e2dc0b7f6d82fa5ecbf7b8b5514ebc Mon Sep 17 00:00:00 2001 From: Kostya Shishkov Date: Thu, 29 Mar 2012 12:08:07 +0200 Subject: [PATCH] mp3dec: perform I/S and M/S only when frame mode is joint stereo. Looks like some LAME versions produce dual stereo mode MP3s with flags for intensity and middle stereo set. In this mode those flags should be ignored like the reference decoder and derived ones do. --- libavcodec/mpegaudiodec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index 6ed124b5f1..0ab87e1a96 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -1533,7 +1533,7 @@ static int mp_decode_layer3(MPADecodeContext *s) huffman_decode(s, g, exponents, bits_pos + g->part2_3_length); } /* ch */ - if (s->nb_channels == 2) + if (s->mode == MPA_JSTEREO) compute_stereo(s, &s->granules[0][gr], &s->granules[1][gr]); for (ch = 0; ch < s->nb_channels; ch++) {