Installation eines VDR+Plugins nativ auf CoreELEC Boxen

  • rell: you made my day :)


    mit softhddevice-drm funktionieren die Untertitel. Danke!


    Bei Verwendung von softhddevice-drm-gles erscheint übrigens beim VDR-Start die Konsolenmeldung:


    Zitat

    Check2pos: cannot set atomic mode (22): Invalid argument

    Check2pos: don't use zops change

    Ich weiß jetzt nicht, ob das mit softhddevice-drm-gles zusammenhängt, aber vielleicht hilft es dir ja beim untersuchen...

  • Hängt zusammen, macht aber nichts. Muss mal bei mir mit Untertitel testen. Hatte ich noch nie aktiv.

  • Napfkarl Habe ein paar Änderungen eingecheckt https://github.com/rellla/vdr-plugin-softhddevice-drm

    Wenn die neue Version in VDR*ELEC übernommen wird, sollten jetzt auch die Untertitel funktionieren.

  • Hi Zusammen,


    ich habe es auf einem ODroid N2+ laufen und es läuft wirklich super ... das einzige, woran ich noch scheitere, ist das Zurückswitchen von Kodi auf VDR über die Fernbedienung. Ich habe folgende beiden Keycodes im Einsatz

    Code
    0xb70 = "KEY_NUMERIC_1"
    0xb71 = "KEY_NUMERIC_2"

    Über den ersten Key switche ich von VDR zu Kodi, nur das Zurückswitchen klappt nicht (außer über den "VDR" Eintrag im Power-Menü).


    Ich vermute, ich muss eine Datei unterhalb von ~/.kodi/userdata/keymaps anlegen:

    Code
    <keymap>
      <global>
        <remote>
          <KEY_NUMERIC_2>System.Exec("/usr/local/bin/switch_to_vdr.sh")</KEY_NUMERIC_2>
        </remote>
      </global>
    </keymap>

    Aber es kommt immer die Meldung

    Code
    ERROR <general>: Remote Translator: Can't find button key_numeric_2

    im Logfile. Was mache ich falsch?


    Tausend Dank schon mal für eure Hilfe ... Kodi-Configuration ist einfach nicht so meins :/


    EDIT: Ok, ich war scheinbar schon sehr nah dran, ich musste nur "two" anstelle von "KEY_NUMERIC_2" nehmen ... jetzt geht's:


    Code
    <keymap>
      <global>
        <remote>
          <two>System.Exec("/usr/local/bin/switch_to_vdr.sh")</two>
        </remote>
      </global>
    </keymap>

    Einmal editiert, zuletzt von Space ()

  • ich habe von softhddevice-drm auf softhddevice-drm-gles umgestellt und es funktioniert jetzt gut mit den Untertiteln.

    Allerdings ist ein neues Phänomen aufgetaucht: es wird kein MPEG2 dekodiert, d.h. bei den kostenfreien Privaten (die ich selten anschaue) habe ich nur Ton, aber kein Bild.

    Im Log ist zu sehen:

    und so weiter..


    Ich bin einigermaßen ratlos.

  • Seid ihr hier nicht etwas off Topic.

    Wohl ja :) Das wäre was für einen der softhddevice-drm Threads.

  • Hi Zabrimus,

    ich habe vor ein paar Wochen nochmal ein Build für CoreELEC-19 auf dem Odroid N2 gebaut und beim Starten des VDR diesen Fehler bekommen:


    Code
    Mai 16 18:47:55 CoreELEC vdr[5014]: [5014] loading plugin: /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3
    Mai 16 18:47:55 CoreELEC vdr[5014]: [5014] ERROR: /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3: undefined symbol: pcre2_regcomp
    Mai 16 18:47:55 CoreELEC vdr[5014]: [5014] deleting plugin: skinnopacity
    Mai 16 18:47:55 CoreELEC vdr[5014]: [5014] deleting plugin: satip
    Mai 16 18:47:55 CoreELEC vdr[5014]: [5014] deleting plugin: softhdodroid
    Mai 16 18:47:55 CoreELEC vdr[5014]: VideoExit
    Mai 16 18:47:57 CoreELEC vdr[5014]: [5014] exiting, exit code 2
    Mai 16 18:47:57 CoreELEC systemd[1]: vdropt.service: Main process exited, code=exited, status=2/INVALIDARGUMENT

    Ich hab's heute nochmal probiert, leider noch der gleiche Fehler.

    Hast Du eine Idee, was da schief läuft?


    PS Mit dieser Version klappt es noch : 19.5-Matrix_devel_20230312215727


    Schöne Grüße

    Lothar

  • ich habe vor ein paar Wochen nochmal ein Build für CoreELEC-19 auf dem Odroid N2 gebaut und beim Starten des VDR diesen Fehler bekommen:

    Das passt zeitlich. Ich habe im epgsearch Package die Abhängigkeit von pcre auf pcre2 geändert. Aber irgendwas muss da noch schief gehen. Ich habe das wieder geändert auf pcre.


    Wenn du selbst kompilierst, kannst du es ja probieren:

    In der Datei

    VDRSternELEC/packages/vdr/_vdr-plugin-epgsearch/package.mk

    die Abhängigkeit von pcre2 auf pcre ändern:

    PKG_DEPENDS_TARGET="toolchain _vdr pcre vdr-helper"

    Oder bis zum Wochenende warten und das prebuild Binary testen.

  • Habe gestern bei LE epgsearch aktiviert, da tritt der Fehler nicht auf.

    LotharE Hast du selbst gebaut?

  • Hallo Zabrimus,

    ich habe deine letzte Änderung aus dem git abgerufen und neu gebaut.

    Leider bekomme ich immer noch den Fehler:


    Code
    Mai 17 16:26:00 CoreELEC vdr[4441]: [4441] loading plugin: /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3
    Mai 17 16:26:00 CoreELEC vdr[4441]: [4441] ERROR: /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3: undefined symbol: pcre2_regcomp


    Kann es sein, dass das plugin nicht neu gebaut wird, da sich an den Sourcen ja nichts geändert hat?


    Schöne Grüße

    Lothar

  • Wenn die package.mk geändert wird, löst das normalerweise einen neuen build aus.


    Du kannst trotzdem mit ./clean-package.sh mal pcre, pcre2 und _vdr-plugin-epgsearch löschen und dann neu bauen.

    Einzeln bauen kannst du, wenn du "-package ..." an deinen ./build.sh Befehl anhängst.


    Evtl. kannst du versuchen, in die PKG_DEPENDS_CONIG Zeile pcre bzw. pcre2 hinzuzufügen, aber das müsste pkg-config eigentlich alleine finden.


    Gruß

    Andreas

  • ... Und dann kannst du an der Konsole mal schauen (evtl. mit | more), was der build von epgsearch so spricht...

  • Hi,


    ich habe obiges clean-package ausgeführt und dann gebaut, leider keine Änderung.


    Im build-log von epgsearch find ich das:

    Code
    Build _vdr-plugin-epgsearch
    ESC[1;36mUNPACKESC[0m      _vdr-plugin-epgsearch
    ESC[1;33mBUILDESC[0m      _vdr-plugin-epgsearch ESC[1;37m(target)ESC[0m
        ESC[1;35mTOOLCHAINESC[0m      make (auto-detect)
        ESC[1;35mPKG_CONFIG_PATHESC[0m      /home/lothar/VDRSternELEC/CoreELEC/build.CoreELEC-Amlogic-ng.arm-19/install_pkg/_vdr-2.6.4/usr/local/lib/pkgconfig
    Executing (target): make 
    CC afuzzy.o
    /home/lothar/VDRSternELEC/CoreELEC/build.CoreELEC-Amlogic-ng.arm-19/toolchain/bin/armv8a-libreelec-linux-gnueabihf-g++ -march=armv8-a+crc -mtune=cortex-a53 -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated -mfloat-abi=hard -mfpu=neon-fp-armv8 -Wall -pipe  -O2 -fomit-frame-pointer  -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DSENDMAIL='"/usr/sbin/sendmail"' -DHAVE_PCRE2POSIX -DPLUGIN_NAME_I18N='"epgsearch"'  -o afuzzy.o afuzzy.c

    Dort wird mit -DHAVE_PCRE2POSIX pcre2 angefordert.

    Dazu diese Stelle im Makefile


    Code
        ifeq (exists, $(shell $(PKG_CONFIG) libpcre2-posix && echo exists))
            REGEXLIB = pcre2
        else ifeq (exists, $(shell $(PKG_CONFIG) libpcre && echo exists))
            REGEXLIB = pcre
        else ifeq (exists, $(shell $(PKG_CONFIG) tre && echo exists))
            REGEXLIB = tre
        endif

    Wenn pcre2 installiert ist, dann wird sie auch beim Compilieren genommen.

    Einen direkten Verweis finde ich im plugin nicht, wird wohl dynamisch nachgeladen.

    Code
    CoreELEC:~ # ldd /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3
            /usr/lib/libarmmem-v7l.so (0xf739c000)
            libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xf7217000)
            libm.so.6 => /usr/lib/libm.so.6 (0xf71ae000)
            libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xf7181000)
            libc.so.6 => /usr/lib/libc.so.6 (0xf7042000)
            /usr/lib/ld-linux-armhf.so.3 (0xf7495000)


    Und das wären die Kandidaten:

    Merkwürdig das ganze :/

  • Die libs finde ich bei mir auf LE12 gar nicht in /usr/lib...

  • Ich bin aktuell überfragt. Hast du mal ganz frisch gebaut?

  • Ich bin da auch gerade überfragt. Ich habe das Plugin auf meiner Kiste (CE-19) mal aktiviert. Die Version habe ich erst gestern neu gebaut und installiert und alles startet ohne Probleme.

    Code
    Mai 18 08:42:30 odroid1 vdr[4531]: [4531] loading plugin: /usr/local/lib/vdr/libvdr-epgsearch.so.2.6.3
    Mai 18 08:42:30 odroid1 vdr[4531]: [4531] initializing plugin: epgsearch (2.4.2): Suche im EPG nach Wiederholungen und anderem
    Mai 18 08:42:31 odroid1 vdr[4531]: [4531] starting plugin: epgsearch
    Mai 18 08:42:31 odroid1 vdr[4531]: [4531] loading /storage/.config/vdropt/plugins/epgsearch/epgsearchmenu.conf
    Mai 18 08:42:31 odroid1 vdr[4531]: [4551] EPGSearch: conflictcheck thread started (pid=4531, tid=4551, prio=high)
    Mai 18 08:42:46 odroid1 vdr[4531]: [4551] EPGSearch: timer conflict check started
    Mai 18 08:42:46 odroid1 vdr[4531]: [4551] EPGSearch: timer conflict check finished


  • wie muss ich denn vorgehen, um den CE-Kernel (und möglichst nur den Kernel) mit einem eigenen Patch neu zu bauen? Den Patch habe ich in VDRSternELEC/CoreELEC/packages/linux/patches/default/ abgelegt.


    ./build.sh -config CoreELEC-20-ng -package linux bringt dann innerhalb von Sekunden diese Ausgabe:


    Mein schöner Patch wird entfernt und ist weg! ;(

    Aber ich habe noch ein backup :)


    Kompiliert wurde der Kernel auch nicht. Wo muss ich den Patch denn ablegen, damit er berücksichtigt wird, und was ist zu tun, damit nicht nur ein Build 'behauptet' wird (so interpretiere ich die letzte Zeile), sondern auch durchgeführt wird?

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Ich würde sagen, nach

    package_patches/CoreELEC/projects/Amlogic-ce/packages/linux/patches/default


    In die build Verzeichnisse darfst du gar nichts kopieren, das wird alles zurückgesetzt.

    package_patches/CoreELEC/* wird vor dem build 1:1 nach CoreELEC/* kopiert, d.h., wenn du die Original-Verzeichnisstruktur abbildest, landet der Patch da, wo du ihn haben willst.

    Der amlogic Kernel liegt außerdem imho nicht in /CoreELEC/packages/linux/ sondern in CoreELEC/projects/Amlogic-ce/packages/linux

    Mit dem build Parameter "-package linux" kannst du das Paket einzeln bauen lassen.

    Einmal editiert, zuletzt von rell ()

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!