On 19.05.2012 22:32, Juergen Lock wrote:
Hi! (I guess the forums are not the best place to post this, hence reposted here...) By accident I stumbled across the special case for TT-budget S2-3200 (DVB-S/DVB-S2) in vdr's dvbdevice.c, and since both my tuners using the pctv452e driver have the same issue (which are STB0899 too, issue is the red/yellow/green bars in femon/osd didn't appear) I added an OPTION to the FreeBSD port (STB0899_SIGNAL in the port's make config menu) to enable the patch below. Optional since I don't know if there are STB0899-based tuners that don't have the problem, does anyone here know? (see log, if vdr logs like vdr: [29376960] frontend 0/0 provides DVB-S,DVB-S2,DSS with QPSK ("STB0899 Multistandard") and the bars appear without the patch please let us know, noting pci ids for the cards especially if different from 0x13c2:0x1019 or if it's usb, thanx!) Cheers, Juergen And here comes the patch, also at: http://www.freebsd.org/cgi/cvsweb.cgi/ports/multimedia/vdr/files/stb0899-signalstrength.patch?rev=1.2;content-type=text%2Fplain --- dvbdevice.c.orig +++ dvbdevice.c @@ -560,6 +560,12 @@ int cDvbTuner::GetSignalStrength(void) c switch (subsystemId) { case 0x13C21019: MaxSignal = 670; break; // TT-budget S2-3200 (DVB-S/DVB-S2) } +#if 1 + // XXX This is likely not correct for all cards using stb0899 + // but pctv452e usb ones seem to be affected too... + if (!strcmp(device->DeviceName(), "STB0899 Multistandard")) + MaxSignal = 670; +#endif int s = int(Signal) * 100 / MaxSignal; if (s> 100) s = 100; @@ -632,6 +638,12 @@ int cDvbTuner::GetSignalQuality(void) co switch (subsystemId) { case 0x13C21019: MaxSnr = 200; break; // TT-budget S2-3200 (DVB-S/DVB-S2) } +#if 1 + // XXX This is likely not correct for all cards using stb0899 + // but pctv452e usb ones seem to be affected too... + if (!strcmp(device->DeviceName(), "STB0899 Multistandard")) + MaxSnr = 200; +#endif int a = int(Snr) * 100 / MaxSnr; int b = 100 - (Unc * 10 + (Ber / 256) * 5); if (b< 0)
Maybe I'm missing something here, but why don't you just add the subsystem id of your card to the switch statements? Klaus _______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr