Klaus Schmidinger wrote:
Petri Helin wrote:
...
BTW: I have been patching the device.c in 1.4.* series so that my other
card, TT budget DVB-C v1.0, is always preferred for FTA channel
recordings. Otherwise the precious CAM could be wasted in an FTA
recording. I understood that you are planning on restructuring the
priority model in 1.5.*. Have you taken in consideration the situation
with budget-only environment with one or more CIs?

Please try the attached patch and let me know if it works
as expected.

Klaus


Unfortunately it didn't work as (at least I) expected. What I am looking for is as follows

- card 1 (with CI) is tuned to channel A
- card 2 (without CI) is tuned to channel B
- channels A and B are on on different transponders
- a recording is about to start on channel A
- VDR chooses card 2 and tunes it to channel A in order to actuate the recording

Currently I have achieved this with the attached patch.

-Petri
--- vdr-1.4.4/device.c.orig	2006-09-03 13:13:25.000000000 +0300
+++ vdr-1.4.4/device.c	2006-12-11 20:46:13.000000000 +0200
@@ -292,11 +292,11 @@
          // to their individual severity, where the one listed first will make the most
          // difference, because it results in the most significant bit of the result.
          uint imp = 0;
+         imp <<= 8; imp |= min(max(device[i]->ProvidesCa(Channel), 0), 0xFF);      // use the device that provides the lowest number of conditional access methods
          imp <<= 1; imp |= !device[i]->Receiving() || ndr;                         // use receiving devices if we don't need to detach existing receivers
          imp <<= 1; imp |= device[i]->Receiving();                                 // avoid devices that are receiving
          imp <<= 1; imp |= device[i] == cTransferControl::ReceiverDevice();        // avoid the Transfer Mode receiver device
          imp <<= 8; imp |= min(max(device[i]->Priority() + MAXPRIORITY, 0), 0xFF); // use the device with the lowest priority (+MAXPRIORITY to assure that values -99..99 can be used)
-         imp <<= 8; imp |= min(max(device[i]->ProvidesCa(Channel), 0), 0xFF);      // use the device that provides the lowest number of conditional access methods
          imp <<= 1; imp |= device[i]->IsPrimaryDevice();                           // avoid the primary device
          imp <<= 1; imp |= device[i]->HasDecoder();                                // avoid full featured cards
          if (imp < Impact) {
_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr

Reply via email to