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

Rodger Combs git at videolan.org
Fri Oct 9 21:51:52 CEST 2015


ffmpeg | branch: release/2.6 | Rodger Combs <rodger.combs at gmail.com> | Sun Aug 16 03:06:04 2015 -0500| [e43e2825120f285c4360007098593c7eb8a720f4] | 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=e43e2825120f285c4360007098593c7eb8a720f4
---

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

diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 114e422..204fac2 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -2039,7 +2039,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