Vorzeichen in stb0899_read_snr()

  • Nachdem mit meinen TT-budget S2-3200 Karten bei DVB-S2-Kanälen immer deine deutlich niedrigere Signalqualität angezeigt wird als bei DVB-S, habe ich mir mal die Funktion stb0899_read_snr() im Treiber (linux/drivers/media/dvb-frontends/stb0899_drv.c) näher angeschaut.


    Ohne jetzt im Einzelnen zu wissen, was "quant" und "est" genau ist, mache ich mal folgende Überlegungen:
    - quantn über die Tabelle stb0899_quant_tab[] ermittelt und kann Werte zwischen 0 und 4810 annehmen.
    - estn wird über stb0899_est_tab[] ermittelt und liegt zwischen 0 und 5721.
    - val wird aus quantn und estn berechnet und kann in den 4 möglichen Extremfällen folgende Werte annehmen:
    (0 - 0) / 10 = 0
    (0 - 5721) / 10 = -572.1
    (4810 - 0) / 10 = 481.0
    (4810 - 5721) / 10 = -91.1


    Wie man sieht kann das Ergebnis gerne mal negativ sein. Dennoch wird es einer "unsigned"-Variablen und dann auch einem "unsigned"-Rückgabeparameter zugewiesen.


    Ist hier irgendwas fundamental im Argen, oder sehe ich da was nicht?


    Klaus

  • Hi KLS
    Sei froh das Du ueberhaupt was im femon angezeigt bekommst
    Mit meiner Satelco EasyWatch S2 ebenfalls mit STB0899 Chipsatz
    zeigt mir das femon ueberhaupt nichts an und steigt beim Kanalwechsel oft total aus.
    Es gab mal 2 Patches ftp://ftp.tvdr.de/vdr/Developer/Driver-Patches/
    Index von ftp://ftp.tvdr.de/vdr/Developer/Driver-Patches/


    [Blockierte Grafik: moz-icon://.diff?size=16]02a-stb0899_signal_flag.diff
    1 KB
    23.04.2012
    00:00:00


    [Blockierte Grafik: moz-icon://.diff?size=16]04-stb0899-ber_no_msleep.diff
    2 KB
    23.04.2012
    00:00:00


    aber die sind im neuen yavdr nicht mehr anwendbar.
    Konnte keine Lösung bisher für das leidige Problem finden..


    mfg emma53

    Test_VDR: Lintec Senior - MSI G41M P25 MS7592 Board - Intel P4 E8500 / 775 CPU - MSI GT710 PCI-e passiv - DVBSky S2 952 Dual SAT - 120GB Intenso SSD + Big HDD - 2x2GB DDR3 RAM - LG GH24NSD1 S-ATA DVD - SMK RC6 MCE 50GB FB. an STM32 USB-Arduino - EasyVDR 5 - Softhddevice mit Pulseaudio - Kodi 20.2 m. Confluence Skin
    Clients:Raspberry PI B+ mit OpenElec 5.08 Kodi Helix 14.2 und Tsop31238 Lirc mit Conrad Promo8 FB on Code VCR 0104 - Raspi3 m.OpenElec 6.03 und Kodi 15.2 Isengard

    Einmal editiert, zuletzt von Emma53 ()

  • Hi KLS
    Sei froh das Du ueberhaupt was im femon angezeigt bekommst


    Ich benutze nicht femon, sondern die Anzeige in der LCARS Skin.



    Zumindest in dem Treiber den ich verwende (http://linuxtv.org/hg/~endriss/media_build_experimental) sind diese Patches bereits drin.


    Inzwischen bin ich auf das hier gestoßen: https://github.com/OpenELEC/OpenELEC.tv/pull/1733/files.
    Sieht so aus als würde der stb0899 im DVB-S und -S2 Fall unterschiedliche Maximalwerte liefern. Muß ich mir noch näher anschauen.
    Mann ist das alles verkorkst... :-/


    Klaus


  • Ist halt die Frage, ob die beiden Werte nicht evtl. zusammenhängen, so daß ein solcher Fall gar nicht auftreten kann.
    Habe leider kein Datenblatt. Frage doch einfach den Treiberautor (Manu Abraham).


    Btw, daß bei DVB-S ein anderes SNR herauskommt als bei DVB-S2, überrascht mich nicht. Es sind schließlich zwei verschiedene Modulationsverfahren, die - salopp gesagt - den Datenkanal unterschiedlich ausnutzen...


    CU
    Oliver


  • Ist halt die Frage, ob die beiden Werte nicht evtl. zusammenhängen, so daß ein solcher Fall gar nicht auftreten kann.


    Das kann natürlich sein.


    Zitat


    Habe leider kein Datenblatt. Frage doch einfach den Treiberautor (Manu Abraham).


    Btw, daß bei DVB-S ein anderes SNR herauskommt als bei DVB-S2, überrascht mich nicht. Es sind schließlich zwei verschiedene Modulationsverfahren, die - salopp gesagt - den Datenkanal unterschiedlich ausnutzen...


    Ich habe inzwischen mit den Werten von hier die Auswertung in cDvbTuner::GetSignalQuality() angepasst:


    Damit sieht es jetzt schon besser aus.


    Klaus

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!