[VDR*ELEC] LibreELEC/AMLGX (arm) Probleme/Diskussion

  • Hoffe es ist bis zum Stillstand was zu erkennen.

    Ich sehe, dass dynamite das log vollballert, aber ich habe keine Ahnung, was das bedeutet. Am Ende ist der alsa ringbuffer leer, das plugin startet eine Schleife neu und wartet auf das Startsignal, was nicht kommen kann, weil es im andere Thread nicht getriggert wird. Lange Rede kurzer Sinn, warum es zu dem ring buffer empty kommt, weiß ich (noch) nicht, aber dass danach gar nichts mehr geht, darf nicht sein. Das schaue ich mir an.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Ich sehe, dass dynamite das log vollballert, aber ich habe keine Ahnung, was das bedeutet.

    Das hatte ich mal hier hinterfragt.

    Dynamite orientiert sich am Loglevel des VDR. Muss das mal zurück auf log=1 setzen.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Wenn es zu den genannten Abstürzen kommt, läuft am Ende die Storage Partition komplett voll :(

    Da hilft ein: rm ~/.cache/cores/*

    Aber eventl. sollte dieser Pfad besser auf eine RAM Disk zeigen? Das ein komplett volllaufen nicht passieren kann...
    Ok, noch besser wäre die Ursache zu finde und abzustellen.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Da sind die core dumps drin und da kannst du ein backtrace abfragen. D.h.

    gdb /usr/local/bin/vdr *.core

    Und dann bt full, dann posten.

    Mit der vorhanden systemd service startet vdr immer neu und schreibt core mit dumps voll. Das ist schlecht.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Ok, hatte die core dumps auf einem nfs share geparkt. Aber nicht komplett...

    ist daran was zu erkennen?

    Besser auf ein erneute core dumps warten...

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Der richtige Aufruf wäre:

    Code
    gdb /usr/local/bin/vdr /pfad/zum/core/dump

    Aber um wirklich was zu sehen, muss vdr bzw. das plugin, das den core dump auslöst (softhddevice-drm-gles?) mit debug symbolen gebaut sein. D.h. wenn du selber baust muss ein DEBUG=_vdr,_vdr-plugin-softhddevice-drm-gles vorne dran stehen.

    Das kann ein segfault oder gewollter abort sein.


    Wenn es zu den genannten Abstürzen kommt,

    Von welchen Abstürzen redest du hier? Was kommt da im Log? Wie kanns du das reproduzieren?

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Ok, es mit debug symbol bauen - probiere ich aus. Baue lokal in einer ubuntu vm...

    Von welchen Abstürzen redest du hier? Was kommt da im Log? Wie kanns du das reproduzieren?

    Habe das Gefühl das wir zwei Problemen auf der Spur sind:

    1. -> Mai 14 18:15:14 vdr1 vdr[1022]: [1122] tp 450 (18/51) read incomplete section - len = 3119, r = 1742

    2. -> Mai 16 18:40:51 vdr1 vdr[1018]: [1134] [softhddevice] AlsaPlayer: ring buffer empty Videopkts: 182
            Mai 16 18:41:02 vdr1 vdr[1018]: [1159] i/o throttle activated, count = 1 (tid=1159)
        Mai 16 18:41:05 vdr1 vdr[1018]: [1159] buffer usage: 70% (tid=1157)
        Mai 16 18:41:08 vdr1 vdr[1018]: [1159] buffer usage: 80% (tid=1157)
        Mai 16 18:41:10 vdr1 vdr[1018]: [1159] buffer usage: 90% (tid=1157)
        Mai 16 18:41:12 vdr1 vdr[1018]: [1159] buffer usage: 100% (tid=1157)

    Reproduzieren geht mit einfach laufen lassen und irgendwann steht alles, wenn ich Glück habe komme ich per ssh drauf und kann z.B. das oben gepostete Log ziehen.
    Es ist von vdr Start bis Stillstand.

    Bezüglich read incomplete section bin ich nicht sicher ob Helmut´s Patch es in den vdr geschafft hat? Bei mir sind 4x DVB Tuner dran... so wie ich das Verstehe "begünstigen" viele Tuner das Verhalten.

    Sehe zu das ich in der Woche das debug symbol setze und dann aussagekräftige bt liefern kann.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Den leeren ring buffer schaue ich mir an, das kann ich bei einem UHD Testsender reproduzieren.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Mit der vorhanden systemd service startet vdr immer neu und schreibt core mit dumps voll. Das ist schlecht.

    Wie lässt sich das besser umsetzen, hast Du dazu auch schon eine Idee? Wäre ein symlink in die RAM Disk praktikabel?
    LibreELEC Logt (per journalctl) ja glaube ich eh nur ab Start und speichert nix aus der Vergangenheit ab.
    Für bt ist das was anderes.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Du musst einfach den crash abfangen und vdr nicht mehr starten lassen.

    https://github.com/Zabrimus/VDRSt…ropt.service#L8

    Ich bin kein systemd profi, aber im service file kannst du das Verhalten einstellen. Ob oder evtl. wie oft ein Neustart versucht wird.

    Dann hast du im log den Stand ab beenden...

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Aber um wirklich was zu sehen, muss vdr bzw. das plugin, das den core dump auslöst (softhddevice-drm-gles?) mit debug symbolen gebaut sein. D.h. wenn du selber baust muss ein DEBUG=_vdr,_vdr-plugin-softhddevice-drm-gles vorne dran stehen.

    Möchte das jetzt umsetzen. Wo genau muss DEBUG=_vdr,_vdr-plugin-softhddevice-drm-gles vorne dran stehen?
    Muss dann sicher das build Verzeichnis kompletten leer machen und einmal komplett neu bauen.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Z.B. irgendwo im script

    https://github.com/Zabrimus/VDRSt…r/build.sh#L279

    oder es muss halt als Variable beim Bau gesetzt sein. Z.B. über ein export...

    Und nein, nix löschen. Einfach bauen.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

    Edited once, last by rell (May 24, 2025 at 5:04 PM).

  • Ok, habe es eingefügt:

    gebaut, Image herüber kopiert + installiert.

    Jetzt mal laufen lassen und Abstürze abwarten.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Schwierig.

    Vdr läuft mit MinUserInactivity = 0 (vdr setup.conf).

    Nach xx Stunden friert das TV Bild ein, System ist noch per ssh erreichbar, kein Coredump in ~/.cache/cores/ vorhanden, im Log kommt sporadisch:

    Code
    ...
    Mai 24 19:20:18 vdr1 vdr[994]: [1434] [softhddevice] invalid PES audio packet
    Mai 24 19:20:19 vdr1 vdr[994]: [1434] [softhddevice] invalid PES audio packet
    Mai 24 19:20:47 vdr1 vdr[994]: [1589] [softhddevice] invalid PES audio packet
    ...
    Mai 25 00:57:23 vdr1 vdr[994]: [14626] [softhddevice] invalid PES audio packet

    ist das verdächtig?

    Außerdem Richtung Ende:

    Code
    ...
    Mai 25 02:19:10 vdr1 kernel: em28xx 3-1.4:1.0: write to i2c device at 0xc8 failed with unknown error (status=3)

    Was wiederum ein neues Problem aufwirft. Da geht es um USB Schnittstelle Tuner. (Gleiches Problem im Web gefunden). Klar ohne DVB Signal steht das Bild.
    Erste Maßnahme war jetzt aktiven USB Hub auf USB2 Schnittstelle am RockPi 4 umzustecken.

    Wie sollte sich Vdr bei "weggezogenem" DVB Signal verhalten?

    Mal weiter beobachten.

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Ich würde nicht ausschließen, dass softhddevice-drm-gles Probleme bekommt, wenn das Signal abreißt o.ä.

    Wie schon gesagt gibt es ein Problem, wenn der alsa buffer leer läuft, das konnte ich im Normalbetrieb aber noch nie bei mir beobachten.

    Im Optimalfall sollte ein Umschalten auf einen Kanal den VDR wieder zurückbringen, aber ich vermute, das klappt nicht.

    Siehst du im Log irgendwo diese Zeile https://github.com/rellla/vdr-plu…audio.cpp#L1232 ohne dass im Anschluss irgendwann https://github.com/rellla/vdr-plu…audio.cpp#L1240 folgt? Das wäre das angesprochene Problem.

    Ansonsten hatte ich an einem früheren Rechner massive USB Probleme und die haben zu ständigen USB disconnects geführt, was dem VDR nicht gefallen hat. Das kann durchaus das Problem sein, dass sich VDR dann nicht da raus retten kann, ist evtl. nur die Folgen.

    Die PES Meldungen deuten auf ein falsches audio Paket hin. Sind aber unbedenklich, weil die Daten einfach übersprungen werden.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Siehst du im Log irgendwo diese Zeile https://github.com/rellla/vdr-plu…audio.cpp#L1232 ohne dass im Anschluss irgendwann https://github.com/rellla/vdr-plu…audio.cpp#L1240 folgt? Das wäre das angesprochene Problem.

    Hmm, da ich vdr log=1 gesetzt habe, würde das überhaupt im vdr Log auftauchen? Aktuell kommt keines von Beiden vor.

    Werde sehen ob ich diesen leeren alsa buffer irgendwie reproduziert bekomme.
    Und natürlich das USB Tuner Problem beseitigen.

    Am Ende führt beides zum beobachteten Stillstand. Ich schaue also weiter auf Logs...

    Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

  • Je nachdem welche plugin Version du hast, kannst du die loglevel im setup menu einstellen.

    Standard, Drm, codec, avsync und sound wären gut.

    Meine VDRs

    (SatIP Server) --- Kathrein Exip 418 ---

    (Server) --- HW: RPI5 --- SW: RPiOs, VDR 2.7.2 mit streamdev, satip/vtuner-ng, vdrmanager, live, epgsearch, markad ---

    (Client 1+2) --- HW: Radxa Rock 4 Plus - RK3399 --- SW: VDR*ELEC mit softhddevice-drm-gles ---

    (WIP) --- Tanix TX6, RPi5, RPi4, Odroid N2+, WetekPlay2 --- SW: VDR*ELEC mit softhddevice-drm-gles --

  • Klick für meine Hardware

    vdr1: Odroid HC4 4GB | VDR*ELEC CE12-ng 32GB microSD | Video: 4TB SATA Rec (XFS) + 8TB SATA Archiv (exFAT) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr2: Odroid N2+ 4GB | VDR*ELEC CE21-ng 64GB eMMC | Video USB: 512GB SATA Rec (XFS) | 2x WinTV dualHD (DVB-T2/DVB-C) | IR OnBoard
    vdr3: HP ProDesk 400 G3 SFF (i3) | NVidia Quadro T400 | 2x 8GB | System: Ubuntu 24.02 LTS, yavdr ansible (vdr 2.7.5) auf 30GB mSATA SSD | 1x WinTV dualHD | IRMP RP2040 Keyb
    TV: Philips 55OLED805

Participate now!

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