Browse Source

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>
tags/n4.0
James Almer 8 years ago
parent
commit
63b5d04e33
1 changed files with 3 additions and 1 deletions
  1. +3
    -1
      libavformat/matroskadec.c

+ 3
- 1
libavformat/matroskadec.c View File

@@ -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;


Loading…
Cancel
Save