aacdec: Fix SCE parity check.
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 7 Mar 2012 01:30:09 +0000 (17:30 -0800)
committerAlex Converse <alex.converse@gmail.com>
Fri, 9 Mar 2012 17:47:57 +0000 (09:47 -0800)
An unpaired SCE preceding a CPE only makes sense for front SCEs
preceding the first CPE.

Split from FFmpeg commit a8d67efa53dae1d14614e3a7bd4e77e4eab066ab

Signed-off-by: Alex Converse <alex.converse@gmail.com>
libavcodec/aacdec.c

index c7c11c9..6cfc7da 100644 (file)
@@ -200,7 +200,7 @@ static int count_paired_channels(uint8_t (*layout_map)[3], int tags, int pos, in
             break;
         if (layout_map[i][0] == TYPE_CPE) {
             if (sce_parity) {
-                if (pos == AAC_CHANNEL_FRONT || !first_cpe) {
+                if (pos == AAC_CHANNEL_FRONT && !first_cpe) {
                     sce_parity = 0;
                 } else {
                     return -1;