diff options
author | Michael Niedermayer <[email protected]> | 2013-01-23 19:26:22 +0100 |
---|---|---|
committer | Michael Niedermayer <[email protected]> | 2013-02-14 12:13:15 +0100 |
commit | 358e4081edb8eae53eacc73ac224d35278f1433a (patch) | |
tree | 01ad86d4720aacc5f782a5603d03404410d546c1 | |
parent | 6baaaa0174bf2eb58016c3ac6b02fe2e5a8b1089 (diff) |
mlp: fix channel order.
This fixes a regression introduced with todays merge
Signed-off-by: Michael Niedermayer <[email protected]>
(cherry picked from commit 6747b0be9b2a8e20724c6e514b3c8374c32fd6f0)
Signed-off-by: Michael Niedermayer <[email protected]>
-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 2497ac3612..b2fd6007d6 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 0415ccc7b0..4175e6c8cd 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 c711b06949..501f4937b9 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; } |