diff options
author | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2010-11-25 00:29:44 +0000 |
---|---|---|
committer | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2010-11-25 00:29:44 +0000 |
commit | b795ff97e5ae444ddf2277f66e29b30069170728 (patch) | |
tree | 1880eb5c15db6e194497ff1fdad974ce7f01a9d0 /libavformat/mpegts.c | |
parent | 8ba5bf5a7c31604ed7b98ffc714898588bc5ccda (diff) | |
download | ffmpeg-streaming-b795ff97e5ae444ddf2277f66e29b30069170728.zip ffmpeg-streaming-b795ff97e5ae444ddf2277f66e29b30069170728.tar.gz |
In TS demuxer, keep the pmt filter open to parse all pmt sections,
based on patch by Stephen D'Angelo, SDAngelo at evertz dot com.
Originally committed as revision 25822 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/mpegts.c')
-rw-r--r-- | libavformat/mpegts.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index d23dbee..78c9d2f 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -1083,8 +1083,6 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len p = desc_list_end; } - /* all parameters are there */ - mpegts_close_filter(ts, filter); out: av_free(mp4_dec_config_descr); } @@ -1122,6 +1120,8 @@ static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len /* NIT info */ } else { av_new_program(ts->stream, sid); + if (ts->pids[pmt_pid]) + mpegts_close_filter(ts, ts->pids[pmt_pid]); mpegts_open_section_filter(ts, pmt_pid, pmt_cb, ts, 1); add_pat_entry(ts, sid); add_pid_to_pmt(ts, sid, 0); //add pat pid to program |