Beiträge von kfb77

    horchi

    Ich habe hier mal einen Vorschlag, wie man das Makefile flexibler für die auf dem System vorhandene Python Version machen könnte:

    Mich wundert gerade, dass da überhaupt was weggeschrieben wird.

    Die VPS Daten werden von mir gespeichert, um eine zusätzliche Datenquelle für Start/Stop der Sendung zu haben. Die Erfahrung zeigt aber, dass die VPS Events bei weiten nicht immer stimmen, also übernehme ich die nur, wenn ich in der Aufnahme keine bessere Kriterien (Logo, Audio Channels, ...) finde.


    Das Kriterium für das Speichern der Daten ist, dass markad eine gültige VPS Sequenz erkannt hat, also:

    Code
    not running -> starts in a few seconds (-> ggf. "pausing") -> running -> not running

    Meine VPS Event Überwachung wird vom VDR über die Funktion cStatusMarkAd::Recording gestartet, die vom VDR beim Start und Ende der Aufnahme aufgerufen wird. Eine gültige, vollständige Squenz bekomme ich somit nur, wenn die Aufnahme rechtzeitig vor Start der Sendung (ca. > 1 Min) gestartet wird (also keine VPS Aufnahme und Timer Vorlauf min. 1 Min)

    Bei einer Aufnahme mit VPS werde ich ja erst zusammen mit dem "running" Event aufgerufen und habe damit bereits einen Teil der VPS Sequenz verpasst, somit aus markad Sicht auf jeden Fall nicht gültig.

    Das bedeutet für dich: Wenn VPSTIME=YES darf eigentlich kein START/STOP drin stehen. Wenn doch, hat der Sender falsche Events gesendet, die dann mit der unvollständigen Sicht zufällig eine gültige Sequenz ergeben haben. Die Werte sind dann aber auf jeden Fall falsch.

    In dem Fall (VPS Timer) kannst du die korrekten Daten aus dem Timestamp des Aufnahmeverzeichnisses (Start der Aufnahme) sowie der Länge der Aufnahme aus dem Info File holen. Mach ich in markad auch so, siehe hier.

    Gibt es auch HW Versionen mit Temperatur Sensor aber ohne Drehzahlsensor am Lüfter, oder fehlt das Feature noch ? Ich meine (bin mir aber nicht sicher) die alte Version hatte hier was angezeigt.

    Code
    System Informationen
    Temperatur    42 °C
    Lüfterdrehzahl    0 RPM

    Die Version 3.1.1 ist auf vdr-plugin-markad verfügbar.

    Das erste Bugfix Release enthält eine Fehlerbehebung beim Ermitteln der Marken über die Anzahl der Tonkanälen, den ich leider bei den Tests der 3.1.0 übersehen habe.

    Code
    2023-01-09: Version 3.1.1
    - fix unintentionally deletion of channel stop mark
    - some minor bug fixes and optimizations, see git

    Wie war denn das alte Format? Hat da einfach die 1. Zeile gefehlt?

    Ja, aber sicherer ist trotzdem, <key>=<value> zu nutzen und nicht die Zeile hart kodieren.


    Ich vermute mal, mit den Informationen im alten Format war es nicht möglich, herauszufinden, ob der Timer tatsächlich VPS nutzte (?). Sonst hättest Du ja die 1. Zeile nicht ergänzt ...

    Ja, ich hatte festgestellt, dass ich die Info in markad auch brauche (Aufnahme vom User zu spät gestartet und somit unvollständig oder berechtigt durch VPS später gestartet ?) und darum eingeführt.

    Ich wünsche euch allen einen guten Rutsch ins neue Jahr.

    Es gibt noch die letzte Version für das alte Jahr:

    Die Version 3.1.0 ist auf vdr-plugin-markad verfügbar. Seit langem mal wieder ein Feature Release. Vielen Dank an wirbel für seine Anpassungen um markad auch unter Windows zum Laufen zu bekommen.

    Code
    - new feature: compilable under Windows with MinGW-w64 (written by wirbel@vdr-portal)
    - new feature: optimize channel start mark with near blackscreen
    - optimize search for undetected info logo before end mark
    - some minor bug fixes and optimizations, see git

    Kannst du für cppcheck inline suppresssions aktivieren?

    Ja, ist jetzt drin, geht dann auch fehlerfrei mit Ubuntu 22.04.

    Aber mit Ubuntu 20.04 kommt der Fehler trotzdem weiterhin:

    Code
    cppcheck --enable=all --inline-suppr --suppress=missingIncludeSystem --suppress=unusedFunction:plugin/markad.cpp --suppress=unusedFunction:plugin/status.cpp -DLIBAVCODEC_VERSION_INT=3763044 -DDEBUGMEM=1 --error-exitcode=1 . > /dev/null
    command/win32/localtime_r.cpp:17:13: portability: Assigning a pointer to an integer is not portable. [AssignmentAddressToInteger]
      errno_t r = localtime_s(buf, timer); // cppcheck-suppress AssignmentAddressToInteger
                ^
    make: *** [Makefile:76: cppcheck] Fehler 1

    Zum selber testen: Der Aufruf kommt aus dem Makefile mit "make cppcheck"


    Edit: Bei der Version von cppcheck aus Ubuntu 20.04 muss das cppcheck-suppress in einer eigenen Zeile davor stehen.