eac3dec: fix bug in GAQ dequantization. large mantissas should only be
authorJustin Ruggles <justin.ruggles@gmail.com>
Thu, 21 May 2009 00:15:44 +0000 (00:15 +0000)
committerJustin Ruggles <justin.ruggles@gmail.com>
Thu, 21 May 2009 00:15:44 +0000 (00:15 +0000)
decoded when the gain value is 2 or 4.

Originally committed as revision 18889 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/eac3dec.c

index 62f6d79..0cbf5b9 100644 (file)
@@ -175,7 +175,7 @@ void ff_eac3_decode_transform_coeffs_aht_ch(AC3DecodeContext *s, int ch)
 
             for (blk = 0; blk < 6; blk++) {
                 int mant = get_sbits(gbc, gbits);
-                if (mant == -(1 << (gbits-1))) {
+                if (log_gain && mant == -(1 << (gbits-1))) {
                     /* large mantissa */
                     int b;
                     int mbits = bits - (2 - log_gain);