[VdrELEC] VDR für LibreELEC

  • Hallo zusammen,


    ich hatte zwar schon einen kleinen Austausch mit Zabrimus aber wollte hier kurz vorstellen, was ich vorhabe - auch wenn es noch nicht läuft.

    Aufgesetzt auf Zabrimus' CoreELEC fork habe ich begonnen, VDR in LibreELEC für (theoretisch) alle Systeme zu integrieren, die LibreELEC unterstützen.

    Vorerst mache ich das aber nur für Allwinner Boxen, da ich nichts anderes habe bzw. nutze. In der Theorie müsste es möglich sein, alle bzw. viele Geräte von Libre/CoreELEC zu unterstützen. Ganz nebenbei

    hätte man dann eine gemeinsame Buildumgebung und könnte wohl auch Kodi wegschalten, wenn man das will. Ich persönlich nutze es z.B. eh nicht.


    Aktueller Stand ist, dass LE auf meinem Allwinner H6 (Tanix TX6) in die Konsole bootet, aber VDR noch nicht startet. Der Branch ist ziemlich WIP und ich werde den solange rebasen, bis es mal läuft.

    Das ganze ist also vorerst nur eine Info, falls sich jemand mit einbringen möchte und liegt hier: https://github.com/rellla/LibreELEC.tv/tree/vdrelec-20-VDR


    Ich baue bisher manuell mit PROJECT=Allwinner ARCH=arm DEVICE=H6 VDR="yes" VDR_PREFIX="/usr/local" BUILD_SUFFIX="devel" DISTRO=VdrELEC make image wie es LibreELEC auch vorsieht, d.h. noch ohne die build scripte von Zabrimus.


    Mein Ziel wäre es, alles soweit lauffähig zu kriegen und am Ende vielleicht in einem gemeinsam Projekt zusammenzuführen...


    Gruß

    Andreas

  • Zabrimus

    Ich konnte das ganze ja bauen und meine SD-Karte bestücken. Dann habe ich aber etwas suchen müssen, wie es weitergeht, da ja die ganzen confs fehlen, falls ich nichts verkehrt gemacht habe. Ich habe es dann mit install.sh entsprechend hinbekommen.

    Ist das die richtige Vorgehensweise oder sollten die confs schon im Image enthalten sein? Deine Buildskripte machen ja eigentlich auch nichts anderes, als in den Branch zu wechseln und dann ein make image? Das Readme fand ich dahingehend nicht ganz eindeutig.


    Gruß

    Andreas


    PS: Danke nochmal für deine Arbeit :)

  • beta Bin mir nicht sicher, aber ich glaube nicht.In LibreELEC ist das für Allwinner noch nicht drin, soweit ich weiß.


    jojo61 Was meinst du mit Videotreiber? Als Ausgabedevice nutze ich mein softhddevice-drm, das basiert auf dem mainline drm Treiber, mesa und v4l2request für den Decoder.


    Gruß

    Andreas

  • Ich konnte das ganze ja bauen und meine SD-Karte bestücken. Dann habe ich aber etwas suchen müssen, wie es weitergeht, da ja die ganzen confs fehlen, falls ich nichts verkehrt gemacht habe. Ich habe es dann mit install.sh entsprechend hinbekommen.

    Ist das die richtige Vorgehensweise oder sollten die confs schon im Image enthalten sein? Deine Buildskripte machen ja eigentlich auch nichts anderes, als in den Branch zu wechseln und dann ein make image? Das Readme fand ich dahingehend nicht ganz eindeutig.

    Ich hätte gerne lieber die ganzen confs und alles was damit zusammenhängt direkt beim Image Brennen oder Update drin gehabt. Aber die Konfiguration sollen/müssen editierbar sein und da beginnt das Problem. Editierbar ist nur das Verzeichnis /storage und ich habe es zwar geschafft, alles im Image unterzubringen, allerdings wird dann beim Update oder Erstellen der SD das /storage komplett ignoriert. Ich denke, das liegt daran, daß /storage zu dem Zeitpunkt nicht gemounted ist und deshalb auch nichts geschrieben wird.

    Ich kam drauf, als ich eine neue SD erstellt hatte und Kodi beim allerersten Start erstmal das /storage vorbereitet und auch aus dem Image einige Daten in das /storage kopiert. Ich hätte mich da gerne irgendwie eingeklinkt für die VDR Daten, aber den Mechanismus habe ich noch nicht gefunden, wo man etwas ergänzen/erweitern könnte.


    Deshalb leider die manuelle Lösung mit dem install.sh. Alle Konfigurationen/Scripte/sonstige Files werden beim Build gesammelt und gezipped und per install.sh dann an den richtigen Ort verfrachtet.


    Das Build-Script dient auch nur dazu, die ganzen Parameter und die Kommandozeile nicht immer wieder neu eingeben zu müssen. Dazu hätte ich mir dann sowieso ein Script geschrieben. Also im Prinzip habe ich mein eigenes Script öffentlich verfügbar gemacht ;)

    So ist es (zumindest für mich) viel angenehmer und schneller. Auch die Auswahl der VDR Patches kann man damit steuern.

  • Danke für die Erklärung, sowas dachte ich mir schon. Für mich kein Problem, man muss es nur wissen ;) Im Prinzip ist das build script ja eine gute Sache.

    Wenn bei mir mal alles läuft, kann ich mir auch ansehen, wie LE das macht. Es muss ja bei so laufen, dass nach einem Update die persönlichen Einstellungen noch da sind...


    Gruß

    Andreas

  • Es muss ja bei so laufen, dass nach einem Update die persönlichen Einstellungen noch da sind...

    Das ist auch wichtig. Das install Script (-i) überschreibt maximal die systemctl Scripte in /storage/.config/system. Das /storage/.config/vdropt wird auch nur angelegt, wenn es vorher überhaupt nicht existiert. Ansonsten werden die Dateien nach /storage/.config/vdropt-sampleentpackt und man kann sich da kopieren, was man gerade braucht. Oder man nutzt den Parameter "-C" um die bestehende Konfiguration mit der neuen zu mergen.

    Wobei das auch hochtrabend klingt. Es wird nur der Bestand nach vdropt-sample kopiert und alles überschrieben und dann wieder zurück nach vdropt. Aber das braucht man mittlerweile tatsächlich nur ganz selten. Maximal bei neuen Plugins, aber die plugin.conf und evt. Scripte oder Html-Seiten oder was auch immer, kann man auch zu Fuß kopieren.

  • So, Zwischenstand: LibreELEC startet, kodi läuft - zumindest ins Hauptmenü, mehr habe ich noch nicht getestet. VDR startet auch, allerdings kommt noch kein Bild/OSD aber die Logs schauen gut aus.

    Ich bin da noch auf der Suche. Evtl. hängts mit dem Anlernen der Fernbedienung und/oder mit dem Ausgabeplugin zusammen, das komische Sachen macht, wenn VDR weder remote.conf noch TV-Bild hat...


    Gruß Andreas

  • Hallo zusammen,


    bräuchte evtl. Hilfe:


    Kodi startet. VDR startet auch, schaltet den Bildschirmmodus um, aber dann erscheint wieder die Konsole mit den stderr Logmeldungen (Monitormodus bleibt).

    Die VDR Logs schauen gut aus. Nach Beenden von VDR springt der Modus wieder zurück und es kann auch kodi wieder normal gestartet werden.


    Gibt es bei LibreELEC oder CoreELEC irgendwas Verstecktes, das hier framebuffer, drm planes oder die Konsole irgendwie blockiert oder überschreibt und verhindert, dass VDR darauf ausgeben kann?

    Wahrscheinlich liegt es am Ausgabeplugin, aber vielleicht fällt irgendjemand spontan was dazu ein, bevor ich da suche. Kmscube funktionier und hat die gleiche oder zumindest sehr ähnliche Herangehensweise an drm, gbm und GLES ....


    Danke und Gruß

    Andreas

  • Bin gerade über den debug-shell service von systemd gestolpert. Der ist bei Allwinner mit DEBUG_TTY=/dev/console eingestellt. Andere haben hier z.B. /dev/tty3 .

    Der service ist auch gestartet, was er bei meinem Standard Debian VDR nicht ist.

    Könnte das der Grund sein?


    Gruß

    Andreas