summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorphintuka <phintuka>2010-07-18 13:11:15 +0000
committerphintuka <phintuka>2010-07-18 13:11:15 +0000
commitee8777da0746ec8fb148cc6f22206f1cc98e7be9 (patch)
treeb5f3bff2859ed41d4a5f8bd403c5e99c9dc94455
parent5a92211f30d4d408a1961b8b55712836aef64062 (diff)
downloadxineliboutput-ee8777da0746ec8fb148cc6f22206f1cc98e7be9.tar.gz
xineliboutput-ee8777da0746ec8fb148cc6f22206f1cc98e7be9.tar.bz2
Do not flush demuxer when received unchanged PMT.
Demuxer will be resetted if PMT has been changed. (This should fix some timestamp problems)
-rw-r--r--xine/demux_xvdr.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/xine/demux_xvdr.c b/xine/demux_xvdr.c
index 08775ca2..369fdee3 100644
--- a/xine/demux_xvdr.c
+++ b/xine/demux_xvdr.c
@@ -525,12 +525,10 @@ static void demux_xvdr_parse_ts (demux_xvdr_t *this, buf_element_t *buf)
/* parse PMT */
else if (ts_pid == ts_data->pmt_pid) {
- ts_data_flush(ts_data);
-
if (ts_parse_pmt(&ts_data->pmt, ts_data->program_number, buf->content)) {
/* PMT changed, reset ts->es converters */
- LOGMSG("PMT changed");
+ LOGMSG("PMT changed, resetting demuxer");
ts_data_ts2es_init(&ts_data, this->stream->video_fifo, this->stream->audio_fifo);
this->video_type = (ts_data->pmt.video_type == ISO_14496_PART10_VIDEO) ?