FFmpeg/libavcodec
Anssi Hannula e10fccf62a avcodec/aacdec: default to non-wide 7.1 in non-strict mode
AAC specification has 7.1(wide) as a default layout for 8-channel
streams (channel config 7). However, at least Nero AAC encoder encodes
non-wide 7.1 streams using the default channel config 7, mapping the
side channels of the original audio stream to the second
AAC_CHANNEL_FRONT pair in the AAC stream. Similarly, e.g. FAAD decodes
the second AAC_CHANNEL_FRONT pair as side channels, therefore decoding
the incorrect streams as if they were correct (and as the encoder
intended).

FFmpeg currently decodes such files by-the-spec, i.e. after decoding the
original front pair will be in AV_CH_FRONT_x_OF_CENTER and the original
side pair will be in AV_CH_FRONT_x.

As actual intended 7.1(wide) streams are very rare while misencoded 7.1
files actually exist in the wild, default to assuming a 7.1 layout was
intended unless in strict mode.

Fixes playback of e.g. 8_Channel_ID.m4a in samples.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-18 05:25:01 +01:00
..
2013-12-14 12:13:26 -05:00
2013-12-17 09:34:08 +01:00
2013-12-15 16:53:32 +01:00
2013-11-16 17:43:05 +01:00
2013-11-16 12:48:25 +01:00
2013-11-16 17:43:36 +01:00
2013-11-16 13:27:17 +01:00
2013-11-26 13:22:01 +01:00
2013-12-14 03:01:56 +01:00
2013-12-14 03:01:56 +01:00
2013-11-21 20:53:06 +01:00
2013-11-21 20:53:06 +01:00
2013-11-21 20:57:20 +01:00
2013-12-09 08:41:20 +01:00
2013-12-09 08:41:20 +01:00
2013-11-16 12:49:18 +01:00
2013-12-10 16:18:51 +01:00