Fix: no second APID or Dolby DIgital in live view with VDR 1.3.37

Message ID 438C8DEC.5060509@cadsoft.de
State New
Headers

Commit Message

Klaus Schmidinger Nov. 29, 2005, 5:20 p.m. UTC
  The changes to CA handling in VDR 1.3.37 have broken the
second APID and live Dolby Digital on encrypted channels.

Here's a quick workaround for the problem:



Klaus
  

Comments

Chad Flynt Nov. 29, 2005, 6:27 p.m. UTC | #1
Hi, I am starting to play with the SoftDevice Plugin, and trying to 
start VDR via a BASH script.  All appears to start but it never 
completes, and I don't get any output, and have no ability to Telnet in 
to VDR.  If I start via straight Command Line it works fine.  Is there 
something I am missing?  Here is how I have a script setup.

#!/bin/sh
cd /usr/local/bin
./vdr -P"softdevice -vo dfb: -ao alsa:pcm=default"

That is just an example but it is the jist of it.  Script is executable, 
and I run it with root priveledges.  VDR does appear to start up and I 
get scrolling text etc, but I get no video, nor can I telnet in on port 
2001 to control it.  BUT, if I just run the ./vdr script above with 
those options from command line it runs just fine.  And if I run VDR in 
a bash script with any other plugin and take out the Softdevice plugin 
it works fine.  Just trying to troubleshoot where I might have something 
wrong. 

Thanks for any help.
  
Chad Flynt Nov. 30, 2005, 1:58 a.m. UTC | #2
Well dunno why, but had to run VDR in DAEMON mode in order to run in a 
script.  It runs fine without that mode if you just run it command line, 
but in order to run as a script you run in daemon mode or just end the 
script with an &.  So either way solved my issue.!  For anyone else that 
might encounter it!

Chad Flynt wrote:

> Hi, I am starting to play with the SoftDevice Plugin, and trying to 
> start VDR via a BASH script.  All appears to start but it never 
> completes, and I don't get any output, and have no ability to Telnet 
> in to VDR.  If I start via straight Command Line it works fine.  Is 
> there something I am missing?  Here is how I have a script setup.
>
> #!/bin/sh
> cd /usr/local/bin
> ./vdr -P"softdevice -vo dfb: -ao alsa:pcm=default"
>
> That is just an example but it is the jist of it.  Script is 
> executable, and I run it with root priveledges.  VDR does appear to 
> start up and I get scrolling text etc, but I get no video, nor can I 
> telnet in on port 2001 to control it.  BUT, if I just run the ./vdr 
> script above with those options from command line it runs just fine.  
> And if I run VDR in a bash script with any other plugin and take out 
> the Softdevice plugin it works fine.  Just trying to troubleshoot 
> where I might have something wrong.
> Thanks for any help.
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
  

Patch

--- dvbdevice.c 2005/11/26 13:23:11     1.138
+++ dvbdevice.c 2005/11/29 17:08:35
@@ -825,6 +825,11 @@ 
          esyslog("ERROR: failed to set PIDs for channel %d on device %d", Channel->Number(), CardIndex() + 1);
          return false;
          }
+     //XXX workaround for addition live audio PIDs:
+     if (ciHandler) {
+        ciHandler->SetPid(Channel->Apid(1), true);
+        ciHandler->SetPid(Channel->Dpid(0), true);
+        }
       if (IsPrimaryDevice())
          AddPid(Channel->Tpid(), ptTeletext);
       CHECK(ioctl(fd_audio, AUDIO_SET_MUTE, true)); // actually one would expect 'false' here, but according to Marco Schl├╝├čler <marco@lordzodiac.de> this works