Posts by Joe_D

    Libre/CoreELEC bietet als Unterbau und Buildsystem halt ein paar Vorteile, weil praktisch (fast) alles, was für multimedia notwendig ist, schon dabei ist

    Das ist aber bei Hardkernel/Odroid ja auch schon bei deren Kernel 4.9 so (komplette Hardwareunterstützung inkl. Multimedia). Zusätzlich mit einem etwas angestaubten 22er Ubuntu.. wo ist da der Vorteil der ELEC-Umgebung? Außer das Kodi dabei ist?

    Nachteil: Alter Kernel

    Also kann man im Endeffekt auch einfach das Hardkernel Image nehmen, die haben sich irgendwie (auch beim N2) auf den abgelaufenen Kernel 4.9 "eingeschossen" :(

    Bei den Amlogic-Boxen gibts einmal ein Kernel vom Hersteller und dann nie wieder (Sicherheits-) Updates dafür, d.h. man bleibt jahrelang bei diesem Kernel. Bei einem x86-System kann man immer Updates einspielen..

    Kann ich bestätigen. Ich bin leidlicher Besitzer eines Odroid-C4 (genau den S905X3 den Dr. Seltsam so gelobt hat) mit eingebautem IR-Empfänger der derzeit mit einem "uralt" Kernel 5.4.x läuft.
    Das Image ist dann auch nicht von HardKernel (Hersteller der Odroids) sondern von irgendeinem Dritten.
    Bei Hardkernel ist man bei Kernel 4.9.277 "LTS" stehengeblieben dessen Support letztes Jahr auslief.

    Wenn so ein Kistchen als Server laufen soll ist es überhaupt kein Problem einen Mainline-Kernel drauf laufen zu lassen.
    Für einen Server braucht es halt außer Netzwerk und USB/SATA nix.

    Aber als Wohnzimmer-Client empfinde ich die Dinger eigentlich als mittlere Katastrophe. Außer den sparsamen Stromverbrauch, der ist Spitze!

    Mein Odroid-C4 z.B. sollte:

    • Mit Fernbedienung einschaltbar sein (nicht geschafft - ich verwende eine RC6 Fernbedienung und der Standard ist NEC, die Umstellung scheitert schon daran das bei neueren Kernelumgebungen alles rund um uboot, boot.ini und dergleichen komplett geändert hat aber bei Hardkernel natürlich nur der obsolete 4.9.277 Mist beschrieben ist... im dümmsten Fall braucht es dann ein Update des Bootloaders .. und da werkeln wohl nur die "Eingeweihten" dran rum...)
    • Mit Tastendruck einschaltbar sein (per GPIO geschafft, Belegung war aber im neuen Kernel "anders" als in der Doku beschrieben, musste ich per Try-and-Error rausfinden)
    • Über Netzwerk einschaltbar sein (nicht geschafft - es steht alles auf on, aber scheinbar ist wieder eine streng geheime uboot-Einstellung oder Wechsel auf petitboot notwendig oder ich muss wieder jemand im Odroid-Forum anbetteln :rolleyes: - scheinbar auch wieder eine Bootloader-Sache)
    • Per RTC-Modul einschalten (geschafft, aber erst mit Hilfe aus dem Odroid-Forum inkl. Update des Bootloaders, damit I2C "wieder" richtig funktioniert .. ist wohl mit Kerneln > 5.x "kaputt")
    • Eingebaute Aufnahmefestplatte per GPIO an- und abschalten (geschafft)
    • Videobeschleunigung ohne X unterstützen (keine Ahnung, ich verwende xineliboutput-fbfe .. Auslastung bei HD hoch aber noch "akzeptabel")

    Bin jetzt ganz froh das mein plain VDR mit vtuner-ng inkl. Aufnahme-Platte komplett auf/mit dem Kistchen läuft, ganz ohne Kodi- und (Libre)Elec-"Kram" der heutzutage ja so beliebt zu sein scheint (siehe oben)... :/ Am Kernel werde ich wohl nie wieder was ändern =O


    Das nächste Mal schaue ich auch nach so einem Intel NUC :/

    Ist mir bei meiner Kiste die bislang nur SD konnte Anfang Dezember auch aufgefallen. Die EPG-Anzeige im vdr sowohl bei epgsearch als auch beim vdr direkt ist "falsch", d.h. trotz vieler einzelner EPG-Einträge innerhalb der gleichen Zeit wurde nur der "sie sehen diesen Kanal noch in SD ..." angezeigt. War extrem nervig und nicht WAF-kompatibel :| Da hab' ich kurzerhand in xmltv2vdr was reingemurkst um die Einträge löschen zu lassen. 8)

    Mitte Dezember hab' ich dann die alte SD-Kiste verschrottet und auch mal auf HD "zwangs"-umgestellt :whistling:

    • Wie macht ihr das sonst, um die plugins in euer git Repo zu holen? In eigene Verzeichnisse parallel zum vdr holen und dann ins PLUGINS/src Verzeichnis linken z.B.?

    Also ich hole mir die Plugins aus dem git und kopiere die derzeit noch um. Aber nicht ins PLUGINS/src, sondern ich baue dann debian-Pakete. Dafür liegt in jedem Plugin noch ein debian-Verzeichnis mit drin, das ich mir irgendwoher kopiert habe.
    Eventuell könnte ich mir das umkopieren sparen und einfach direkt mit dem git clone arbeiten und das debian-Verzeichnis lokal ignorieren...

    Was meinst Du mit Quelle? Soll das die xmltv-Datei sein?

    Na das Script oder Programm das von xmltv2vdr als Quelle bezeichnet wird. Das kann die xmltv Datei sein, wenn diese wohlgeformt ist (meistens eher nicht) oder eben ein Script oder Programm das die Quell-xmltv-Datei etwas anpasst.

    In der xmltv-Datei sind ja die Bilder zu innerhalb jeden EPG-Event als URL enthalten.
    Wie das dann mit dem VDR + Skin sich verhält weiß ich eben nicht.

    Eben ganz anders :) Je nach Skin werde Bilder angezeigt oder nicht. Ich z.B. verwende den ST-TNG Console Skin der keine Bilder anzeigt. Deshalb ja auch die Möglichkeit, der Quelle mitzuteilen nix mit Bildern zu "machen". Wenn Skins Bilder anzeigen werden diese in irgendwelchen Verzeichnissen gesucht. Also nix mit Url. Bedeutet aber auch das alle Bilder erstmal heruntergeladen werden müssen. Das xmltv2vdr Plugin sorgt dann dafür das die Bildernamen in z.B. <channelID>_<eventID>_*.jpg umbenannt werden, damit der Skin sie finden kann. Auch hier wieder, die EventID läuft einem immer wieder über den Weg ;)

    Und eigentlich nur wenn eine Aufnahme erfolgt sollte dann das EPG-Image heruntergeladen und in das Aufnahmeverzeichnis kopiert werden, damit es auch später noch verfügbar ist.

    Siehe oben, heruntergeladen werden müsste es von der Quelle immer. Das Umkopieren ins Aufnahmeverzeichnis macht xmltv2vdr derzeit noch nicht. Weil ich auch selbst nix mit Bilder mache. Das normale DVB-EPG bietet keine Bilder - und die extra von irgendwoher laden?

    Habe auch nochmal in die xmltv-Datei geschaut, da habe ich aber nur <icon> - Abschnitte gesehen und keinen einzeigen <image> :/
    P.S.: Achso, wenn <icon> in <programme> vorkommt ist es ein Bildchen von der Sendung... da hab' ich mich von dem komischen Namen <icon> verwirren lassen, obwohl <image> auch definiert wurde... ha.. xmltv... halt... <X

    Irgendwann später gibt es dann die richtigen EPG-Daten vom IPTV-Provider und die sollte man eben über die sozusagen "Platzhalter-EPG-Daten" drüber schreiben können.

    Ich hab mir mal die Events nochmal angeschaut:

    Code
    <programme start="20240716040000 +0000" stop="20240716070000 +0000" channel="dazn_fast_de">
    <icon src="https://ondemo.tmsimg.com/assets/p514472_st_h10_az.jpg?w=1280&amp;h=720"></icon>
    <title lang="de">Wird noch angesagt</title>
    <desc lang="de">FSK 12 Das Programm wird noch bekannt gegeben.</desc>
    <rating system="FSK"><value>12</value></rating>
    </programme>

    Woher soll das xmltv-Plugin wissen das es sich nicht um "richtige" Events handelt? Leider definiert das schwache xmltv-Format nichtmal sowas || Von eine EventID hat es auch noch nie was gehört <X
    Wenn Kodi das also kann, dann IMHO nur über irgendwelche "Tricks". Eventuell haut Kodi alle Einträge weg bevor importiert wird.

    Beim vdr unterlasse ich so Späße, denn Timer hängen an Events und die an ihren EventIDs. Deshalb versuche ich ja auch die Events anhand der EventID zu suchen und zu ergänzen/ändern.

    Müsste doch möglich sein die Temp-Events einfach mit einem Quell-Script zu filtern und dem xmltv2vdr-Plugin nur "richtige" anzubieten. Zum Beispiel mit einem python-Script. Natürlich kann man auch bei jedem Einlesen zuerst das komplette Kanal-EPG weghauen und komplett neu machen lassen ..

    Bilder herunterladen = Ja

    Kann den Eintrag in "Quelle soll Bilder herunterladen" ändern. Dann passt es besser. Der Hintergrund dazu war eben bei "freien Quellen" mit Bildern deren Traffic nicht im Übermaß zu strapazieren. Das auf der einen Seite die Quelle dafür sorgt das xmltv-Dateien irgendwo landen aber dann das Plugin dafür sorgen soll das Bilder irgendwo anders landen macht für mich gar keinen Sinn. Die Quelle stellt alle Daten bereit, das Plugin importiert. Für die Anzeige von Bildern in den Skins gibt es einen "vdr"-Standard, ansonsten könnte ein Skin ja direkt mit einer Url die Bilder direkt laden.. so müsste das z.B. Kodi machen...

    Ich merke schon, dass das was ich mir so mit dem xmltv2vdr-Plugin vorgestellt hatte, sich wohl so nicht realisieren lässt.

    Eigentlich schon. Deine Quelle sollte halt so Quatscheinträge wie "Wird noch angesagt" ignorieren. Und die Bilder müssten sich mit curl auch herunterladen lassen. Zwischen xmltv-Rohformat und xmltv2vdr-Format ist immer irgendwie eine Anpassung notwendig. Und wenn es nur die Kanalnamen sind, damit man bei mehreren Quellen einfach im OSD eine Zuweisung über mehrere Quellen machen kann. Ansonsten wird der komplexe Code noch unübersichtlicher und man konfiguriert sich zu Tode. Ist ja jetzt schon eine Aufgabe ;)

    Früher hab' ich ja die epgdata2xmltv-Quelle geschrieben (liegt noch im dist rum), die hat ein zip inkl. Bilder heruntergeladen. Danach die gelieferten epgdata xml-Dateien mit einem relativ komplizierten xls ins xmltv2vdr-Format gewandelt. Da waren auch nutzbare EventIDs dabei..

    Man kann nur EPG-Daten in eine "leere" Datenbank importieren

    Ist das wirklich so? Dann wäre das ja ein Bug!

    Ich baue mein xmltv2vdr-Plugin ja bezüglich MainThreadHook() um, d.h entferne diesen. Aufgefallen ist mir nun das ich bei mir auch noch ein Housekeeping() drinhabe. Ist zwar nur das Anstarten eines weiteren Threads, aber auch den werde ich dann im gleichen Aufwasch zusammen mit dem Plugin-Code aus dem ehemaligen MainThreadHook() bündeln...

    Nach Prüfung im vdr-Code wird aber auch Housekeeping() ebenso synchron wie MainThreadHook aufgerufen und kann den ganzen vdr aus dem Takt bringen wenn ich da dämliche Sachen reinprogrammiere.

    kls Sollte der dann nicht genauso auf "deprecated" gesetzt werden?

    Doesn't work for me:

    Code
    femon.c: In member function ‘virtual cOsdObject* cPluginFemon::MainMenuAction()’:
    femon.c:124:24: error: no matching function for call to ‘cControl::Control()’
      124 |   if (cControl::Control() || (Channels->Count() <= 0))
          |       ~~~~~~~~~~~~~~~~~^~
    In file included from /usr/include/vdr/dvbplayer.h:13,
                     from /usr/include/vdr/menu.h:17,
                     from femon.c:9:
    /usr/include/vdr/player.h:129:20: note: candidate: ‘static cControl* cControl::Control(cMutexLock&, bool)’
      129 |   static cControl *Control(cMutexLock &MutexLock, bool Hidden = false);
          |                    ^~~~~~~

    Latest vdr-plugin-femon 2.4.0-5 from:

    I made a source code change in osd.c and Makefile to compile correctly ...

    Unpack archive and replace osd.c source with this osd.c

    Edit the " Makefile " and change in line #119

    removing " -lrepfunc " at the end of the line

    Your second link contains only a debian-section and not the latest plugin. Your third link is the original source from rofafor???
    What and where is your osd.c change?

    Can you provide the complete sourcecode with changes for the femon plugin? github?

    Does anybody know where the latest working 2.7.3 femon sourcecode is? Without external helper libraries?

    This one is 5 years old: https://github.com/rofafor/vdr-plugin-femon/tree/master

    Kannst Du mal sagen, woher die versionen kommen, von denen du ausgegangen bist, also URLs dafuer ?

    Also vtuner-ng ist einfach ein Fork von https://github.com/redblue-pkt/vtuner.driver

    Die Referenz auf satip von Mc.Fishdish kann sogar hier im Forum gefunden werden: SAT>IP und VDR mit vtuner/satip-client

    Original war es unter https://code.google.com/archive/p/satip/ abgelegt, als Kopie habe ich es von hier: https://github.com/BackupGGCode/satip

    Sorry für die späte Antwort...

    Ich habe in den letzten Tagen noch etwas rumprobiert, aber das xmltv2vdr-Plugin kann vermutlich keine bereits vorhandenen EPG-Daten

    in der /var/cache/vdr/epg.data wieder überschreiben.

    Welche Event-IDs werden denn in epg.data abgelegt? Wenn es nämlich keine vom EPG-Provider sind werden die vom Plugin selbst generiert aus der Startzeit (und der Länge? - weiss ich schon nicht mehr so genau). Müsste ich nochmals genauer anschauen.

    Aber da ich immer nur die Variante "mischen" verwende habe ich das noch nicht so genau geprüft.

    Bei EIT hängt alles an der Kanal-eindeutigen Event-ID. Damit kann dann alles geändert werden. Beim "mischen" suche ich die Event-ID vom EIT-Event und verknüpfe den dann mit der Event-ID der externen Quelle.

    Das Verzeichnis /var/cache/vdr/epgimages was ich manuell mit bem Besitzer vdr:vdr 755 angelegt hatte ist allerdings immer noch leer und damit gibt es keine EPG-Images. Im syslog gibt es auch keinerlei Einträge/Meldungen dazu! :(

    Die EPG-Images musst Du selbst anhand der Urls herunterladen und in /var/cache/vdr/epgimages ablegen. xmltv2vdr liest nur die gelieferten Daten in den vdr ein.

    Hab mal testweise auf Transponder 11493 gefundene VPids und die ersten dazugehörigen APids an meinen satip-Server gesendet. Heraus kommt ein Stream mit Das Erste HD (5101+5102), Arte HD (5111+5112) und SWR-BW HD (5121+5122):

    Kann der Satip keine 2 Videostreams abliefern und müsste der VDR hier 2 devices nutzen ?

    Bitte nicht so kompliziert denken. vtuner-ng ist nur ein Proxy. Das satip Programm zudem sein Gehilfe. Der VDR sagt dem vtuner-ng Device nur auf welchen Transponder er schalten soll und bekommt dann eine Anzahl Pids - bislang bis zu 30, jetzt bis zu 128. vtuner-ng leitet die Anfragen einfach an das satip (oder irgendein anderes Programm) weiter. Wenn ich z.B. ohne vdr vtuner-ng mit satip auf einen Transponder schalten würde und 10 Video-Pids und 10 Audio-Pids angebe und der dahinterliegende Sat>IP-Server kann das liefern dann würde ich 10 Videostreams gleichzeitig empfangen. Die einzige Beschränkung ist die Anzahl Pids und was ein dahinterliegender Sat>IP-Server liefern kann..

    Wie ist das denn beim satip plugin ?

    Na wenn ich das verwenden würde, gäb es kein vtuner-ng 8)

    Aber ich habe mal bei minisatip nachgesehen da sind 128 Pids pro Tuner möglich. Ich denke da sollte der vtuner-ng auch hin.

    Hab' ich jetzt mal so gepushed...