From 2eadd7d4ddc419aafcbdbe397081acff23a541db Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Tue, 27 Nov 2012 08:57:45 +0100 Subject: The cutter now only increments the TS continuity counter for packets that have a payload --- CONTRIBUTORS | 2 ++ HISTORY | 4 +++- cutter.c | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 5f88d74f..494feeee 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -2973,6 +2973,8 @@ S for reporting that cCuttingThread::GetPendingPackets() should get only non-video packets for pointing out that the name H264 should be used instead of MPEG4 + for pointing out that the cutter should only increment the TS continuity counter for + packets that have a payload Peter Münster for fixing 'make install' to not overwrite existing configuration files diff --git a/HISTORY b/HISTORY index dff65f53..29be42dd 100644 --- a/HISTORY +++ b/HISTORY @@ -7339,7 +7339,7 @@ Video Disk Recorder Revision History - Modified editing marks are now written to disk whenever the replay progress display gets hidden (thanks to Christoph Haubrich). -2012-11-26: Version 1.7.33 +2012-11-27: Version 1.7.33 - In order to be able to play TS recordings from other sources, in which there is more than one PMT PID in the PAT, 'int cPatPmtParser::PatPmt(void)' has been changed @@ -7351,3 +7351,5 @@ Video Disk Recorder Revision History - Changed all occurrences of MPEG4 to H264 (pointed out by Sören Moch). - Fixed getting the number of editing sequences in case the last sequence has no actual end mark. +- The cutter now only increments the TS continuity counter for packets that have a + payload (pointed out by Sören Moch). diff --git a/cutter.c b/cutter.c index e6de47ea..21f91560 100644 --- a/cutter.c +++ b/cutter.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: cutter.c 2.18 2012/11/25 13:59:07 kls Exp $ + * $Id: cutter.c 2.19 2012/11/26 17:21:14 kls Exp $ */ #include "cutter.h" @@ -210,7 +210,8 @@ void cPtsFixer::Fix(uchar *Data, int Length, bool CutIn) } // Adjust the TS continuity counter: if (fixCounters) { - counter[Pid] = (counter[Pid] + 1) & TS_CONT_CNT_MASK; + if (TsHasPayload(p)) + counter[Pid] = (counter[Pid] + 1) & TS_CONT_CNT_MASK; TsSetContinuityCounter(p, counter[Pid]); } else -- cgit v1.2.3