diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-01-23 19:26:22 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-01-23 19:39:42 +0100 |
commit | 6747b0be9b2a8e20724c6e514b3c8374c32fd6f0 (patch) | |
tree | abd4ec6a6d46098aeb9e2537f7977ed35b904d77 /libavcodec | |
parent | d4e5d8d4c264955f3df8c6947b38913f9ee3eb18 (diff) | |
download | ffmpeg-6747b0be9b2a8e20724c6e514b3c8374c32fd6f0.tar.gz |
mlp: fix channel order.
This fixes a regression introduced with todays merge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/mlp_parser.c | 2 | ||||
-rw-r--r-- | libavcodec/mlp_parser.h | 1 | ||||
-rw-r--r-- | libavcodec/mlpdec.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/libavcodec/mlp_parser.c b/libavcodec/mlp_parser.c index 1831f64a4b..2cc4b9153a 100644 --- a/libavcodec/mlp_parser.c +++ b/libavcodec/mlp_parser.c @@ -157,6 +157,7 @@ int ff_mlp_read_major_sync(void *log, MLPHeaderInfo *mh, GetBitContext *gb) skip_bits(gb, 11); + mh->channel_arrangement= channel_arrangement = get_bits(gb, 5); mh->channels_mlp = mlp_channels[channel_arrangement]; mh->channel_layout_mlp = ff_mlp_layout[channel_arrangement]; @@ -170,6 +171,7 @@ int ff_mlp_read_major_sync(void *log, MLPHeaderInfo *mh, GetBitContext *gb) skip_bits(gb, 8); + mh->channel_arrangement= channel_arrangement = get_bits(gb, 5); mh->channels_thd_stream1 = truehd_channels(channel_arrangement); mh->channel_layout_thd_stream1 = ff_truehd_layout(channel_arrangement); diff --git a/libavcodec/mlp_parser.h b/libavcodec/mlp_parser.h index f9638bb868..9967abbad2 100644 --- a/libavcodec/mlp_parser.h +++ b/libavcodec/mlp_parser.h @@ -39,6 +39,7 @@ typedef struct MLPHeaderInfo int group1_samplerate; ///< Sample rate of first substream int group2_samplerate; ///< Sample rate of second substream (MLP only) + int channel_arrangement; int channels_mlp; ///< Channel count for MLP streams int channels_thd_stream1; ///< Channel count for substream 1 of TrueHD streams ("6-channel presentation") int channels_thd_stream2; ///< Channel count for substream 2 of TrueHD streams ("8-channel presentation") diff --git a/libavcodec/mlpdec.c b/libavcodec/mlpdec.c index 4532b3760e..ebd0b484a1 100644 --- a/libavcodec/mlpdec.c +++ b/libavcodec/mlpdec.c @@ -386,7 +386,7 @@ static int read_major_sync(MLPDecodeContext *m, GetBitContext *gb) } } - m->needs_reordering = mh.channels_mlp >= 18 && mh.channels_mlp <= 20; + m->needs_reordering = mh.channel_arrangement >= 18 && mh.channel_arrangement <= 20; return 0; } |