[ANNOUNCE] xmltv4VDR 0.4.3 - 0.4.7

  • Nachdem ich Ende 2018 xmltv2vdr ausprobiert hatte und das bei mir nicht stabil lief, hatte ich angefangen darin einiges zu verbessern. Da das aber nach und nach so viele Änderungen am Code und auch am Konzept waren, habe ich mich irgendwann entschlossen ein neues Plugin daraus zu machen und es xmltv4VDR zu nennen.


    Das Plugin xmltv4VDR dient dazu, die vorhandenen EPG-Informationen der Sender mit Bildern und zusätzlichen Informationen im xmltv-Format aus externen Quellen anzureichern.

    Das bedeutet auch, dass keine Events hinzugefügt werden sondern nur vorhandene ergänzt werden.


    Die Schnittstelle zum Einlesen der externen xmltv-Infos ist gegenüber xmltv2vdr unverändert geblieben, so dass vorhandene Skripte und Verfahren weiter benutzt werden können. Für tvsp2xmltv sind einige Patches dabei, um es auf die aktuellen Gegebenheiten anzupassen.


    Zusätzlich können Episoden-Infos von http://www.eplists.de den Events hinzugefügt werden. Die Episodenfiles werden in einem Verzeichnis erwartet (müssen also via Skript geholt werden) und werden vor jedem externen EPG-Update in die Episoden-DB eingelesen.

    Weitere Details im README.

    Features:

    • epgsources Schnittstelle ist gegenüber xmltv2vdr unverändert, d.h. vorhandene Plugins zum Holen der EPG-Infos können weiter verwendet werden
    • alle externen Infos (EPG und Episode Files) werden im UTF8-Format verarbeitet
    • Serien-Infos von http://www.eplists.de werden optional hinzugefügt
    • Serien-Infos werden zusätzlich im XML-Format ins AUX-Feld des EPG Events geschrieben zum einfachen Auslesen durch andere Plugins oder mit Tools (z.B. svdrpsend LSTE)
    • selektive Änderung des EPG: es kann für jede EPG-Komponente ausgewählt werden, für welche Sendungsart die externe Info übernommen werden soll:
      • keine
      • nur Filme
      • nur Serien
      • nur Filme & Serien
      • alle


    Sowohl die Zuordnung der externen Events als auch der Serieninfos aus eplists zu den VDR-Events ist abhängig von der Qualität der Daten, d.h. wenn Title und Shorttext einer Sendung (Event) zu sehr abweichen, dann ist keine Zuordnung mehr möglich und somit keine 100-prozentige Trefferquote erreichbar.

    Downloadseite: https://github.com/FireFlyVDR/vdr-plugin-xmltv4vdr

    aktuelle Version: 0.4.3-Beta

    FireFly

  • Sorry, nicht böse sein, aber langsam verliere ich etwas den Überblick.

    Was ist denn nun der Unterschied zwischen tvscraper, scraper2vdr und jetzt xmltv4vdr, bzw. wann sollte/wollte man welches verwenden?

    VDR zwei drei
    • VDR 01 (Server): 2.7.2 4 x TT Budget S2-3200
      Plugins: [channellists - control - epgsearch - live - markad - streamdev-server - tvscraper]
    • VDR 02 (Client): 2.6.9 1 x TT Premium S2-6400 (HDMI an TV), 1 x softhddevice (HDMI an TV); TV Grundig 40 VLE 8160 SL; TFT-Display Origen AE 16T
      Plugins: [channellists - control - dvbhddevice - epgsync - graphtftng - mpv - osd2web - osdteletext - skinnopacity - softhddevice - streamdev-client - svdrpservice]
  • FireFly

    Abgesehen von den Warnungen, erhalte ich beim compile einen Fehler:

  • Sorry, nicht böse sein, aber langsam verliere ich etwas den Überblick.

    Was ist denn nun der Unterschied zwischen tvscraper, scraper2vdr und jetzt xmltv4vdr

    Da bin ich Dir gar nicht böse, das ist eine gute Frage, die ich aber auch nicht vollständig beantworten kann.

    • xmltv4vdr bekommt die Daten von externen EPG-Anbietern und kann die EPG-Einträge selektiv (Filme/Serien/alle) anreichern
    • "TVScraper uses the thetvdb.com API for collecting series metadata and
      themoviedb.org API for movies." (von https://github.com/MarkusEh/vdr-plugin-tvscraper)
    • scraper2vdr setzt meines Wissens auf EPGD, das zwischen mehreren VDRs geshared werden kann und bietet zusätzlich noch einen Webserver (was für meine Zwecke aber zu monströs wäre) (RE: scraper2vdr howto ?)

    Bitte ergänzen bzw. berichtigen!

    Zabrimus: Schaue ich mir an. Welchen Compiler nutzt Du? Mein gcc 7.5.0 meldet nämlich nichts....

  • Schaue ich mir an. Welchen Compiler nutzt Du? Mein gcc 7.5.0 meldet nämlich nichts....

    Das ist der Fluch aktueller Versionen. LibreELEC und CoreELEC lassen da nichts anbrennen und manchmal nervt das etwas.

    Aktuell nutzt CoreELEC die Version

    Code
    PKG_VERSION="14.1.0"

    des gcc.

  • Das ist der Fluch aktueller Versionen. LibreELEC und CoreELEC lassen da nichts anbrennen und manchmal nervt das etwas.

    Aktuell nutzt CoreELEC die Version

    Code
    PKG_VERSION="14.1.0"

    des gcc.

    also bei mir kompiliert es wenn ich folgendes ändere

    Code
    sed -i -e 's|xmlErrorPtr xmlErr = xmlGetLastError();|const xmlError* xmlErr = xmlGetLastError();|' source.cpp

    Gruß MartinKG

    Fedora 41 kernel-6.12.7-200.fc41.x86_64 Gnome Desktop vdr 2.6.9 mit vdr-softhddevice plugin.

    ViewSonic VX3276 HDMI-1 <------------> HDMI NVidia Geforce-gt-1030

    ViewSonic VX3276 HDMI-2 <------------> HDMI Technotrend S2-6400

  • FireFly

    Super. Es gibt nur noch eine Warnung, aber der Rest kompiliert sauber durch. Danke.

    Code
    maps.cpp: In member function 'cString cEPGMapping::ToString()':
    maps.cpp:108:44: warning: format '%lX' expects argument of type 'long unsigned int', but argument 3 has type 'uint64_t' {aka 'long long unsigned int'} [-Wformat=]
      108 |    cString text = cString::sprintf("%s;0x%lX", epgSource ? epgSource->SourceName() : "NULL", flags);
          |                                          ~~^                                                 ~~~~~
          |                                            |                                                 |
          |                                            long unsigned int                                 uint64_t {aka long long unsigned int}
          |                                          %llX
    m


    Wenn ich bei meinen eigenen Sachen nur auch so kritisch wäre....

  • Da bin ich Dir gar nicht böse, das ist eine gute Frage, die ich aber auch nicht vollständig beantworten kann.

    • xmltv4vdr bekommt die Daten von externen EPG-Anbietern und kann die EPG-Einträge selektiv (Filme/Serien/alle) anreichern
    • "TVScraper uses the thetvdb.com API for collecting series metadata and
      themoviedb.org API for movies." (von https://github.com/MarkusEh/vdr-plugin-tvscraper)
    • scraper2vdr setzt meines Wissens auf EPGD, das zwischen mehreren VDRs geshared werden kann und bietet zusätzlich noch einen Webserver (was für meine Zwecke aber zu monströs wäre) (RE: scraper2vdr howto ?)

    Bitte ergänzen bzw. berichtigen!

    TVScraper kann auch Daten von externen Anbietern holen und macht das in seinem "example" Plugin auch für TVSP. Das Ergebnis reichert eben auch das EPG an. TVScraper arbeitet irgendwie direkt mit live zusammen.

    scraper2vdr gehört zu EPGD, bin aber nicht sicher, ob EPGD notwendig ist.

    Was wäre denn ein externer EPG-Anbieter, von dem xmltv4vdr Daten bekommen könnte? epgdata gips nicht mehr, tvm ist nun ja so eine Art Schmuddelkind - was bleibt?

    VDR zwei drei
    • VDR 01 (Server): 2.7.2 4 x TT Budget S2-3200
      Plugins: [channellists - control - epgsearch - live - markad - streamdev-server - tvscraper]
    • VDR 02 (Client): 2.6.9 1 x TT Premium S2-6400 (HDMI an TV), 1 x softhddevice (HDMI an TV); TV Grundig 40 VLE 8160 SL; TFT-Display Origen AE 16T
      Plugins: [channellists - control - dvbhddevice - epgsync - graphtftng - mpv - osd2web - osdteletext - skinnopacity - softhddevice - streamdev-client - svdrpservice]
  • tvm ist nun ja so eine Art Schmuddelkind - was bleibt?

    Ich nutze tvsp und tvm und bin eigentlich recht zufrieden (gemischt mit Sender-EPG). Was ist "schmuddelig" an tvm (außer, dass es wohl kaum Echtzeitaktualisierungen gibt, zB jetzt bei Trump-Attentat)?

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 21 - xstream
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Ich nutze tvsp und tvm und bin eigentlich recht zufrieden (gemischt mit Sender-EPG). Was ist "schmuddelig" an tvm (außer, dass es wohl kaum Echtzeitaktualisierungen gibt, zB jetzt bei Trump-Attentat)?

    Ich "dachte", die Nutzung von tvm wäre eher nicht so wirklich legal?

    VDR zwei drei
    • VDR 01 (Server): 2.7.2 4 x TT Budget S2-3200
      Plugins: [channellists - control - epgsearch - live - markad - streamdev-server - tvscraper]
    • VDR 02 (Client): 2.6.9 1 x TT Premium S2-6400 (HDMI an TV), 1 x softhddevice (HDMI an TV); TV Grundig 40 VLE 8160 SL; TFT-Display Origen AE 16T
      Plugins: [channellists - control - dvbhddevice - epgsync - graphtftng - mpv - osd2web - osdteletext - skinnopacity - softhddevice - streamdev-client - svdrpservice]
  • Ahhhhh .... DAS meintest du mit schmuddelig, sorry! :wand

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 21 - xstream
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Neue Version 0.4.5-Beta, neue Features:

    • holt (optional) die Episodeninfos direkt vom eplists-Server
    • Kann jetzt auch die DVB-Events um externe Events erweitern wenn die exterene EPG-Info weiter reicht oder nur externe Events benutzen
    • Abhängigkeit vom MainThreadHook() beseitigt
    • Jede Menge Code Cleanup, Bugfixes und Optimierungen

    Da sich die Datenbankstruktur geändert hat wird die vorhandene DB neu erzeugt, so dass sich direkt nach dem Installieren dieser Version ein Import der externen EPG-Daten empfiehlt.

    Pro externem Kanal kann jetzt eingestellt werden, dass :

    • nur das DVB-EPG mit Infos angereichert wird (wie bisher)
    • die externen EPG-Infos an das DVB-EPG angehängt werden wenn das externe EPG weiter in die Zukunft reicht als das DVB-EPG oder
    • nur die externen EPG-Infos in den VDR importiert werden und das DVB-EPG ignoriert wird (falls vorhanden)

    Downloadseite: https://github.com/FireFlyVDR/vdr-plugin-xmltv4vdr

    aktuelle Version: 0.4.5-Beta

    FireFly

  • FireFly December 15, 2024 at 3:36 PM

    Changed the title of the thread from “[ANNOUNCE] xmltv4VDR” to “[ANNOUNCE] xmltv4VDR 0.4.3 - 0.4.5 Beta”.
  • Ich würde gerne mal dieses Plugin-xmltv4vdr testen, da ich mit dem anderen Plugin-xmltv2vdr nicht so ganz glücklich bin, da ich damit u.a. keine EPG-Images bekomme. Siehe hier in dem Thread: [vdr-plugin-xmltv2vdr] Benötige Hilfe für die Konfiguration vom xmltv2vdr-Plugin

    Im GitHub steht als Anforderung für dieses Plugin:

    Code
    Requirements:
    -------------
    VDR 2.4.5+
    libsqlite3
    libxml2

    Ist denn das libsqlite3 und das libxml2 schon beim VDR bzw. explizit bei yaVDR mit dabei, oder müsste ich da noch etwas zusätzlich installieren?


    Eine Frage an seahawk1986 : Besteht die Möglichkeit das Plugin mit in yavdr (vdr-2.7.3) aufzunehmen?

    Wäre super wenn das gehen sollte. ;)

    meine aktuelle Hard- und Software

    Heimkino: . . . . . . . AVR Denon AVR-X4800H . . . MiniLED-UHD-TV SONY BRAVIA XR-75X95L. . . Universal-FB: Sofabaton U2
    VDR-Hardware: . . Grafik MSI GT1030, Quad-DVB-C/T2 TBS-6205, Quad-DVB-S2/S2X TBS-6904SE

    VDR-Software: . . . yaVDR-ansible-noble - Kernel 6.08.0 - VDR-2.7.x - nvidia-550
    VDR-Client 1+ Media-Player: . . . Odroid N2 . 4GB mit VDR*ELEC Kodi-21.x + VDR-2.7.x_@Zabrimus
    VDR-Client 2+ Media-Player: . . . Dune HD Homatics Box R4K Plus . 4GB mit Kodi-21.x + VDR-2.7.x_@Zabrimus

  • Du brauchst für Bauabhängigkeite immer die Entwicklungspakete - also libsqlite3-dev und libxml2-dev.

    Ich schaue mal, was es braucht, um das in ein Paket zu bringen.

    Meine VDRs

    VDR 1: Point of View Ion-330-1, 2x Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, Ubuntu 18.04 (yavdr-ansible)
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 18.04 (yavdr-ansible), VDR 2.4.1, CIR-Empfänger
    Client 1: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.8
    vdr-epg-daemon auf Cubietruck mit 32 GB SSD, Arch Linux ARM

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Inzwischen hat sich herausgestellt, dass für Debian (und evtl. Derivate) noch ein Patch notwendig ist:

  • Paulaner ein Paket für Ubuntu 24.04 wartet nur noch auf die Veröffentlichung: https://launchpad.net/~seahawk1986-h…g-archive-extra

    Meine VDRs

    VDR 1: Point of View Ion-330-1, 2x Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, Ubuntu 18.04 (yavdr-ansible)
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 18.04 (yavdr-ansible), VDR 2.4.1, CIR-Empfänger
    Client 1: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.8
    vdr-epg-daemon auf Cubietruck mit 32 GB SSD, Arch Linux ARM

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich habe das Plugin mal installiert und soweit auch konfiguriert.

    Beim Installieren habe ich festgestellt, das es einen Schreibfehler gibt.

    Die Datei: /usr/share/vdr/command-hooks/commands.xmltv2vdr-rebuild-db.conf müsste doch

    m.M. nach /usr/share/vdr/command-hooks/commands.xmltv4vdr-rebuild-db.conf benannt sein. Oder?

    Nach dem Konfigurieren habe ich dann im Setup des Plugins-xmltv4vdr das Starte Import (Rote Taste) ausgeführt und es gab Restart des VDR.

    Im syslog gibt es einen SEGFAULT:

    :(

    meine aktuelle Hard- und Software

    Heimkino: . . . . . . . AVR Denon AVR-X4800H . . . MiniLED-UHD-TV SONY BRAVIA XR-75X95L. . . Universal-FB: Sofabaton U2
    VDR-Hardware: . . Grafik MSI GT1030, Quad-DVB-C/T2 TBS-6205, Quad-DVB-S2/S2X TBS-6904SE

    VDR-Software: . . . yaVDR-ansible-noble - Kernel 6.08.0 - VDR-2.7.x - nvidia-550
    VDR-Client 1+ Media-Player: . . . Odroid N2 . 4GB mit VDR*ELEC Kodi-21.x + VDR-2.7.x_@Zabrimus
    VDR-Client 2+ Media-Player: . . . Dune HD Homatics Box R4K Plus . 4GB mit Kodi-21.x + VDR-2.7.x_@Zabrimus

  • Die Datei: /usr/share/vdr/command-hooks/commands.xmltv2vdr-rebuild-db.conf müsste doch

    m.M. nach /usr/share/vdr/command-hooks/commands.xmltv4vdr-rebuild-db.conf benannt sein. Oder?

    seahawk1986: Die Dateinamen sagen mir nichts, die kommen aus dem yavdr-Paket, oder? Was macht das Skript? Die DB wird vom Plugin angelegt (Schreibrechte vorausgesetzt)

    Paulaner: Zu dem Fehler warte ich noch auf den Test eines Patches. Du hast sehr wahrscheinlich dem externen Kanal keinen VDR-Kanal zugeordnet. Das muss im Menü für den externen Kanal gemacht werden (wo man auswählt, welche Infos wie Beschreibung, Darsteller, Regie etc übernommen werden sollen) und zwar in der zweiten auswählbaren Zeile unter "EPG Quellkanalzuordnungen". Da müsstest Du mit der grünen Taste (hinzufügen) (mindestens) einen Kanal auswählen damit das EPG auch bei diesem ankommt, oder auch mehrere wie bei "ZDF" und "ZDF HD".

    Wie könnte man es deutlicher machen, dass dort ein Eintrag notwendig ist?

Participate now!

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