femon mit STR in dBm und SNR in dB bei TT S2-1600, Cine S2 u.a mit stv090x - Jetzt auch ohne Treiber Patch!

  • Jetzt müsste sich nur noch Jemand finden, der diese Infos in den VDR bringt. ;)


  • vdr-femon benutzt VDR Funktionen https://github.com/rofafor/vdr…on/blob/master/osd.c#L628 und die benutzen DVBAPI3 Funktionen https://projects.vdr-developer…evice.c?h=stable/2.2#n560
    Klaus hat das in #12 und #15 kommentiert, aber das war vor 3 Jahren.
    Wenn man den VDR auf DVBAPI5 umstellen würde, und vdr-femon entsprechend auch, ginge es.

  • jrie und 3PO :
    Vielen Dank für Eure Hinweise auf dvb-fe-tool und API / VDR / VDR-Femon.
    Ich muss mich da mal weiter einlesen.
    :-)

    Software: yaVDR0.6.1 mit VDR 2.2.0-13yavdr0~trusty, Kernel 4.4.0-116-generic, nvidia 384.111, dddvb 0.9.32.0easyVDR0 
    Hardware: ASRock B75 Pro3-M, Intel G2030, RAM 4GB, SSD 64GB, HDD 4TB, Zotac GT630 ZONE Edition 1024MB GK208 (SKU:ZT-60408-20L), DD Cine C2/T2 V7
    Fernseher: SONY KDL-32D3000
     



  • I guess that's a typical "chicken & egg" problem ;-).
    Applications won't use this new API unless all frontend drivers support it.
    Once it is supported by all frontends, I'll be more than glad to use it in VDR.


    Klaus


    So wie es aussieht, werden immer Leute noch Karten haben, die nur DVBAPI3 unterstützen, und andere welche, die nur DVBAPI5 vernünftig unterstützen. Daher eine Idee, wie wäre es BEIDES zu unterstützen? Dann wären Alle glücklich, und keine kruden Patche mehr nötig.
    Man könnte einfach die Schnittstelle zwischen VDR und vdr-plugin-femon "aufbohren", indem man für DVBAPI3 alles so lässt, wie es ist, aber für DVBAPI5 die Werte mit negativem Vorzeichen übergibt, also -0xFFFF ... 0. In vdr-femon wüsste man dann bei negativem Wert, dass DVBAPI5 verarbeitet werden muss. Im VDR müsste man nur prüfen, ob DVBAPI5 geht, wenn Ja wird die genommen, wenn Nein, wird DVBAPI3 genommen (so wie bisher).
    Das müsste relativ leicht einzubauen sein.

  • Zitat

    I guess that's a typical "chicken & egg" problem ;-).
    Applications won't use this new API unless all frontend drivers support it.
    Once it is supported by all frontends, I'll be more than glad to use it in VDR.


    Klaus


    Das ist kein "chicken & egg" Problem, sondern ein Problem mit der erzwungenen Abwärtskompatibilität!


    Wenn beim VDR die API geändert wird, wird komischerweise Niemand gefragt, insbesondere die Pluginentwickler nicht.
    Aber wenn ein User mit aller Gewalt irgendeine vorkriegs DVB-Karte und Steinzeit Hardware verwenden will, wird alles dran gesetzt, dass diese auch weiterhin unterstützt wird!


    Weshalb macht man da nicht einfach mal einen Schnitt? Wer alte (nicht mehr unterstützte) Hardware verwenden will, der soll halt auch die alte Softwareversion verwenden!

  • Dank dieses Threads ist mir aufgefallen, dass dvb-fe-tool bei meiner DVBSky T9580 (v3) sowohl für DVB-S als auch für DVB-T sowohl Signalstärke (in dBm) als auch CNR (in dB) angezeigt werden. Mit dem normalen Femon (egal ob Kommandozeile oder das femon-Plugin für vdr) wird bei DVB-T gar nichts und bei DVB-S ausschließlich die CNR in einem nicht gut lesbaren Format (Hex) angezeigt.


    Ich hab jetzt mal quick&dirty das Femon-Plugin so umgebaut, dass die Werte für STR und SNR über libdvbv5 abgerufen und korrekt in dBm bzw. dB angezeigt werden. Der Patch ist wirklich nur für das Femon-Plugin, der vdr Core oder gar der Kernel werden nicht angerührt. Es werden auch wirklich nur diese beiden Werte geändert. Also NICHT die beiden Balken für Stärke und Qualität, sondern wirklich nur die Zahlenanzeige.


    Lustigerweise hat das Femon-Plugin für beides sowieso getrennte Werte (strengthM, qualityM für die Balken und signalM und snrM für die Zahlenanzeigen) und lustigerweise werden signalM und snrM schon in der Originalversion des Femon-Plugins nicht über den vdr Core abgefragt, sondern direkt vom Kerne per ioctl. Alles, was der Patch macht, ist diese beiden Werte über die libdvbv5 anzufragen. Dadurch entsteht logischerweise eine Abhängigkeit zu libdvbv5 (in Ubuntu müssen die Pakete libdvbv5-0 und libdvbv5-dev installiert sein).


    Hier der Patch:


    Im Patch fehlt noch die Abfrage von BER, UNC (die könnte man auch über libdvbv5 abfragen). Das hab ich noch nicht eingebaut, war mir auch erstmal nicht so wichtig aber sollte sich einfach einbauen lassen.


    Außerdem werden die beiden Zahlenanzeigen (also STR, SNR) mit dem Patch, so wie er jetzt ist, wohl nicht mehr für nicht DVB-Geräte funktionieren, da der Code zur Anzeige nicht prüft, ob die beiden Werte im alten Format vorliegen oder halt eben in dBM/dB und einfach von letzterem ausgeht. Kompatibel ist der Patch wie gesagt mit meiner DVBSky T9850v3 und ich würde mal vermuten mit allen anderen Karten, die als Frontend den Silicon Labs Si2168 oder Montage M88DS3103 benutzten.


    Ich vermute mit dem stv090x könnte es auch klappen, da wäre interessant, ob die Ergebnisse identisch sind zu der von jrie benutzen Methode mit der Umrechnungsliste und API v3.

    VDR 1: Linux Mint 18.1 mit VDR 2.2.0 und Ausgabe auf X11 (Radeon HD6450) via softhddevice/vdpau. DVB-Karte: DVBSky T9580V3
    VDR 2: Ausgabe auf X11 (Intel i5 Kaby Lake) via softhddevice/vaapi, sonst wie VDR 1

  • Das dvb-fe-tool scheint auch noch nicht der Weisheit letzter Schluss zu sein. :(


    Hier mal am Beispiel von ORF1-HD, das laut der channels.conf so aussieht:


    Code
    1. ORF1 HD;ORF:11302:HC23M5O35P0S1:S19.2E:22000:1920=27:0;1921=deu@106,1922=mis@106:1925:648,650,D95,D98,500,9C4,98C:4911:1:1007:0


    und das ist das, was das dvb-fe-tool ausgibt:



    So wie ich das sehe, stimmt weder die Polarisation, noch die Frequenz, noch die SID.

  • Interessant. Bei mir das gleiche. Frequenz stimmt nicht, Polarisation wird als "OFF" angezeigt und STREAM_ID ist immer 0. Das Delivery-System und die Symbolrate stimmen dagegen. Und auch die gleiche Fehlermeldung am Schluss, wenn er versucht, das Handle auf das Device wieder freizugeben. Aber die Ausgabe von "--femon" ist bei mir immerhin plausibel.

    VDR 1: Linux Mint 18.1 mit VDR 2.2.0 und Ausgabe auf X11 (Radeon HD6450) via softhddevice/vdpau. DVB-Karte: DVBSky T9580V3
    VDR 2: Ausgabe auf X11 (Intel i5 Kaby Lake) via softhddevice/vaapi, sonst wie VDR 1

  • Seltsam ist auch dass, verschiedene Versionen unterschiedliche Werte bei der Frequenz ausgeben:


    Version 1.10.1


    Version 1.11.0 (git)


  • Dementsprechend der Patch aus #9 an vdr-femon-2.2.2 angepasst (noch völlig ungetestet). Wie gesagt erst ab Kernel 4.10.

    Hier eine verbesserte und getestete Version:

  • Der Patch von eins höher ist nur für VDR 2.2.0 und femon 2.2.2 .


    Seit ca. Mai 2017 können VDR 2.3.4 und höher sowie femon 2.3.0 (und höher) DVB API 5.

    Dafür wäre DVB API 5 im stv090x-Treiber angesagt, das könnte man von dddvb übernehmen.