[FFmpeg-cvslog] avformat/mpegts: Continue parsing PMTs during duration estimation

Michael Niedermayer git at videolan.org
Mon Nov 3 23:32:36 CET 2014


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Mon Nov  3 22:55:07 2014 +0100| [db0471c40f0fb30355c07cca5fe7317ab6778b5a] | committer: Michael Niedermayer

avformat/mpegts: Continue parsing PMTs during duration estimation

This way if we by chance run into a valid PMT we have a more complete
set of streams, also do not reset streams in case we run into a worse
PMT

Fixes Ticket4046

alternatively Ticket4046 could be closed as invalid or wontfix as it contains
some PMTs which lack the 2 subtitle streams

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavformat/mpegts.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 8e639e0..45e0719 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -1803,10 +1803,10 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len
 
     if (h->tid != PMT_TID)
         return;
-    if (ts->skip_changes)
-        return;
 
-    clear_program(ts, h->id);
+    if (!ts->skip_clear)
+        clear_program(ts, h->id);
+
     pcr_pid = get16(&p, p_end);
     if (pcr_pid < 0)
         return;



More information about the ffmpeg-cvslog mailing list