Erweiterte Version des Plugins Mlist

  • Ich nutze schon seit Ewigkeiten das Plugin mlist von jowi24 – danke dafür! Mich hat in letzter Zeit vermehrt gestört, dass dass man in den Messages nicht Scrollen bzw. seitenweise Blättern kann und die Message-Liste beim VDR-Shutdown mit den Countdown-Messages zugemüllt wird.

    Die beigefügte erweiterte Version des Plugins erlaubt:

    • die Darstellung von Nachrichten mit ihrem Zeitstempel in einer Zeile (mehr Nachrichten pro Bildschirmseite)
    • das Scrollen bzw. Blättern in den aufgezeichneten Messages (Dank an kls für die Hilfe bei der Fehlerbehebung)
    • die Filterung unerwünschter Messages auf Basis regulärer Ausdrücke, bspw. "VDR wird .*abgeschaltet" (Dank an die Autoren bzw. Maintainer von epgsearch für die RegEx-Vorlage)

    Das "historische" Makefile habe ich zwar per Trockenübung angepasst, aber mangels passender Umgebung nicht getestet. Die Übersetzungen der neuen Strings für französisch, italienisch und türkisch hat der Google-Übersetzer beigesteuert.

    jowi24 , vielleicht magst du die Änderungen in dein Git-Repository übernehmen?

    Danke & viel Spaß

    Stefan

    Files

    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.4 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Ich habe meinen aktuellen Stand von mlist als Version 1.1.0 in GitHub gepusht.

    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.4 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Ich habe meinen aktuellen Stand von mlist als Version 1.1.0 in GitHub gepusht.

    Code
    #vdr-plugin-mlist# make
    CC mlist.o
    g++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DHAVE_PCRE2POSIX -DPLUGIN_NAME_I18N='"mlist"' -I mlist.c
    g++: fatal error: no input files
    compilation terminated.
    make: *** [Makefile:121: mlist.o] Fehler 1

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

  • Das wundert mich, weil das Makefile und der Build so ist wie bei allen anderen Plugins auch. Aber der Reihe nach:

    Im Makefile wird das Verzeichnis für die VDR-Include-Files aus der vdr.pc extrahiert:

    Code
    INCLUDES += -I$(call PKGCFG,incdir)

    Dort sollte sich eine Zeile finden wie:

    C++
    incdir=/usr/local/vdr/include

    Bei dir fehlt diese Angabe beim Aufruf des Compilers, denn dort findet sich nur -I mlist.c statt (mit dem Pfad aus dem obigen Beispiel) -I/usr/local/vdr/include mlist.c; der Pfad für die Include-Files mag bei dir ein anderer sein. Wegen des fehlenden Include-Pfades wird mlist.c als Include-Pfad interpretiert und nicht als die zu übersetzende Datei, die dann natürlich zu fehlen scheint.

    Damit die Kompilierung funktioniert, muss dieser Makro im Makefile:

    Code
    PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell $(PKG_CONFIG) --variable=$(1) vdr || $(PKG_CONFIG) --variable=$(1) ../../../vdr.pc))

    … per $(call PKGCFG,incdir) das Verzeichnis liefern. Wenn beim Aufruf von make ein VDRDIR nicht manuell in der Kommandozeile übergeben wird (womit im Makro dann der Teil nach dem ersten Komma relevant wäre), dann muss testhalber folgendes funktionieren:

    Code
    [BASH 2002] pkg-config --variable=incdir vdr
    /usr/local/vdr/include

    Andernfalls ist die vdr.pc nicht korrekt im System registriert. Das kannst du folgendermaßen überprüfen:

    Code
    [BASH 2007] pkg-config --list-all | grep VDR
    vdr                            VDR - Video Disk Recorder

    Kannst du dem bei dir bitte mal nachgehen?

    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.4 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • danke für die schnelle Hilfe

    es war dieser Fehler das in der vdr.pc diese Zeile fehlte

    incdir=/usr/local/vdr/include

    jetzt geht es

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

  • Ich gehe davon aus, dass du nicht nur einfach mein Beispiel kopiert hast, sondern incdir auf das Verzeichnis gesetzt hast, wo auf deinem System die VDR-Include-Files hinterlegt sind. ;)

    Weil ich als Selbstbauer einen nicht-standardkonforme, dafür aber sehr flexible Verzeichnisstruktur nutze, kann ich leider nicht sagen, wo sie "üblicherweise" liegen sollten.

    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.4 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Wozu eigentlich

    INCLUDES += -I$(call PKGCFG,incdir)

    anstelle von

    INCLUDES +=

    Im Makefile was newplugin erzeugt, ist das so nicht drin.

    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 gehe davon aus, dass du nicht nur einfach mein Beispiel kopiert hast, sondern incdir auf das Verzeichnis gesetzt hast, wo auf deinem System die VDR-Include-Files hinterlegt sind. ;)

    Weil ich als Selbstbauer einen nicht-standardkonforme, dafür aber sehr flexible Verzeichnisstruktur nutze, kann ich leider nicht sagen, wo sie "üblicherweise" liegen sollten.

    natürlich so wie wir das in unserem Image verwenden

    Code
    # pkg-config --variable=incdir vdr
    /usr/include/vdr

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

Participate now!

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