Problem mit TBS 6590 Frontends

  • >> The Si218x2 embeds two independent programmable transport stream interfaces which provide a flexible range of output modes,

    >> including a TS cross-bar functionality, and are fully compatible with all MPEG decoders or conditional access modules to support

    >> any customer application.


    Dafür müsste es in der linux tv api einen neuen ioctl geben, der das Umschalten von frontend<->demux erlaubt.

    Solange es den nicht gibt, wäre eine Lösung mit zwei Frontends und zwei Demuxern eine 100% kompatible Lösung.

  • Ich habe gestern auf meine diesbezügliche Frage vom TBS-Support die Antwort erhalten:


    Ein Tuner hat zwei frontends einen für DVB-C/T und einen für DVB-S/S2
    Daher wird das Übertragungssystem nicht mit DTV_SET_DELIVERY_SYSTEM unterschieden.

    Das kann man machen, müsste man aber nicht. Schließlich wird zwischen DVB-T und -C auch mit DTV_SET_DELIVERY_SYSTEM umgeschaltet, also sollte das auch mit DVB-S und wer weiß was künftig noch alles kommen kann möglich sein. Einziger Grund, der für zwei Frontends sprechen kann ist, dass es halt wirklich zwei verschiedene Bausteine sind. Was aber letztlich keine Rolle spielt und genauso gut hinter DTV_SET_DELIVERY_SYSTEM hätte versteckt werden können, wenn man es denn den Applikationen einfach hätte machen wollen ;-).


    Aber gut, nehmen wir mal an, das wird sich nicht ändern. Wäre es dann eine zulässige Annahme, dass ein Adapter, der mehrere Frontends hat, diese dann und nur dann unabhängig voneinander (also gleichzeitig) verwenden kann, wenn es zu jedem frontendX auch ein zugehöriges caX, demuxX und dvrX gibt, und dass es, wenn von den Frontends immer nur *eines* exklusiv verwendet werden kann, nur genau *ein* ca0, demux0 und dvr0 und *keine* caN, demuxN und dvrN (N > 0) gibt?

    In letzterem Falle könnte VDR dann *ein* cDevice anlegen mit entsprechend vielen cDvbTunern und bei der Auswahl des Delivery-Systems halt noch eine Abfrage vorschalten, welcher der Tuner das DS liefern kann.


    Klaus

  • dass es, wenn von den Frontends immer nur *eines* exklusiv verwendet werden kann, nur genau *ein* ca0, demux0 und dvr0 und *keine* caN, demuxN und dvrN (N > 0) gibt?

    Das würde ich genau so sehen, ca0 ist natürlich optional, aber demux0 und dvr0 werden in dvb-core/dmxdev.c immer zugleich erstellt.

    Ich glaube auch das der Fall frontendN/demuxN gar nicht vorkommt da für dieses Frontend (mit eigenem Tuner und eigenem Demodulator) gleich ein eigener Adapter erstellt werden würde.

    Ein Tuner hat zwei frontends einen für DVB-C/T und einen für DVB-S/S2

    Eher so: Ein Adapter hat für jeden der 2 Tuner ein Frontend, eines für DVB-T/C eines für DVB-S/S2.

    Als Anhang das Schema aus Si21832-B60-short.pdf dem die TBS6590 (und auch der TBS6522) ziemlich genau entspricht.


    Vielleicht kann man aus den einzelne Frontends auch ein "Masterfrontend" erstellen, in dem die Delivery-Systems und fe.caps "aufaddiert" werden und in dem dann je nach Bedarf das richtige "Subfrontend" ausgewählt wird.


    Helmut

  • Das"kann man" ist eigentlich durch "sollte man" zu ersetzten.

    Da man die einzelnen Frontends nur exklusiv zu verwenden kann, ist es besser sie hinter einem gemeinsamen Frontend zu verstecken.


    Eine Schwierigkeit gibt es noch wenn das gemeinsame Bauteil der Tuner ist.

    Hier muss eigentlich vor dem Anlegen des cDvbDevice für frontend1 das frontend0 wieder geschlossen werden weil DvbOpen() sonst nicht klappt.


    Helmut

  • Das"kann man" ist eigentlich durch "sollte man" zu ersetzten.

    Da man die einzelnen Frontends nur exklusiv zu verwenden kann, ist es besser sie hinter einem gemeinsamen Frontend zu verstecken.

    Mein "kann man machen" bezog sich darauf, dass TBS *zwei* Frontends anlegt, obwohl immer nur eines davon verwendet werden kann. Man sollte das aber eher *nicht* machen - was du vermutlich gemeint hast ;-).


    Klaus

  • Ich meinte eigentlich mein eigenes "kann man" von hier:

    Vielleicht kann man aus den einzelne Frontends auch ein "Masterfrontend" erstellen,

    Wahrscheilich könnter der TBS-Treiber genauso die beiden realen Tuner hinter einem einzelnem "Multi Standard Mastertuner" verstecken und über die Frontendparameter dann den geigneten auswählen.

    Aber wenn es der Treiber nicht macht, macht es eben VDR und es werden nun aus den 2 Frontends ein einzelnes "Multi Standard Masterfrontend". Klingt doch auch gut, oder ?

    Helmut

  • Wenn das Schaltbild stimmt, haben die bei TBS Mist gebaut, es gibt zwei unabhängige demuxer mit jeweils unabhängigen pid filtern.


    /dev/dvb/adapterN/demux0

    /dev/dvb/adapterN/demux1



    Nach dem Bild würde es außerdem je ein frontend mit DVBS/S2/C und eines mit DVBS/S2/T/T2 geben müssen.

    Ist nicht mein Programm, aber ich würde mir diese Sonderlocken schlecht implementierter Treiber nicht antun. Eigentlich sollte ein Hersteller ja wissen, was er tut.

  • Das ist ja auch das Schaltbild des Si21832 Dual Demodulators (zwei Si2183 in einem IC).


    Der TBS Treiber erstellt für alles das oberhalb und unterhalb der Bildmitte ist je einen Adapter, in jedem Adapter ein demux0 für den Demodulator (A oder B) und 2 Frontends wegen der beiden Tuner die am Demod hängen. Beide "TV-Tuner" sind für DVB-T/T2/C geeignet.

    Der Treiber Ist schon ok.


    Helmut

  • M-Reimer

    das würde ich auch besser finden, gerade Anfänger tun sich sehr schwer damit erst alles zu Patchen.

    Gruß

    speed

  • Ja, wollte ich eigentlich schon längst machen, ist aber immer wieder was dazwischengekommen. Es gibt noch ein paar Kleinigkeiten, die ich gerne noch vorher austesten möchte. Sobald mein neuer VDR mit vaapidevice stabil läuft, werde ich mich darum kümmern.


    Klaus

  • Ich muss noch die Anmerkungen von hier und hier berücksichtigen, dann werde ich den Patch nach ftp://ftp.tvdr.de/vdr/Developer/Patches/vdr-2.4 einspielen. Damit sollte es dann funktionieren, vorausgesetzt, an allen Eingängen liegen entsprechende Signale an. Devices zu erkennen, an denen (evtl. temporär) kein Signal anliegt, kommt danach.


    Klaus

    und während der Wiedergabe: "vdr wird in 5:00 Minuten abgeschaltet" bitte nicht vergessen

    VDR 1: Silverstone LC20, Cougar A300/R, MSI C847MS-E33, passive Asus GT520, Sundtek MediaTV Digital Home (DVB-C/T), KNC One DVB-C, WD10EACS; Atric-IR-Einschalter. SW: Xubuntu 18.04 per SSD
    VDR 2: ACT-620, Asrock B75 Pro3-M, Celeron G540, passive Asus GT610, Cine CT V6, KNC-One DVB-C, Atric-IR-Einschalter. SW: Xubuntu 18.04 per SSD