diff options
-rw-r--r-- | CONTRIBUTORS | 2 | ||||
-rw-r--r-- | HISTORY | 4 | ||||
-rw-r--r-- | cutter.c | 6 |
3 files changed, 9 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 9e2317ff..027a99bf 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -2970,6 +2970,8 @@ Sören Moch <smoch@web.de> for a patch that was used to move cleaning up the EPG data and writing the epg.data file into a separate thread to avoid sluggish response to user input on slow systems for fixing sorting folders before recordings in case of UTF-8 + for reporting that cCuttingThread::GetPendingPackets() should get only non-video + packets Peter Münster <pmlists@free.fr> for fixing 'make install' to not overwrite existing configuration files @@ -7339,10 +7339,12 @@ 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-21: Version 1.7.33 +2012-11-25: 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 to 'bool cPatPmtParser::IsPatPmt(int Pid)'. - Fixed learning remote control keys with the LCARS skin. - Updated the Macedonian OSD texts (thanks to Dimitar Petrovski). +- Fixed getting only non-video packets in cCuttingThread::GetPendingPackets() (reported + by Sören Moch). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: cutter.c 2.17 2012/11/19 10:21:44 kls Exp $ + * $Id: cutter.c 2.18 2012/11/25 13:59:07 kls Exp $ */ #include "cutter.h" @@ -408,8 +408,10 @@ void cCuttingThread::GetPendingPackets(uchar *Data, int &Length, int Index, int6 int Pid = TsPid(p); if (Pid == PATPID) PatPmtParser.ParsePat(p, TS_SIZE); - else if (PatPmtParser.IsPmtPid(Pid)) + else if (PatPmtParser.IsPmtPid(Pid)) { PatPmtParser.ParsePmt(p, TS_SIZE); + Processed[PatPmtParser.Vpid()] = true; // we only want non-video packets + } else if (!Processed[Pid]) { int64_t Pts = TsGetPts(p, TS_SIZE); if (Pts >= 0) { |