[FFmpeg-cvslog] lavf/matroskadec: Fully parse and repack MP3 packets

Rodger Combs git at videolan.org
Fri Oct 9 21:39:03 CEST 2015


ffmpeg | branch: release/2.7 | Rodger Combs <rodger.combs at gmail.com> | Sun Aug 16 03:06:04 2015 -0500| [6197d35a93bf959527d52efe28f9dd692b0a035f] | committer: Carl Eugen Hoyos

lavf/matroskadec: Fully parse and repack MP3 packets

Fixes https://trac.ffmpeg.org/ticket/4776

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit b4b2717ffe89940999eeca7317190f729b27f472)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6197d35a93bf959527d52efe28f9dd692b0a035f
---

 libavformat/matroskadec.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index ca43c28..206d798 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -2053,7 +2053,9 @@ static int matroska_parse_tracks(AVFormatContext *s)
             st->codec->channels    = track->audio.channels;
             if (!st->codec->bits_per_coded_sample)
                 st->codec->bits_per_coded_sample = track->audio.bitdepth;
-            if (st->codec->codec_id != AV_CODEC_ID_AAC)
+            if (st->codec->codec_id == AV_CODEC_ID_MP3)
+                st->need_parsing = AVSTREAM_PARSE_FULL;
+            else if (st->codec->codec_id != AV_CODEC_ID_AAC)
                 st->need_parsing = AVSTREAM_PARSE_HEADERS;
             if (track->codec_delay > 0) {
                 st->codec->delay = av_rescale_q(track->codec_delay,



More information about the ffmpeg-cvslog mailing list