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-sig...
--- 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