The heuristic for enabling it is not very reliable. Even if always
parsing should cause problems in some cases, it would be better to
fix the parser instead. (But no bad samples are known to me.)

Fixes trac 5047
---
 libavformat/mov.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index cee037b..c6009cf 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3143,13 +3143,9 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, 
MOVAtom atom)
         break;
     }
 
-    // If the duration of the mp3 packets is not constant, then they could 
need a parser
-    if (st->codec->codec_id == AV_CODEC_ID_MP3
-        && sc->stts_count > 3
-        && sc->stts_count*10 > st->nb_frames
-        && sc->time_scale == st->codec->sample_rate) {
+    if (st->codec->codec_id == AV_CODEC_ID_MP3)
             st->need_parsing = AVSTREAM_PARSE_FULL;
-    }
+
     /* Do not need those anymore. */
     av_freep(&sc->chunk_offsets);
     av_freep(&sc->stsc_data);
-- 
2.6.2

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to