Fixed cPatPmtParser::ParsePmt() to reset vpid and vtype when switching from a video to an audio channel

This commit is contained in:
Klaus Schmidinger 2009-01-06 14:47:53 +01:00
parent 7de7ede26f
commit f9a2758205
3 changed files with 6 additions and 1 deletions

View File

@ -1187,6 +1187,8 @@ Reinhard Nissl <rnissl@gmx.de>
for fixing handling the counter in detection of pre 1.3.19 PS data
for adapting the tuning code to the new DVBFE_SET_DELSYS API
for reporting the missing description of the 'S' channel parameter in vdr.5
for fixing cPatPmtParser::ParsePmt() to reset vpid and vtype when switching from
a video to an audio channel
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the

View File

@ -5906,3 +5906,5 @@ Video Disk Recorder Revision History
+ cDevice::StillPicture() will now be called with either TS or PES data.
+ cDvbPlayer::Goto() no longer appends a "sequence end code" to the data.
If the output device needs this, it has to take care of it by itself.
- Fixed cPatPmtParser::ParsePmt() to reset vpid and vtype when switching from
a video to an audio channel (thanks to Reinhard Nissl).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: remux.c 2.4 2009/01/06 12:39:34 kls Exp $
* $Id: remux.c 2.5 2009/01/06 14:46:21 kls Exp $
*/
#include "remux.h"
@ -395,6 +395,7 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
int NumApids = 0;
int NumDpids = 0;
int NumSpids = 0;
vpid = vtype = 0;
SI::PMT::Stream stream;
for (SI::Loop::Iterator it; Pmt.streamLoop.getNext(stream, it); ) {
dbgpatpmt(" stream type = %02X, pid = %d", stream.getStreamType(), stream.getPid());