diff options
author | James Almer <jamrial@gmail.com> | 2018-01-29 22:59:52 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2018-01-29 23:09:08 -0300 |
commit | 63b5d04e331c2580726e8a6936fecc04b815c516 (patch) | |
tree | 72245a60e5107fdd0c88b75cac96e049771ab920 /libavformat/matroskadec.c | |
parent | d4967c04e040b3b2f937cad88599af825147ec94 (diff) | |
download | ffmpeg-63b5d04e331c2580726e8a6936fecc04b815c516.tar.gz |
avformat/matroskadec: force full frame parsing of MLP/TrueHD streams
There's at least one known file with a TrueHD stream that hasn't
been correctly muxed, and requires full frame parsing and repack.
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavformat/matroskadec.c')
-rw-r--r-- | libavformat/matroskadec.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c index a45fe09743..cda8df2213 100644 --- a/libavformat/matroskadec.c +++ b/libavformat/matroskadec.c @@ -2521,7 +2521,9 @@ static int matroska_parse_tracks(AVFormatContext *s) st->codecpar->channels = track->audio.channels; if (!st->codecpar->bits_per_coded_sample) st->codecpar->bits_per_coded_sample = track->audio.bitdepth; - if (st->codecpar->codec_id == AV_CODEC_ID_MP3) + if (st->codecpar->codec_id == AV_CODEC_ID_MP3 || + st->codecpar->codec_id == AV_CODEC_ID_MLP || + st->codecpar->codec_id == AV_CODEC_ID_TRUEHD) st->need_parsing = AVSTREAM_PARSE_FULL; else if (st->codecpar->codec_id != AV_CODEC_ID_AAC) st->need_parsing = AVSTREAM_PARSE_HEADERS; |