1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

No longer setting PIDs 0x1FFF, which apparently fixes problems with CAMs and AC3 sound only working the first time

This commit is contained in:
Klaus Schmidinger 2002-04-21 12:11:00 +02:00
parent d628839eee
commit fb38680302
3 changed files with 15 additions and 10 deletions

View File

@ -123,6 +123,8 @@ Stefan Huelswitt <huels@iname.com>
for fixing a crash when selecting the "Jump" function directly after setting for fixing a crash when selecting the "Jump" function directly after setting
an editing mark an editing mark
for reporting a possible endless loop in shifting recordings between DVB cards for reporting a possible endless loop in shifting recordings between DVB cards
for making it no longer setting PIDs 0x1FFF, which apparently fixes problems
with CAMs and AC3 sound only working the first time
Ulrich Röder <roeder@efr-net.de> Ulrich Röder <roeder@efr-net.de>
for pointing out that there are channels that have a symbol rate higher than for pointing out that there are channels that have a symbol rate higher than

View File

@ -1214,3 +1214,5 @@ Video Disk Recorder Revision History
to Stefan Huelswitt for reporting this one). to Stefan Huelswitt for reporting this one).
- Updated the Premiere World Formula 1 channels in 'channels.conf' (thanks to Mel - Updated the Premiere World Formula 1 channels in 'channels.conf' (thanks to Mel
Schächner). Schächner).
- No longer setting PIDs 0x1FFF, which apparently fixes problems with CAMs and
AC3 sound only working the first time (thanks to Stefan Huelswitt).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: dvbapi.c 1.172 2002/04/21 09:54:40 kls Exp $ * $Id: dvbapi.c 1.173 2002/04/21 11:55:48 kls Exp $
*/ */
#include "dvbapi.h" #include "dvbapi.h"
@ -2306,16 +2306,17 @@ bool cDvbApi::SetPid(int fd, dmxPesType_t PesType, int Pid, dmxOutput_t Output)
{ {
if (Pid) { if (Pid) {
CHECK(ioctl(fd, DMX_STOP)); CHECK(ioctl(fd, DMX_STOP));
dmxPesFilterParams pesFilterParams; if (Pid != 0x1FFF) {
pesFilterParams.pid = Pid; dmxPesFilterParams pesFilterParams;
pesFilterParams.input = DMX_IN_FRONTEND; pesFilterParams.pid = Pid;
pesFilterParams.output = Output; pesFilterParams.input = DMX_IN_FRONTEND;
pesFilterParams.pesType = PesType; pesFilterParams.output = Output;
pesFilterParams.flags = DMX_IMMEDIATE_START; pesFilterParams.pesType = PesType;
if (ioctl(fd, DMX_SET_PES_FILTER, &pesFilterParams) < 0) { pesFilterParams.flags = DMX_IMMEDIATE_START;
if (Pid != 0x1FFF) if (ioctl(fd, DMX_SET_PES_FILTER, &pesFilterParams) < 0) {
LOG_ERROR; LOG_ERROR;
return false; return false;
}
} }
} }
return true; return true;