Hi!
There seems to be a change in recent vdr versions regarding NumProvidedSystems() which at least the reelchannelscan plugin uses to tell apart a dvb-s2 tuner from a dvb-s one in a few places, apparently it used to return 2 for a dvb-s2 tuner and now returns 3. Is this intentional?
I patched reelchannelscan like below: (would need to check the vdr version to be general of course, this was for 1.7.18; symptom was a manual scan wrote out qam32 modulation into the channels.conf instead of qpsk and of course vdr couldn't tune the new channel(s).)
Thanx! Juergen
--- a/csmenu.c +++ b/csmenu.c @@ -243,7 +243,7 @@ void cMenuChannelscan::TunerDetection() txtstream << tr("DVB-C - Cable") << " (" << tr("Tuner") << ' ' << tuner + 1 << ')'; stp = CABLE; } else if (device->ProvidesSource(cSource::stSat)) { - if (device->NumProvidedSystems() == 2) { + if (device->NumProvidedSystems() == 3) { // if(TunerIsRotor(tuner)) // txtstream << tr("DVB-S2 - Rotor") << " (" << tr("Tuner") << ' ' << tuner + 1 << ')'; // else --- a/scan.c +++ b/scan.c @@ -421,7 +421,7 @@ void cScan::ScanNitServices() void cScan::ScanDVB_S(cTransponder * tp, cChannel * c) { //const time_t tt = time(NULL); - int maxmods = device->NumProvidedSystems() == 2? 4 : 2; + int maxmods = device->NumProvidedSystems() == 3? 4 : 2;
// esyslog("%s cTransponder* tp = %x cChannel *c = %x", __PRETTY_FUNCTION__); esyslog("maxmods = %d",maxmods); @@ -431,7 +431,7 @@ void cScan::ScanDVB_S(cTransponder * tp, ;
// skip HD Transonders on SD Tuner - if ( !device->NumProvidedSystems() == 2 && static_cast < cSatTransponder * >(tp)->System() == 1) + if ( !device->NumProvidedSystems() == 3 && static_cast < cSatTransponder * >(tp)->System() == 1) return;
unsigned int nRadio = radioChannelNames.size();