1
0
Fork 0

mpegts: do not reparse PMT unless it's version has changed

This commit is contained in:
Cory Fields 2010-06-28 02:40:23 -04:00 committed by Hendrik Leppkes
parent 5961c58381
commit 2b85c66d66
Signed by: hendrik
GPG Key ID: 846079A4B0A7C1B5
1 changed files with 5 additions and 0 deletions

View File

@ -103,6 +103,7 @@ struct MpegTSFilter {
int last_cc; /* last cc code (-1 if first packet) */
int64_t last_pcr;
int discard;
int last_version; /* last version of data on this pid */
enum MpegTSFilterType type;
union {
MpegTSPESFilter pes_filter;
@ -508,6 +509,7 @@ static MpegTSFilter *mpegts_open_filter(MpegTSContext *ts, unsigned int pid,
filter->es_id = -1;
filter->last_cc = -1;
filter->last_pcr= -1;
filter->last_version = -1;
return filter;
}
@ -2558,6 +2560,9 @@ static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len
return;
if (ts->skip_changes)
return;
if (h->version == filter->last_version)
return;
filter->last_version = h->version;
if (skip_identical(h, tssf))
return;