vdr-plugin-softhdodroid / vdr-plugin-easyvdr und Stop von VDR

  • Hallo,


    ich hatte erst softhdodroid im Verdacht, aber aktuell denke ich eher an das vdr-plugin-easyvdr.

    Folgende Situation: VDR (nur mit easyvdr, softhdodroid, satip) wird über systemd oder Console gestartet und läuft. Jedoch beim Stoppen sieht das Log so aus:

    systemd muss irgendwann nach einem Timeout härter durchgreifen um den VDR wirklich zu stoppen. Auf der Console muss ich auch zweimal ctrl+c drücken um wieder auf die Shell zu kommen.


    Starte ich den VDR jedoch auf konventionelle Art und Weise ohne easyvdr, dann beendet sich der VDR relativ schnell und das Log sieht anders aus. softhdodroid wird anscheinend auch dazu angehalten ein wenig mehr aufzuräumen um z.B. Threads zu beenden:

    Gibt es dazu eine Idee? Liege ich mit meinem Verdacht (easyvdr) überhaupt richtig?

    Die Idee hinter easyvdr finde ich ziemlich gut (auch gerade mit control) und würde es gerne beibehalten. Aber aktuell ist es einfach langweilig, auf den Timeout zu warten.


    Zabrimus

  • Ich fürchte ich lag falsch und richte mein Augenmerk wieder auf softhdodroid.


    In Plugin::stop() scheint nicht alles aufgeräumt zu werden und wird erst durch den timeout von systemd so richtig bereinigt.

    Meine Versuche sind bisher fruchtlos. Der angehängt Patch beseitigt zumindest einen Teil. Aber irgendwas läuft noch im Hintergrund.

    Zumindest deuten die Log-Ausgaben am Ende darauf hin:

    Code
    1. Apr 21 19:43:03 CoreELEC systemd[1]: Stopped VDR Client.
    2. Apr 21 19:43:03 CoreELEC kernel: fb: osd_release now.index=3,open_count=1
    3. Apr 21 19:43:03 CoreELEC kernel: fb: osd_release now.index=2,open_count=1
    4. Apr 21 19:43:03 CoreELEC kernel: fb: osd_release now.index=1,open_count=1
    5. Apr 21 19:43:03 CoreELEC kernel: fb: osd_release now.index=0,open_count=1

    plugin_stop.patch

  • Wenn ich mir das Log mit easyvdr anschaue dann sieht es so aus als ob der vdr nach dem Stop noch Videodaten an das plugin schickt.

    Das sieht mir nach einem Problem bei der Reihenfolge des Stops aus. Bei easyvdr wird der Stop an das Plugin ja vom easyvdr gemacht so wie ich das sehe.

    Dann darf der vdr auch keine Videodaten mehr schicken.


    Dein Patch stoppt zwar die Ausgabe etwas früher, aber ich denke das reicht nicht. Warum brauchst du denn easyvdr? Was machst du damit was ohne nicht geht ?

    Ich hatte das auch mal im Einsatz um den VDR in einen sleep Modus zu versetzen (Stop softhdodroid und satip mit laufendem VDR) aber das hat nicht geklappt und nun habe ich da eine andere Lösung gefunden ohne easyvdr.

  • Natürlich würde es ohne gehen.

    Aber ich finde die Konfiguration der zu startenden Plugins charmant und auch die Möglichkeit über console, einzelne Plugins starten und stoppen zu können.

    Gerade weil ich bei Vollausstattung (Starten aller Plugins) die Sender nicht mehr wechseln kann, weil VDR abstürzt. Ich denke, es kommt sich da einiges in die Quere, gerade in Richtung epg. Aber trotzdem .... ;)

  • Hmm, für mich liest es sich so, als ob ein Plugin nicht korrekt gestoppt und gelöscht wird.

    Aber ich kann mich täuschen - hier interagieren vdr selbst und verschiedene Plugins..



    Vielleicht hilft es, alle Plugins in deren ini file mit Stop=false zu konfigurieren, schauen, ob das Problem verschwindet und step by step einzelne Plugins wieder zu erlauben.

    Dort wo es dann noch hängt, sollte das Problem im Plugin sein. Dann sollte easyvdr nicht versuchen Plugins selbst zu stoppen..


    Code
    1. [EasyPluginManager]
    2. (...)
    3. Stop=false <-- hier