[vdr] VDR prefers my CI DVB device for recordings and blocks it unnecessarily

Jörn Reder joern at zyn.de
Mon Aug 7 23:10:53 CEST 2006


Klaus Schmidinger wrote:

> Please try the attached patch.
> With this change "avoiding full featured or primary cards" gets
> less priority than "using the device with the lowest priority
> or the lowest number of CA methods".

Thanks for your patch, I played around with it. The ActualDevice() test
has a very high priority, so if I start a recording on the fly, my CI 
device is still preferred. For testing purposes I commented out the 
ActualDevice() test, then your patch worked for me.

I don't understand the device[i]->ProvidesCa(Channel) test, because it 
checks for the currently requested channel. I dunno any internals (so 
please be patient with me ;), but from reading the source code it looks
that the first if condition in the device loop

  device[i]->ProvidesChannel(Channel, Priority, &ndr)

already checks if the device is basically capable of decoding the 
requested channel, this must include a test for decryption capability 
(if the channel is encrypted), not?. So why another ProvidesCA() test? 
All devices in this if block should pass it anyway.

What about adding a high priority test like hasCAM() (ideally with 
weighting the number of channels the device is able to decrypt) to avoid
blocking a CA device unnecessarily?

Regards,

Joern

-- 
Think before you code. And while you're doing it probably won't hurt. ;)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20060807/110421b8/attachment.pgp


More information about the vdr mailing list