[markad] überarbeiteter Decoder

  • Hallo,

    ich habe mal versucht, den Decoder des markad plugin zu überarbeiten und an die aktuelle libav API anzupassen. Die angehängten Patches basieren auf den aktuellen git Stand (Quellen aus yavdr ansible geht auch, dann 00-markad-libavcodec58-V0-01.diff weg lassen, der ist da schon drin). Bitte in numerischer Reihenfolge anwenden.

    Bei direkter Verwendung des markad Befehls sind folgende Aufrufparameter notwendig:

    --astopoffs=0

    --cDecoder aktiviert den neuen Decoder, wird der Parameter weggelassen, wird der alte Decoder verwendet, aber eine aktualisierte Nachbearbeitung der gefundenen Schnittmarken wird durchgeführt

    Bei Verwendung des Plugin kommen die Parameter in das übliche Plugin Parameter File (meist in /etc/vdr/conf.d).

    Bei meinen Tests konnte ich bei meinen Aufnahmen eine merkliche Verbesserung der Marken erkennen, das heißt aber nicht, dass es immer richtig ist. Das wird nie möglich sein.

    Dies ist eine erste Testversion um zu überprüfen, ob der Weg so Sinn macht. Also am besten nur auf einem Test VDR einsetzen. Feedback willkommen.

    Um Bugs zu melden, bitte markad mit folgenden Parametern nochmals ausführen:

    sudo -u vdr markad --loglevel=3 --astopoffs=0 --cDecoder --log2rec nice <Pfad zum Recording>

    Dann das File markad.log aus dem Aufnahmeverzeichnis posten, falls zu groß auf das erste MB kürzen.

    bekannte Bugs:

    - Full HD 1920x1080 wird noch nicht unterstützt

    - interlaced Video wird noch unterstützt

  • Hallo M-Reimer ,

    nachgedacht schon, aber da habe ich zu unregelmäßig Zeit dazu, mich vernünftig darum zu kümmern. Außerdem ist mein c++ und Video Decoder Know How erst mit dieser Arbeit (und beim remote Timer für das live Plugin) entstanden, somit ganz gut, wenn da noch mal jemand mit Erfahrung drüber schaut.

    VDR

    Server: Ubuntu 24.04 headless VDR im LXC Container, Plugins: satip (Octopus NET SL SX8), live, epgsearch, epg2vdr, markad

    Clients: LibreELEC auf RasPi3 und RasPi 3+

  • Hi kfb77,

    die Patches, angewendet auf die letzten "offiziellen" markad-Sourcen von 0.14, geben mir zuviele Rejects.

    Welche Sourcen hattest Du verwendet?

    Danke :)

    vdr User #2022 - hdvdr2:

    Lenovo SFF M83, Intel(R) Core(TM) i5-4670S, 32 GB Ram, zram-swap/tmp, ubuntu-focal+ESM, softhdcuvid, ffmpeg-6.1(git)

    ddbridge-6.5 mit 2xDVB-S2 und (Flex) 2xDVB-C/T Tunern, nvidia-GF1050Ti SFF (nvidia-dkms-565.77), System SSD btrfs,

    timeshift-btrfs, Video 8TB HDD XFS/cow, yavdr-ansible-2.7.3-seahawk, epgd-git mit plugins, Kernel 6.12.12+dddvb-0.9.39-git

    vdradmin-am-3.6.13-git, vdr-live-ng, vdrmanager (Smartphones als FB)

  • Welche Sourcen hattest Du verwendet?

    Den letzten Git-Stand (der kein getaggtes Release war): https://projects.vdr-developer.org/git/vdr-plugin-markad.git/commit/

    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.)

  • Hallo kfb77

    folgende Meldungen habe ich im syslog

    Was läuft hier schief ?

    YaVDR ansible focal UHD :naenae

  • Rufe mal bitte markad --loglevel=3 --astopoffs=0 --cDecoder --log2rec nice <Pfad zum Recording> von Hand auf und poste den Anfang vom Logfile. Ich vermute mal das ist ein Sender, den ich nicht habe und somit sein Format nicht berücksichtig habe.

    VDR

    Server: Ubuntu 24.04 headless VDR im LXC Container, Plugins: satip (Octopus NET SL SX8), live, epgsearch, epg2vdr, markad

    Clients: LibreELEC auf RasPi3 und RasPi 3+

  • Und bitte noch die ersten 1MB der Aufnahme auch hochladen.

    split -b 1MB 00001.ts und dann die erste Datei hochladen.

    VDR

    Server: Ubuntu 24.04 headless VDR im LXC Container, Plugins: satip (Octopus NET SL SX8), live, epgsearch, epg2vdr, markad

    Clients: LibreELEC auf RasPi3 und RasPi 3+

  • Hallo machtnix

    das habe ich schon mit den Infos aus deinem Syslog befürchtet: das ist ein 1920x1080 interlaced Video. Das ist noch nicht im Code drin, weil ich das nicht empfangen kann. Das 1MB Stück ist zu klein um damit was anfangen zu können.

    Ich habe FTA einen Sender gefunden, der 1920x1080p sendet und einen Sender gefunden, der 1440x1080i sendet, damit habe ich mal versucht, mich deinem Problem zu nähern. Versuche mal den Patch im Anhang. Am besten wieder auf Basis eines neu geladen Git Stand mit den ersten 3 Patches von oben und dann der aus dem Anhang neu bauen.

    In deinem Log ist mir noch was aufgefallen: "broadcast start may be truncated or restarted by 101m".

    Bitte nur mit vollständigen Aufnahmen testen, sonst wird das sicher nichts mit dem Erkennen von Anfang und Ende der Aufnahme.

  • nachgedacht schon, aber da habe ich zu unregelmäßig Zeit dazu, mich vernünftig darum zu kümmern.

    Verwirf den Gedanken nicht, unregelmäßig ist besser als gar nicht, der Dank aller wäre Dir sicher.

    Jo hat offensichtlich keine keine Zeit mehr sich drum zu kümmern ...

    Regards

    fnu

    HowTo: APT pinning

    Click for my gear

    [¹] Intel NUC Kit NUC7i5BNH, Akasa Newton S7, 8GB DDR4, WD Black SN700 500GB NVMe, Crucial MX500 2TB, CIR, SAT>IP, Ubuntu LTS 18.04.5, VDR 2.4.1 (15W)
    [²] Intel NUC Kit NUC7i3BNH, 8GB DDR4, WD PC SN520 250GB NVMe, Crucial MX500 1TB, CIR, SAT>IP, Ubuntu LTS 20.04.1, VDR 2.4.1 (13W)
    [³] BQ500, Asrock X470D4U, AMD Ryzen 5 5600, 32GB DDR4 ECC, 2x WDC SN750 512GB, 4x Samsung SSD 4TB, 1x Samsung SSD 8TB, 1x Crucial MX500 500GB, 1x WDC Blue SSD 500GB, Windows Server 2019 Hyper-V (35W)
    [⁴] Jultec JPS0501-12AN, JPS0501-8M2, Octopus Net (DVBS2-8) & openHABian 3.3.0

  • Hallo kfb77,

    danke für den neuen Patch.

    Damit werden die marks erstellt. Die ersten Tests erstellen aber nur einen mark am Anfang und einen am Ende der Aufzeichnung. Meine Vermutung: es wird der Wechsel von AC3 Sound ausgewertet aber die HD+ Kanäle scheinen bei Werbung ebenfalls in AC3 zu senden?!

    Werde jetzt mal weiter testen - Rückmeldung folgt.

    YaVDR ansible focal UHD :naenae

  • Bei den HD+ Kanälen, die durchgehend AC3 senden muss das Logo angepasst werden (Dx statt Cx)

    siehe auch: [markad] aktuelle Logos werden nicht, teilweise oder schlecht erkannt...

    Kanallogos: Picon.cz2VDR | Picons2VDR | MP-Logos
    Backupskripte:
    MV_Backup (RSync) | MV_BorgBackup (Borg)

    Skin: Skin FlatPlus  VDR-Add_MSGT

    "Es gibt keinen Grund, warum irgendjemand einen Computer in seinem Haus wollen würde."
    [Ken Olson], Präsident der Digital Equipment Corp., 1977

    VDR01 - yaVDR 0.7 (VDR 2.7.3)

    VDR 2.7.3; Gehäuse: Antec Fusion V2 Black & iMon LCD; Atric IR-Einschalter Rev. 4; Board: Intel DH77EB, Core i5-3550, GTX 1050 Ti, 8 GB RAM; DVB: 1x Digital Devices CineS2 Quad V6.5

    >Systeminfo.txt< [VDR-User #1540]

  • Hallo machtnix

    folgende Punkte sind mir in deinem Logfile aufgefallen:

    - Der Ton ist zwar AC3, aber durchgängig nur mit 2 Kanäle, somit sollte das nicht stören

    - Es wurden gar keine Logos erkannt. An dem TS Stück, wo du gepostet hast, war auch kein Logo drin. Dann hat markad natürlich keine Change, ein brauchbares Ergebnis zu erzeugen

    - Die berechneten Frame Positionen für den vermuteten Start und das vermutete Ende stimmen nicht. Patch anbei.

    Tests mit FTA Sender wären mir lieber, dann kann ich versuchen, das Problem nachzustellen und einfacher fixen. Nur mit dem Logfile Fehler suchen ist echt schwer.

  • Hallo machtnix ,

    das Logfile sieht ganz gut aus. Die Meldung im 2nd Pass sind Debug Meldung, die nur bei loglevel ab 3 kommen (1=error, 2=info, 3=debug, 4=trace). Später mal für einen normalen Betrieb wäre höchstens 2 zu verwenden, nur für die Fehlersuche brauche ich die debug Meldungen.

    Einzelne Fehler beim Decodieren sind normal, das kann immer mal vorkommen. Es sind ja nur 2 Frames im gesamten Stream. Das sagt sogar eher, dass du einen sehr stabilen Empfang hast.

    Ich habe inzwischen einen FTA Sender gefunden, der auch 1920x1080i sendet: ANIXE HD.

    VDR

    Server: Ubuntu 24.04 headless VDR im LXC Container, Plugins: satip (Octopus NET SL SX8), live, epgsearch, epg2vdr, markad

    Clients: LibreELEC auf RasPi3 und RasPi 3+

  • ServusTV-HD-Deutschland sendet wohl auch in 1920x1080i ...

    Hard- + Software Konfiguration:

    Matrix-Case: Matrix-ARM-Board + FF HD 6400 + Unicable

    Debian-Buster - vdr-2.5.6 - Plugins: dvbhddevice - targavfd - skinnopacity - osdteletext - epgsearch - markad


    RaspberryPi3b+
    raspbian - vdr-2.5.6 + device.patch

    Plugins: rpihddevice - skinnopacity - osdteletext - epgsearch - markad

    Tuner: USB DVBSky S960 DVB-S2 Tuner

    Am basteln:

    Pine H64 Modell B + Sundtek USB Dual DVB-S2 @Unicable

    RasberryOS - vdr-2.5.6 - Plugins: softhddevice-drm (rella) - skinnopacity - osdteletext - epgsearch

    ——

    RockPro64 Board mit softhddevice-drm mit DD Max-S8 (8Tuner) über Unicable auf armbian - vdr-2.5.6

    Plugins: softhddevice-drm (zillerbaer) - skinnopacity - epgsearch - osdteletext

    ————————————

    Am basteln:

    Compute Module 4 on IO-Board - FF-HD-6400 über PCIe Extender + Unicable

    RasberryOS - vdr-2.5.6 - Plugins: dvbhddevice - targavfd - skinnopacity - osdteletext - epgsearch - markad

  • Danke für den Hinweis. Seltsamerweise verhält sich ServusTV-HD-Deutschland ganz anders beim decodieren als ANIXE HD.

    Hier noch einige Fehlerbereinigungen für 1920x1080i.

Participate now!

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