streamdev bleibt hängen

  • Hi,


    ich verwende für client und server das HEAD des master branches von hier: https://github.com/ciminus/vdr-plugin-streamdev.git und auf Client sowie Server VDR 2.4.0


    Mein Problem ist das es ab und zu beim Zappen hängen bleibt (scharzes Bild) in der Situaltion hilft dann außer den Server VDR neu zu Starten nichts. Ein Restart des Client VDR oder weiter zappen hat keinen Effekt. Das tritt so im Schnitt 1-2 Mal pro TV Abend auf.


    Client log:

    Code
    1. Oct 3 13:13:19 vdr vdr: audio/alsa: using pass-through device 'default'
    2. Oct 3 13:13:19 vdr vdr: audio/alsa: start delay 400ms
    3. Oct 3 13:13:19 vdr vdr: [1293] switching to channel 2 S19.2E-1-1011-11110 (ZDF HD)
    4. Oct 3 13:13:20 vdr vdr: [2916] cStreamDevice::GetTSPacket: GetChecked: NOTHING (0)
    5. Oct 3 13:13:20 vdr vdr: [2917] device 4 TS buffer thread ended (pid=1293, tid=2917)
    6. Oct 3 13:13:20 vdr vdr: [2916] buffer stats: 0 (0%) used
    7. Oct 3 13:13:20 vdr vdr: [2916] device 4 receiver thread ended (pid=1293, tid=2916)
    8. Oct 3 13:13:20 vdr vdr: [2936] device 4 receiver thread started (pid=1293, tid=2936, prio=high)
    9. Oct 3 13:13:20 vdr vdr: [2937] device 4 TS buffer thread started (pid=1293, tid=2937, prio=high)
    10. Oct 3 13:13:20 vdr vdr: [2940] animator thread thread started (pid=1293, tid=2940, prio=high)

    Server log

    Habt Ihr eine Idee was da klemmt?


    Danke und viele Grüße

    Jörg

  • Den letzten Commit in dem Repository für den Client würde ich aber mitnehmen, ohne gibt es gerne mal Hänger wenn man Aufnahmen abspielt: https://github.com/ciminus/vdr…811bb5e7e227890dbdfc04ad5

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • ja hab ich genau so gemacht, hab nur mauell die eine Änderung zurpück genommen.

    Code
    1. transform.c:1675:24: error: invalid conversion from 'void*' to 'uint8_t*' {aka 'unsigned char*'} [-fpermissive]
    2. if ( !(p->buf = malloc(size)) ){


    das ist neu, ggf wegen neuerer Compiler Version, hab ich erstmal so behoben:

    Code
    1. if ( !(p->buf = (uint8_t*)malloc(size)) ){

    läuft damit erstmal wieder, bin gespannt!

  • die 'zurückgenommene' Änderung sollte doch nichts mit der zap Geschwindigkeit zu tun haben, oder?

    Wenigstens hab ich das Gefühl das er jetzt eine ganze Ecke langsamer umschaltet.

  • gestern Abend lief es damit schon mal durch :thumbup:


    ... inzwischen drei Abende :) so lange hat es vorher noch nie geklappt.

    Vielleicht sollte die Änderung auch im git zurück genommen werden?

    The post was edited 1 time, last by horchi ().

  • Moin,


    der Effekt ist nun seit Mittwoch Abend zwei Mal aufgetreten, einmal Samstag und einmal Sonntag Abend. Damit schon mal sehr viel besser als vorher. Hoffe dass es kein Zufall ist.


    Ihr habt das Problem gar nicht, oder?


    Grüße

    Jörg

  • Hallo zusammen,


    bin hier leider noch keinen Schritt weiter, hst noch jemand eine Idee wie ich das Problem einkreisen könnte. Es passiert nach wie vor mache TV Abende 2-3 Mal dann wieder mal 1-2 tage gar nicht.


    Immer den Server VDR durchstarten zu müssen ist auf Dauer keine Lösung, ich würde aber auch gern vermeiden in den Client wieder DVB Karte(n) einbauen zu müssen.


    Danke und Grüße
    Jörg

    The post was edited 1 time, last by horchi ().

  • Hier nochmal der genaue SW Stand des Plugins wie ich es Client und Server seitig verwende:

    Code
    1. root@gate {master u=} ~/PLUGINS/vdr-plugin-streamdev> git remote -v
    2. origin https://github.com/ciminus/vdr-plugin-streamdev.git (fetch)
    3. origin https://github.com/ciminus/vdr-plugin-streamdev.git (push)


    das habe ich zu diesem Stand noch geändert (aus euren Hinweisen oben):



    ohne diese Änderungen klemmt es deutlich öfter.

  • ich möchte den Thread nochmal aufwärmen da ich nach wie vor mit dem oben beschriebenen Problem kämpfe.


    Hier nochmal meine aktuelle streamdev-server Konfiguration:


    hier die geladenen Plugins und Optionen:


    Plugin Version:

    Code
    1. root@gate {master u=} ~/PLUGINS/vdr-plugin-streamdev> git remote -v
    2. origin https://github.com/ciminus/vdr-plugin-streamdev.git (fetch)
    3. origin https://github.com/ciminus/vdr-plugin-streamdev.git (push)



    Patch:



    Beim Start bekomme ich immer diese Meldung obwohl keine Aufnahme läuft:


    Danke und Grüße

    Jörg

  • Hallo Jörg,


    den Effekt kenne ich auch (zwischen vdr 1 und 4 aus meiner Liste). Passiert bei mir immer dann, wenn man zu schnell zappt....


    Gruß Micha

  • Dann bin ich damit ja doch nicht alleine - habe mich schon gewundert.
    In der Situation musst du den VDR mit dem streamdev-server durch starten damit es wieder funktioniert?


    Bei mir passiert das BTW hin und wieder auch wenn ich nur einmal zappe.

  • Ja, genau, nur den Server neu durchstarten hilft, damit es wieder läuft...

  • leider gibt das Log nichts her, auch mit debug nicht sonst könnte man sich den Code mal anschauen

  • Ja, genau, nur den Server neu durchstarten hilft, damit es wieder läuft...

    Reicht es, den VDR neu zu starten oder liegt's möglicherweise auch an DVB-Karte/Treiber? (Power-cycling bzw. rmmod/insmod nötig?) Ich betreibe selbst ein "etwas umfangreicheres" Setup mit mehreren DVB-S Streaming-Servern und wenn mehrere Server gleichzeitig mit jeweils 8 Tunerports nach Neustart anfangen alle Transponder zu tunen dann steigt dabei schon mal der Multiswitch aus. Das führt dann dazu, daß gar kein Tuner mehr einen neuen Stream bekommt und nur Power-cycling des (Kathrein-) Multiswitches diese Blockade wieder auflöst. Könnte natürlich sein, daß bei weniger Tunern ein Reset der DVB-Karte dieses Lock-up evtl. auch schon auflöst. Ein Problem beim Switch/ LNB könnt ihr vermutlich aber ausschließen, oder? Schon mal ausprobiert? Nicht, daß es deshalb nichts verdächtiges logt weil im Bereich VDR/ Streamdev Server gar nichts schief läuft sondern schon vorher!? ;)

  • Ich verwende DVB-S2 Max S8.


    Bei mir genügt ein Neustarten des VDR Prozesses. Wenn das Streamen nicht funktioniert kann ich über minisatip und entspr. Clients weiter schauen (z.B. am iPad). minisatip verwendet auch einen Teil der Tuner des Max S8. Des Server-VDR kann in der Situation auch weiter Aufnehmen.

  • Alles, was bis zum Zeitpunkt des "aussteigens" bereits getuned hat liefert bei mir im Fehlerfall jeweils auch weiterhin valide Daten, nur neue Tuning-Aufträge nimmt der SAT-Multiswitch in dem Fall dann gar nicht mehr an und die Tuningversuche laufen dann ins leere.

  • beim streamdev Client nützt bei mir auch ein zurück schalten auf den letzten funktionierenden Sender nichts. In dem Fall kann ich zappen wie ich will da geht bis zum Neustart des Server VDR nichts mehr. Per satip kann ich in der Situation mit anderen Clients weiter zappen wie ich will, da gehen alle Sender

  • OK, die SAT-Hardware scheidet also definitiv aus, wie sieht's mit der Tunerkarte aus? Entlädst du den Treiber für die DVB-Karte und lädst ihn neu bzw. rebootest den ganzen DVB-Rechner, oder bleibt der weiterhin aktiv und du startest nur die VDR-Software?