Plugin satip wer pflegt das ?

  • Hallo,


    Ich glaube wirbel ist der maintainer, oder

    Ich nutze das Plugin schon eine Weile und habe lediglich ein kleines Problem damit.

    Es kommt immer wieder mal vor das der Kanal nach dem Umschalten dunkel bleibt.

    Ein hin- und herzappen löst das Problem.

    Das einzige was ich bisher sagen kann das es im Prinzip alle Kanäle betrifft.

    Es tritt eher sehr selten auf, aber immer wieder mal.

    Meine Version ist die letzte aus dem GIT.

    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.7 + 8 weitere Plugins + Debian Bookworm via M2 + Kernel 6.7.3

  • Hallo Peter,

    ich pflege eine Version auf github, die alle aktuellen Änderungen hat.

    Am besten wird sein, du schaltest die passenden debug Meldungen ein und postest die logs von einem nicht erfolgreichem Umschalten.

    Du kannst die debug Meldungen per commandline mit "-t 0x1B08" oder per svdrp temporär aktivieren "TRAC 0x1B08".

    0x1B08 =

    DbgTunerState | DbgChannelSwitching | DbgRtcp | DbgPids | DbgDiscovery

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Soweit ich erkenne

    1. satip device 0 wird der zweite tuner auf dem server zugeordnet.

    Jul 28 11:45:13 vdr2 vdr[657]: [657] SATIP: channel virtual bool cSatipDevice::SetChannelDevice(const cChannel*, bool) (26, 0) [device 0]

    Jul 28 11:45:13 vdr2 vdr[657]: [657] SATIP: channel bool cSatipFrontends::Assign(int, int) assigned TP 112187 to DVB-S2/#2

    2. das device 0 sendet an seinen 'tuner' die Daten geht in den status tsSet (an den server tune request gesendet)

    Jul 28 11:45:13 vdr2 vdr[657]: [667] SATIP: tunerstate virtual void cSatipTuner::Action(): tsLocked [device 0]

    Jul 28 11:45:13 vdr2 vdr[657]: [667] SATIP: tunerstate virtual void cSatipTuner::Action(): tsSet [device 0]

    3. der server meldet für tuner1 (der zweite..) 255,1,15 zurück: maximalen Signalpegel (255), LOCKED (1), maximale signal qualität (15).

    Der tuner versteht das Erfolg und meldet an sein device 0 den Status tsLocked zurück. Diese Meldung vom Server sieht aber unwahrscheinlich aus; maximaler signal pegel und maximale Qualität? Bei zu viel Pegel kann quality nicht maximal sein.

    Jul 28 11:45:13 vdr2 vdr[657]: [666] SATIP: RTCP virtual void cSatipTuner::ProcessApplicationData(u_char*, int) (ver=1.0;src=1;tuner=1,255,1,15,12187,h,dvbs,qpsk,off,0.35,27500,34;pids=none) [device 0]

    Jul 28 11:45:13 vdr2 vdr[657]: [667] SATIP: tunerstate virtual void cSatipTuner::Action(): tsTuned [device 0]

    Jul 28 11:45:13 vdr2 vdr[657]: [667] SATIP: channel virtual void cSatipDevice::SetChannelTuned() () [device 0]

    Jul 28 11:45:13 vdr2 vdr[657]: [667] SATIP: tunerstate virtual void cSatipTuner::Action(): tsLocked [device 0]

    4. Die PIDs werden gesetzt

    Jul 28 11:45:13 vdr2 vdr[657]: [657] SATIP: PIDS virtual bool cSatipDevice::SetPid(cDevice::cPidHandle*, int, bool) (169, 5, 1) [device 0]

    (..)

    5. Der eine Sekunde später gemeldete Server Status sieht besser aus.

    Jul 28 11:45:14 vdr2 vdr[657]: [666] SATIP: RTCP virtual void cSatipTuner::ProcessApplicationData(u_char*, int) (ver=1.0;src=1;tuner=1,201,1,15,12187,h,dvbs,qpsk,off,0.35,27500,34;pids=0,16,18,73,77,169,17,20,80) [device 0]

    Laut deinem Server sollten jetzt Daten kommen.. Und der Signalpegel sieht sinnvoll aus, 201 anstelle von 255.


    Danach passiert nichts spannendes mehr.

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Die PIDs stimmen auch auf dem Server.

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Danke Wirbel für die Auswertung.

    Das würde dann bedeuten das ich eher auf der minisatip Seite schauen muss?

    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.7 + 8 weitere Plugins + Debian Bookworm via M2 + Kernel 6.7.3

  • Ich hatte auch schon Tests mit vtuner-ng gemacht. Hier trat das Problem allerdings niemals auf.

    Bei vtuner-ng gefiel mir das umschalten nicht so recht.

    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.7 + 8 weitere Plugins + Debian Bookworm via M2 + Kernel 6.7.3

  • Danke Wirbel für die Auswertung.

    Das würde dann bedeuten das ich eher auf der minisatip Seite schauen muss?

    Peter

    Der nächste Schritt wäre sowohl minisatip zu checken, als auch andere debug switches auf der VDR Seite zu nutzen.

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • 1. satip device 0 wird der zweite tuner auf dem server zugeordnet.

    Wieso ist das eigentlich keine 1:1 Zuordnung (also satip device 0 -> tuner 1, device 1-> tuner 2 etc)? Welchen Vorteil bringt das?

    Der VDR macht ja auch schon eine Zuordnung zu Devices und durch diese Zwischenschicht im satip-Plugin mit Assign/Attach waren die Fehler erst möglich, für die ich damals Patches geschrieben hatte ...

  • Weil jeder satip server mit voller Absicht kein definiertes tuner device bereit stellt, sondern das nächste zur Verfügung stehende.

    Wenn man das ändern würde, wären die meisten satip devices auf dem server dauerhaft besetzt für nix.

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • From the spec:

    Code
    SAT>IP servers generally feature multiple physical frontends (DVB-S/S2 tuners and demodulators). SAT>IP servers
    automatically assign these physical frontends to client requests as they come in. In normal operation SAT>IP clients
    should not specify a particular frontend in their requests.
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • ich habe mal den minisatip aus dem git aktualisiert.

    Ist noch etwas kurz, aber bisher gab es noch keinen dunklen Schirm nach dem Kanalwechsel.

    Ich werde hier nächste Woche berichten.


    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.7 + 8 weitere Plugins + Debian Bookworm via M2 + Kernel 6.7.3

  • Bis jetzt sehe ich keine Probleme, weder von minisatip, noch vom plugin.

    Ich lese, dass das vdr plugin an den server einen tune request sendet, der nach ~1sec erfolgreich ist. Keine Empfangsprobleme zu sehen.

    Und alle PIDs wurden korrekt gesetzt, die Rückmeldung kam ja vom Server.

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Weil jeder satip server mit voller Absicht kein definiertes tuner device bereit stellt, sondern das nächste zur Verfügung stehende.

    Das ist doch die Verbindung zwischen satip-Plugin und satip-Server, das finde ich ja auch in Ordnung.

    Mir ist nicht klar, warum das Satip-Plugin noch eine Zwischenschicht hat mit der Klasse cSatipFrontends. Da wird ja in Matches() geschaut, ob es ein cSatipFrontend gibt, dass bereits den Transponder getuned hat. Warum da nicht einfach eine statische Zuordnung machen der VDR Devices zu den Satip-Plugin-Frontends und die Satip-Plugin-Frontends verbinden sich dann dynamisch mit einen Tuner am Satip-Server.

  • Weil eine statische Zuordnung der Spezifikation widerspricht. jedes device hat ein beliebiges oder gar kein frontend auf dem Server.

    Code
    S AT>IP servers automatically assign these physical frontends to client requests as they come in. In normal operation SAT>IP clients should not specify a particular frontend in their requests.
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Hmm, entweder verstehe ich Dich nicht oder Du verstehst mich nicht. Ich meine das rein SATIP-Plugin intern.

    Ich versuchs nochmal anders: Wie erfolgt die Zuordnung der VDR-Devices zu den cSatipFrontend-Objekten innerhalb des SATIP-Plugins? (Alles danach wird vom SATIP-Server dynamisch zugeordnet "as client requests come in", da hat das SATIP-Plugin keinen Einfluss drauf.)

  • Versuchen wir beide das aufzudröseln.. Ich habe das Plugin nicht geschrieben, ich verwalte nur einen fork.

    vdr kennt devices. Solange nicht patches im Spiel sind, sind das irgendwie dvb frontends der Reihe nach, so wie sie der Kernel erkennt.

    Bei Satip sind devices leere Container, denen je nach Bedarf von einem der Server ein 'tuner' zugeordnet wird. Zeitweise oder gar keiner.

    Die Zuordnung tuner <-> device diktiert die SAT>IP spec. "Choose next available"

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Hallo,

    Zurück zum Thema:

    Das Problem tritt immer noch auf.

    Im log des minisatip Servers sehe ich auch das keine Daten übertragen werden.

    Von dem minisatip gibt es gefühlt 100 Forks.

    Nutzt hier eventuell jemand die Kombi?

    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.7 + 8 weitere Plugins + Debian Bookworm via M2 + Kernel 6.7.3

  • Von dem minisatip gibt es gefühlt 100 Forks.

    Das ist mir neu. Hast Du eines gefunden, das aktiv weiterentwickelt wird?

    Ich war etwas befremdet, dass der Originalentwickler für einen Bug, auf den ich ihn aufmerksam gemacht hatte und für dessen Behebung er nur zwei Zeilen hätte löschen müssen, von mir erwartet hat, dass ich einen git push request erstelle. Das war mir dann zu blöd, und der Bug ist bis heute nicht beseitigt. Das betraf die Signalanzeige im Webfrontend und dürfte aber nicht zu den von Dir beschriebenen Problemen führen. Solche Probleme hatte ich bisher ausnahmslos, wenn zwei VDR‘s mitsamt ihrem EPG-Scan gleichzeitig auf die beiden Tuner des minisatip zugreifen wollen. Man muss da wirklich eine 1:1-Zuweisung machen, da vdr bzw. das satip-Plugin vor der Verwendung eines Tuners nicht feststellen kann, ob der schon anderweitig benutzt wird. Die daraus im Fehlerfall resultierenden Meldungen im Log sind aber eindeutig erkennbar. Wenn es bei Dir keine Fehler im vdr-Log gibt, würde ich parallel mal das minisatip-Log checken. Ist ein Fehler des Ausgabeplugins auszuschließen?

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!