t2scan: neues DVB-T/T2 Channel Scan Tool basierend auf w_scan

  • mighty-p : Verwende "NO_STREAM_ID_FILTER" als Wert für StreamID/PLP. Damit wird die PLP automatisch vom Demodulator ausgewählt und es kommt zu einem Lock. Über den T2DeliversystemDescriptor der NIT erfährt man dann die PLP-ID für diesem Transponder.


    Hier ein paar Zeilen wie ich es in meinem S2-multistream4-T2 patch in SetFrontend mache.

    Helmut

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

  • Sooo, ich hab gerade mal folgende Änderungen ins GIT eingespielt:

    - Default PLP ID für Italien auf 1 gesetzt

    - Die von HelmutB vorgeschlagene Autodetection für die PLP eingebaut. Diese ist noch experimentell und daher nicht defaultmäßig aktiviert. Man kann sie mit dem Parameter '-p-1' aktivieren (also "t2scan -p-1"). Bitte probiert mal aus (vor allem motze für Italien und jemand für Österreich, aber natürlich auch gerne für Deutschland), ob damit die Sender gefunden werden. Was anscheinend nicht geht, ist beide PLP-IDs zu finden, wenn es zwei auf dem Kanal gibt (ist bei ZDF HD der Fall, auf PLP 0 sind die ZDF-Programme, auf PLP 1 sind Verweise auf Internetstreams - es wird nur PLP 0 automatisch gefunden).

  • Die Option "-p -1" funktioniert nicht weil #define NO_STREAM_ID_FILTER (~0U) als int dann -1 ergibt.

    Dadurch wird bei test.plp_id = (flags.override_plp_id<0) ? dvbt2_plp_id : flags.override_plp_id; der Default Wert genommen (bei dir 0, bei mir 1).


    Sind bei dir PLP0 und PLP1 wirklich auf einem Transponder? Ich hätte gedacht, dass bei Multi-PLP dann in der NIT für jede PLP ein T2DeliverSystemDescriptor übertragen wird. kannst du dir NIT-Daten von diesem Transponder ausgeben lassen.


    LG Helmut

    ---

    Edit: nur als schneller Test gedacht: mit

    test.plp_id = (flags.override_plp_id<-2) ? dvbt2_plp_id : flags.override_plp_id; in scan.c und

    uint32_t plp_id; /* DVB-C2, DVB-T2 35 */ in si_types.h geht es:

    Code
    498000 (CH24): (time: 01:39.216)  signal ok: QAM_AUTO f = 498000 kHz I999B8C999D999T999G999Y999P-1 (0:0:0)
            QAM_AUTO f = 498000 kHz I999B8C999D0T32G16Y0P1 (8232:13101:101) : scanning for services
        service = ORF1 HD (ORF)
        service = ORF2 W HD (ORF)
        service = ORF2 N HD (ORF)
        service = ORF2 B HD (ORF)
        service = ORF III HD (ORF)
        service = ORF Sport+ HD (ORF)
        service = ORF1 (ORF)
        service = ORF2 W (ORF)

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

    2 Mal editiert, zuletzt von HelmutB ()

  • Nochmal danke HelmutB . Ich hab die ganze Zeit mit 99 als Wert für die Auto-detection (also um NO_STREAM_ID_FILTER zu setzen) getestet und es erst im letzten Moment auf -1 geändert. Dabei ist dann wohl dieses Problem aufgetaucht. Mit dem neuesten GIT sollte es jetzt erstmal passen. Ist ein Quickfix, da ich erst nach der Arbeit genau drauf gucken kann.

    Trotzdem an alle Interessierten die Bitte, mit dem aktuellen GIT nochmal zu testen, ob die Kanäle mit "-p-1" jetzt gefunden werden.


    Nochmal HelmutB, interessant dass bei dir beim ORF die richtige PLP ID aus dem Delivery Descriptor gelesen wird. Ich meine du hättest weiter vorne im Thread mal geschrieben, dass da beim ORF 0 steht, obwohl es ja 1 sein müsste. Wurde das von denen korrigiert? Oder kam die 0 woanders her?


    Und ja, in Deutschland gibt es mehrere DVB-T2-Muxe, auf denen sich Programme sowohl in PLP 0 als auch PLP 1 befinden. Z. B. der Mux/Transponder mit ZDF. Da sind die ZDF-Services in PLP 0 und in PLP 1 gibt es so genannte "Connect"-Services von Media Broadcast.

    Ich muss nachher (nach der Arbeit) schauen, ob da wirklich mehrere T2DeliverSystemDescriptors in der NIT sind. Allerdings sieht die NIT bei manuell gesetzten PLP 0 ganz anders aus als PLP 1 - und bei NO_STREAM_ID_FILTER sieht sie auf den ersten Blick(!) genauso aus wie bei PLP 0. Aber wie gesagt: more research needed und jetzt ruft erstmal die Arbeit.

  • Danke mighty-p . Funktioniert hier mit dem Parameter -p-1 wie gewünscht:


    Code
    634000 (CH41): (time: 04:10.998)         signal ok:	QAM_AUTO f = 634000 kHz I999B8C999D999T999G999Y999P-1 (0:0:0)
    QAM_AUTO f = 634000 kHz I999B8C999D0T32G16Y0P1 (8572:12401:10255) : scanning for services
    service = RAS arte HD TEST (RAS)
    service = RAS RSI LA 1 HD TEST (RAS)
    service = RAS ORF III HD TEST (RAS)
    service = RAS Test_BR Fernsehen Süd ((null))
    signal strength = -56.0 dBm
    signal quality = 28.5 dB

    ORF III und RSI LA 1 werden mit 10 bit ausgestrahlt. Kann aber mangels geeignetem Gerät nicht sagen, ob da wirklich HDR ankommt.


    Im übrigen wird in Italien zumindest ein MUX der RAI noch im VHF Band III mit 7 MHz Bandbreite ausgestrahlt. Bei mir kommt dieser z. B. auf 177,5 MHz (ch 5) rein. VHF wird aber von t2scan und w_scan in den letzten Versionen ignoriert. Habe mich immer wieder gewundert, warum mir ein Trasnponder nach dem Scan fehlt. Könntest Du dieses Band eventuell für Italien wieder aktivieren? Ich werde mich noch erkundigen, ob das auch nach dem Wechsel auf DVB-T2 so bleibt.

    VDR-Clients:
    Raspbian Buster
    - vdr 2.4.1 - Raspberry PI 2B


    Home-Server:
    Debian Bookworm - vdr 2.6.0 (eTobi) - Kernel 6.1

    Asus Prime B360M-C - Pentium Gold G5400 - Mystique SaTiX-S2 Dual - Hauppauge WinTV-QuadHD

  • interessant dass bei dir beim ORF die richtige PLP ID aus dem Delivery Descriptor gelesen wird.

    Das ist normalerweise auch so. Nur schafft es der ORF in Wien auf einem von 7 Transponder eine falsche PLP-Id 0 zu übertragen. Aber nicht nur in Wien, ich habe es auch z.B. in Oberösterreich bemrkt. Da braucht es dann eine Sonderbehandlung.


    Zu MPLP: ich würde für jede PLP die im Transportstream enthalten ist, eine T2DeliverySystemDescriptor erwarten. Es kann aber sein, dass die ""extendet_info" nur in einem T2Descriptor vorhanden ist da diese Information für alle PLPs gilt.

    Schau einmal ob es wiklich nur einen T2Descriptor gibt, falls es doch einen weiten gibt fehlt da vielleicht diese extendet_info und dein default Wert für z.B. "bandwidth" ist nicht brauchbar.


    ich habe mir hier eine Ergänzung für DVB-T2 im VDR ausgedacht [Patch] DVB-S2 Multi Input Stream (ungetestet) DVB-T2 MPLP+Scan. Schau dir diesen Patch einmal an.

    LG Helmut

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

  • Bin gerade in meiner Mittagpause, daher nur kurz.


    motze Danke fürs Testen. Die Kanalliste mit VHF kannst du mit dem Parameter -L3 aktivieren. Für Polen hab ich diese Kanalliste schon zum Default gemacht, da mir ein User gemeldet hat dass es dort DVB-T auf VHF gibt. Kann ich für Italien auch machen. In den meisten Ländern ist auf den VHF-Kanälen 5-12 inzwsichen nur noch DAB.


    HelmutB Das ist alles sehr hilfreich und ich schau mir das auch nachher genauer an, wenn ich Feierabend hab. Dann kann ich dir gerne auch die komplette NIT des ZDF-Transponders ziehen und zuschicken.

    Gerade noch ne Frage: Was ist das Problem mit dem Default-Wert für Bandwidth? Die Bandwidth sollte doch immer 7 für VHF und 8 für UHF sein. Was anderes hab ich noch nie gesehen. Ich glaube auch, der Code dazu ist noch der aus w_scan übernommene, jedenfalls erinnere ich mich nicht, dass ich den geändert hätte (muss ich nachher auch nochmal checken)

  • Ich habe nicht alles int t2scan angesehen, aber möglicherweise gibt es bei MPLP ein Problem in scan.c/parse_nit()

    Es wird in eine mehr oder weniger leeren struct transponder "tn" der T2-Descriptor eingelesen, danach - weil klarereweise ONID und TID mit dem von current_tp ident sind - die fe_params von current_tp als default genommen - und damit auch die PLP-ID.

    Mit der Option "-vvvv" würdest du da vielleicht etwas erkennen.

    LG Helmut

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

  • mighty-p : vergiss das was ich oben wegen dem überschreiben gesagt habe, das parse_descriptor kommt ja erst nach dem copy-fe_data(). Also doch einmal nachsehen, ob es in der NIT nur einen T2-Descriptor gibt.

    LG Helmut

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

  • HelmutB

    Sooo, nachdem ich gestern Abend keine Lust mehr auf Computer hatte, hab ich heute morgen mir die Sache mal angeschaut.


    Da t2scan (im Gegensatz zu w_scan) ja keine Netzwerksuche macht, war das parsen der NIT zu Einträgen, bei denen TSID und NID nicht mit dem aktuell gelockten Transponder übereinstimmt, ausgeschaltet. Dadurch hat man im Log (-vvv) viel von der NIT nicht gesehen. Daher hab ich erstmal das Parsen dieser Einträge wieder aktiviert (außer Debug-Ausgaben wird damit nichts gemacht - daher auch nicht im GIT, sondern hier als Patch zum aktuellen GIT-Stand):



    Nun hab ich mal den Kanal 37, auf dem bei mir sowohl PLP 0 benutzt wird (ZDF-Services mit NID 515) als auch PLP 1 benutzt wird (Media Broadcast-Services mit NID 16498) gescannt.


    Erkenntnis ist, dass - auch bei NO_STREAM_ID_FILTER (-p-1) immer nur die ZDF-PLP gelockt wird und keinesfalls der ganze Kanal in einem. Es kommt dieselbe NIT, als wenn ich -p0 benutze. Bei -p1 sieht die NIT ganz anders aus.


    Auf der PLP 0 wird hier auch nicht in die PLP 1 irgendwie verlinkt. Ist auch kein Wunder, da es verschiedene Anbieter sind. Allerdings wird auf PLP 1 auf die anderen MB-Services verlinkt - also auch auf ganz andere Frequenzen/Kanäle, auf denen auch PLP 0 benutzt wird.


    Wenn ich umgekehrt auf die anderen Kanäle, auf denen MB-Services auf PLP 0 sind, scanne (bei mir sind das die Kanäle 35, 44, 45), dann werden in allen 3 Kanälen auch Daten in der NIT für NID 16498 gefunden. Jetzt könnte man denken "perfekt"... aber jetzt kommt's. Es wird da zwar auf die PLP 1 referenziert - aber die angegebene Frequenz stimmt nicht... Wie soll man da klar kommen!?

  • Hier mal die kompletten Logs (mit obigem Patch für den Kanal 37 mit -p-1, was PLP 0 entspricht, und -p1). Vorsicht: recht lang!


    PLP 0 (mit -p-1 gescannt):

  • PLP 1, Teil 1:

  • PLP 1, Teil 2:

  • Und hier auch mal noch den Verweis auf den T2-Delivery-Descriptor für NID 16498, den ich identisch in den Kanälen 35, 44, 45 gefunden habe (man beachte die falsche Frequenz, denn bei mir ist dieses Netzwerk ja eindeutig auf Frequenz 602000!):


    Code
    NIT(act): (8468:12352:16498)
       NIT data is for other (currently not locked) transponder
        ===================== parse_T2_delivery_system_descriptor ==============
        len = 13
        0x00: 04 01 1E 56 03 B2 02 41 03 71 F5 40 00          :    V   A q @ 
        ========================================================================
    parse_T2_delivery_system_descriptor:1116 f578000 system_id7766 plp_id1 SISO/MISO=SISO B8.0 G19128 T16 other_frequency1 TFS0
              1 cells:
                 cell 577: center_frequency 578.000
            ----------------------------------------------------------
  • Wenn das alle NIT Informationen sind, wird es schon so sein das ZDF-HD keine Verbindung zu MB angibt, umgekehrt aber schon.

    Da muß man dann doch die PLP-Id wissen und mit "-p" gesondert scannen.

    Das mit den Frequenzen ist mir auch schon aufgefallen, und es ist mir auch nicht klar, warum die getunte Frequenz manchmal in den Frequenzlisten fehlt.


    Wenn es dich interessiert, kannst du ja meinen Patch für einen internen DVB-T/T2 Scanner ausprobieren und das Ergebnis vergleichen.

    Dazu braucht es:

    1.) vdr-2-4-1-s2-multistream4-patch

    2.) vdr-2-4-1-s2-multistream4-t2-patch

    3.) vdr-2-4-1-s2-multistream4-t2-scantcsv3-patch

    und den

    4.) vdr-2-4-1-sdt-hevc-support-patch


    Am besten den VDR mit einer leeren Kanalliste starten und unter Einstellungen->EPG den DVB-T Scan mit der gelben Taste starten.

    Es dauert ca. 6-8 Minuten, man sieht den Scanfortschritt aber nur im Syslog. Ein Tastendruck bricht den Scan ab (wie beim EPG).

    LG Helmut

    HelmutB passed unfortunately away on July 21, 2022 ... RIP 🖤

  • HelmutB Gesagt, getan. Dein DVB-T-Scan funktioniert bei mir. Es wurden 89 Services gefunden, interessanterweise werden die Internet-Verweise auf Radiosender anscheinend von dir herausgefiltert während die Internet-Verweise auf derselben Frequenz (562 MHz) in der Liste sind. Sonst sieht es aber gut aus. Interessant ist, dass die PLP-1-Sender nicht auftauchen und teilweise "P-1" in den Parametern vorkommt. Die Programme lassen sich so aber trotzdem tunen.


    P.S. Hab gerade den Scan für DVB-S auch noch gestartet und er füllt auch hier fleißig meine Kanalliste. Sieht also erstmal gut aus :thumbup:

  • Mein Scanner macht (fast) nichts anderes als der VDR beim EPG-Scan, ich fülle die ScanList nur mit vordefinierten Werten für Transponder und Tuning Parameter. Beim VDR werden neue Programme/Services in sdt.c angelegt, aber nur für gewisse StreamTypes und auch nur, wenn es einen gültigen Namen gibt. Es wäre daher zuindest der Streamtype der fehlenden Services interessant.


    Auf 666 Mhz werden vermutlich die Programme mit der PLP0 (Tid 16481) gefunden, aber in der NIT wird nur ein T2-Descriptor für die PLP1 (Tid 16497) gesendet. Daher bleibt bei bei der ersten PLP der Wert von "P-1" für "NO_STREAM_ID_FILTER" stehen weil die genauen Parameter und die PLP-Id nicht bekannt sind.


    Wenn du die beiden Patches im Anhang dazu nimmst, wird angezeigt welche DeliverySystemDescriptoren empfangen werden und welche StreamTypes unberücksichtigt bleiben.

    LG Helmut

  • Hmm...

Jetzt mitmachen!

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