[live] [merged] Anzeige inaktiver Timer

  • Danke für die Erläuterung, so etwas hatte ich mir schon gedacht. Wenn man den VDR "normal" hochfährt, wird man – anders wie als ungeduldiger Tester – meist nicht während der Initialisierung gleich auf die Timer und deren Anzeigen zurückgreifen und somit diese Art von Problemen auch nicht sehen. Ich habe das gerade noch ein weiteres Mal bei hochgefahrenem VDR getestet und hatte auch hier wieder keinerlei Probleme. Somit gibt es also auch keinen Grund, den Patch zurückzuziehen… :)


    Trotzdem ist die Situation unbefriedigend, denn im besten Fall sollten Plugins erst dann mit ihrer eigentlichen Funktion loslegen, wenn der VDR selbst seine eigene Initialisierung vollständig abgeschlossen hat. Bezogen auf Live hieße das, dass das Web-Interface erst dann starten bzw. Anfragen entgegennehmen sollte, wenn alle Daten von Events und Timern konsistent vorliegen. Dass das Einlesen umfangreicher Video-Verzeichnisse dauern kann, wissen wir ja.


    Insofern wäre die Frage – vielleicht auch an kls –, ob es diesbezüglich nicht eine entsprechende Erweiterung des Startup-Protokolls für Plugins geben sollte. In vdr.c erfolgt der Aufruf der Plugin-Funktionen Intialize() und Start() schon bevor das Einlesen der Kanäle und Timer (Abschnitt "Timers and Recordings") durchgeführt wurde. Meines Erachtens sollte zumindest ein Flag oder besser noch eine neue Plugin-Funktion Ready() (oder so ähnlich) darüber Auskunft geben, ob der erste Durchlauf stattgefunden hat und Timer/Events vorliegen.


    Viele Grüße

    Stefan

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.7.2 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinenigmang, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Auch

    Quote

    video directory scanner thread ended

    sollte erfolgt sein, bevor live anfängt.

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.6x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Insofern wäre die Frage – vielleicht auch an kls –, ob es diesbezüglich nicht eine entsprechende Erweiterung des Startup-Protokolls für Plugins geben sollte.

    Man kann auch live bei der *.conf die 99 geben, dann startet der VDR dieses Plugin zuletzt

    Gruß utiltiy



    VDR Projects

  • Man kann auch live bei der *.conf die 99 geben, dann startet der VDR dieses Plugin zuletzt

    Hilft aber nicht.

    Erst werden alle Plugins gestartet, and danach die Zuordnung timer <-> events gemacht.

    Und "video directory scanner thread ended" kann noch länger dauern, wenn die HDs schlafen und dafür geweckt werden müssen

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.6x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Insofern wäre die Frage – vielleicht auch an kls –, ob es diesbezüglich nicht eine entsprechende Erweiterung des Startup-Protokolls für Plugins geben sollte.

    Warum sollte es für Plugins anders sein als für VDR selber?

    Wenn man VDR startet und sofort das Recordings-Menü öffnet, sieht man (je nach Anzahl der Aufnahmen und Geschwindigkeit des Rechners bzw. der Platte) auch nicht sofort alle Aufnahmen - es wächst nach und nach an. Sollte VDR also den Aufruf dieses Menüs blockieren, bis alles komplett eingelesen ist?

    Gleiches gilt für das Schedules-Menü, solange epg.data noch nicht vollständig eingelesen ist, besteht noch keine Zuordnung zwischen Timer und Event. Soll dieses Menü blockiert werden, bis alles vorliegt?

    Ich sehe ehrlich gesagt nicht, wo hier das Problem liegt.

  • Ich sehe ehrlich gesagt nicht, wo hier das Problem liegt.

    Hallo Klaus, vielen Dank für deine ausführliche Stellungnahme. Natürlich plädiere ich nicht dafür, die Abläufe zu verzögern. Schon gar nicht beim Einlesen der Aufzeichnungen, das durchaus mehr als eine Minute in Anspruch nehmen kann.


    Aber wenn ich den Sachverhalt richtig deute, scheint das Live-Plugin in einen – sag wir einmal: seltsamen – Zustand zu kommen, wenn man eine Funktion aufruft, welche die Zuordnung von Timern und Events benötigt, bevor diese Zuordnung vom VDR erfolgt ist. Was da genau im Code passiert, habe ich im Detail aber noch nicht untersucht. Vielleicht war es aber auch ja "nur" eine Race condition im Plugin…


    Dennoch fände ich es vorteilhaft, Plugins eine Möglichkeit zur Statusafrage zu geben, sodass diese im Bedarfsfall entsprechend agieren könnten.


    Viele Grüße

    Stefan

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.7.2 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinenigmang, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • shofmann

    Changed the title of the thread from “[live] Anzeige inaktiver Timer” to “[live] [merged] Anzeige inaktiver Timer”.

Participate now!

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