avcodec/mlpdec: unbreak TrueHD single substream mono decoding

This commit is contained in:
Paul B Mahol 2022-09-18 14:58:58 +02:00
parent b0579cc298
commit 2069894bc1

View File

@ -432,6 +432,11 @@ static int read_major_sync(MLPDecodeContext *m, GetBitContext *gb)
m->substream[0].mask = AV_CH_LAYOUT_STEREO;
if ((substr = (mh.num_substreams > 1)))
m->substream[0].mask = AV_CH_LAYOUT_STEREO;
if (mh.num_substreams == 1 &&
mh.channels_thd_stream1 == 1 &&
mh.channels_thd_stream2 == 1 &&
m->avctx->ch_layout.nb_channels == 1)
m->substream[0].mask = AV_CH_LAYOUT_MONO;
if (mh.num_substreams > 2)
if (mh.channel_layout_thd_stream2)
m->substream[2].mask = mh.channel_layout_thd_stream2;