summaryrefslogtreecommitdiff
path: root/dvbdevice.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2002-09-14 12:14:38 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2002-09-14 12:14:38 +0200
commitd9bf48ec5ac134c4f6393a5871229a00af1a7776 (patch)
treecff6aaa07d0446b641d362d8d2d8ad5cf0423e57 /dvbdevice.c
parentdb20f08a5848a018843210f5be129ea428bb1d78 (diff)
downloadvdr-d9bf48ec5ac134c4f6393a5871229a00af1a7776.tar.gz
vdr-d9bf48ec5ac134c4f6393a5871229a00af1a7776.tar.bz2
Fixed setting PIDs for CA channels
Diffstat (limited to 'dvbdevice.c')
-rw-r--r--dvbdevice.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/dvbdevice.c b/dvbdevice.c
index 55da3887..bca14ce6 100644
--- a/dvbdevice.c
+++ b/dvbdevice.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbdevice.c 1.14 2002/09/14 11:18:22 kls Exp $
+ * $Id: dvbdevice.c 1.15 2002/09/14 12:14:38 kls Exp $
*/
#include "dvbdevice.h"
@@ -596,7 +596,7 @@ bool cDvbDevice::SetChannelDevice(const cChannel *Channel, bool LiveView)
// PID settings:
if (HasDecoder() && (LiveView || !IsPrimaryDevice() || Channel->ca > CACONFBASE)) { // CA channels can only be decrypted in "live" mode
- if (!HasPid(Channel->vpid) && (IsPrimaryDevice() || !pidHandles[ptVideo].used)) {
+ if (!HasPid(Channel->vpid) && (IsPrimaryDevice() || !pidHandles[ptVideo].used || Channel->ca > CACONFBASE)) {
if (!(AddPid(Channel->apid1, ptAudio) && AddPid(Channel->vpid, ptVideo))) {//XXX+ dolby dpid1!!! (if audio plugins are attached)
esyslog("ERROR: failed to set PIDs for channel %d", Channel->number);
return false;