[markad] überarbeiteter Decoder

  • Respekt. Das ist ein wichtiges Plugin und ich schätze Deine Arbeit.

    Ich nutze noch Noad, weiß aber nicht, ob das noch gepflegt wird.

    Ein aktueller frischer Wind, bei einem der beiden Plugins ist super! Danke!

  • Ich bekommen einen Bus-Zugriffsfehler.

    Ich benutze folgendes:


    Code
    00-markad-libavcodec58-V0-01.diff
    01-markad-Makefile-V0-06.diff
    02-deprecated-V0-04.diff
    03-markad-decoder-V0-58.diff
  • Hallo hondansx ,

    das war ja mal eine vorbildliche Fehlerbeschreibung. Hier mal eine erste Analyse:

    Code
    /usr/bin/markad_fehler --loglevel=3 -R -vvvv  - /video/@video/video0/Der_Bachelor/Folge_1/2020-01-08.20.13.2-0.rec/

    Du nutzt gar nicht den neuen Decoder von mir, sondern den ursprünglichen. Ich habe schon lange nicht mehr mit dem originalem Decoder getestet, das Log File sieht gar nicht so aus, wie ich es erwarten würde.

    Aber kein Problem, einen Crash dürfe es trotzdem nicht geben. Soweit es mir möglich und vom Aufwand sinnvoll ist, versuche ich mich auch da an Fehlerbehebungen. Ich schaue mir das mal im Laufe des Wochenendes an.

    Ich habe einen Timer gesetzt auf die nächste Sendung aus deinem Test, bitte nehmen die Sendung vom nächsten Mittwoch 20:15 auch auf, dann können wir das direkt vergleichen.

    Du hast unter Debian eine ältere libavcodec Version, wie ich unter Ubuntu ( libavcodec 57.107.100 / 57.107.100), das könnte auch eine mögliche Ursache sein. Ich werde versuchen, ob ich ein Debian installiert bekomme.

    Bitte teste nochmals mit dem neuen Decoder, da ist dann auch das Log ausführlicher. Das Log File dazu posten reicht dann für mich.

    Code
    markad --loglevel=3 --astopoffs=0 --cDecoder --log2rec nice <Pfad zum Recording>
    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 hondansx ,

    unter Ubuntu 18.04 kann ich dein Problem nicht reproduzieren. Ich habe mir mal schnell ein Debian Buster installiert, das sieht bei mir dann aber ganz anders aus.

    Code
    cat /etc/debian_version
    10.2

    Damit kompiliert es bei mir nicht mal, aber das würde sich einfach fixen lassen.

    Hast du absichtlich ältere avcodec libs installiert ?

    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+

  • Debian Buster hat libavcodec 58.35.100. Musste da in decoder.cpp leicht anpassen damit es kompiliert hat:

    VDR: Zotac ZBOX EN860, 16GB RAM, 2 TB HDD, Debian Bookworm, vdr-2.7.3, softhdcuvid, satip

  • Hallo Xcoder ,

    so habe ich das auf meiner Debian Buster Test Server auch gemacht. hondansx hat aber eine viel ältere libavcodec drauf, vermutlich weil dies die letzte war, mit der der ursprüngliche Code kompiliert hat. Da macht es auch keinen Sinn mehr, darin Fehler zu suchen.

    hondansx : Am besten die aktuelle libavcodec installierten und den angepassten Patch in Anhang verwenden.

  • Bitte teste nochmals mit dem neuen Decoder, da ist dann auch das Log ausführlicher. Das Log File dazu posten reicht dann für mich.

    Code
    markad --loglevel=3 --astopoffs=0 --cDecoder --log2rec nice <Pfad zum Recording>

    Mit dem neuen Decoder läuft es durch, aber es wird keine marks Datei erstellt.

  • kfb77 sind die neuen diff's allgemein oder speziell erst mal für Debian?

    Gruß utiltiy

    meine VDR

    vdr03: Antec Remote Fusion, Intel DH67BL, Celeron G1620, GT630, 2x 2GB DDR3 - Hynix, SDA SATA 40GB, SDB SATA 1.5TB, L4M Cine S2 [yaVDR/vdr4arch]
    vdr04: Antec Remote Fusion Micro, Intel DH67BL, Celeron G550, GT630, 2x 2GB DDR3 - Kingston, SDA SATA 160GB WD, SDB SATA 3TB WD Red, L4M Cine S2 [yaVDR/vdr4arch]


    VDR Projects

  • Hallo utiltiy ,

    die neuen diff's unterschieden sich nur in der libavcodec Version Nummer in den Compiler Direktiven. Sie haben sonst keinen Unterschied und somit keine Auswirkung für Ubuntu. Wenn man kein Debian Buster hat, lohnt es sich nicht, sie zu verwenden, sie stören aber auch nicht.

    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 hondansx ,

    laut deinem Log kann libavcodec nicht mal intern einen Buffer allokieren um die Frames zu dekodieren. Dann kann es auch keine Marken geben.

    Code
    cDecoder::GetFrameInfo(): av_frame_get_buffer failed rc=-22

    Ich habe den Fehler unter Debin Buster mit aktuellen libavcodec nicht. Also am besten, wie du schon geschrieben hast, erst mal einen Update machen und dann nochmal testen.

    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+

  • Sie haben sonst keinen Unterschied und somit keine Auswirkung für Ubuntu.

    OK, das gilt dann wohl auch für Arch, deswegen war meine Nachfrage.

    Gruß utiltiy

    meine VDR

    vdr03: Antec Remote Fusion, Intel DH67BL, Celeron G1620, GT630, 2x 2GB DDR3 - Hynix, SDA SATA 40GB, SDB SATA 1.5TB, L4M Cine S2 [yaVDR/vdr4arch]
    vdr04: Antec Remote Fusion Micro, Intel DH67BL, Celeron G550, GT630, 2x 2GB DDR3 - Kingston, SDA SATA 160GB WD, SDB SATA 3TB WD Red, L4M Cine S2 [yaVDR/vdr4arch]


    VDR Projects

  • Bei meinem PI mit Raspbian Buster kompiliert er das Plugin aber er installiert das eigentliche markad nicht.

    Code
    Jan 12 16:33:08 raspberrypi vdr: [16873] initializing plugin: markad (0.1.6 (ea2e182)): Markiere Werbung
    Jan 12 16:33:08 raspberrypi vdr: [16873] markad: cannot find /usr/bin/markad, please install

    RPI3, DVB-Sky S960, VDR 2.4.4, Raspbian Jessie, Onkyo AV Receiver, Panasonic Plasma.

  • Asta

    was ist denn die Ausgabe von "make install" ? Baust du im vdr Source tree oder baust du das Plugin alleine ?

    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+

  • Asta

    der hat markad nicht installiert, weil er es gar nicht bauen konnte. Du hast zahlreiche Fehler beim Kompilieren bekommen. Ich vermute dir fehlen einige libs.

    Code
    apt-cache policy libavcodec-dev
    apt-cache policy libavformat-dev
    apt-cache policy libavutil-dev

    Wenn einer diese Befehle "Installed: (None)" ausgibt, die fehlenden libs über apt-get install libav… installieren.

    Dann nochmal "make clean && make all" und darauf achten, dass keine Fehlermeldungen kommen, ggf. die Fehlermeldungen von "make all" posten.

    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+

  • libavcodec-dev:

    Installiert: 7:4.1.4-1+rpt1~deb10u1

    Installationskandidat: 7:4.1.4-1+rpt1~deb10u1

    libavformat-dev:

    Installiert: 7:4.1.4-1+rpt1~deb10u1

    Installationskandidat: 7:4.1.4-1+rpt1~deb10u1

    libavutil-dev:

    Installiert: 7:4.1.4-1+rpt1~deb10u1

    Installationskandidat: 7:4.1.4-1+rpt1~deb10u1

    Die Ausgabe von "make all" bekomme ich nicht vollständig kopiert. Es sind zu viele Zeilen für mein putty.

    RPI3, DVB-Sky S960, VDR 2.4.4, Raspbian Jessie, Onkyo AV Receiver, Panasonic Plasma.

    Edited once, last by Asta (January 12, 2020 at 5:50 PM).

  • Asta

    wow, das hätte ich nicht erwartet.

    Ich habe nochmals tiefer in die Glasgugel reingeschaut: Da muss beim Anwenden der Patches was schief gegangen sein. Poste mal bitte aus dem Verzeichnis ".../PLUGIN/src/markad/command" das "Makefile".

    Laut deiner make Ausgabe fehlt "decoder_new.o" und "-lavformat". Die Änderung im Makefile kommt mit dem letzten Patch. Hast du die Patches in numerischer Reihenfolge angewendet ?

    Code
    g++ -g -rdynamic -O3 -funroll-loops -Wall -Wextra -Woverloaded-virtual -Wno-parentheses  markad-standalone.o decoder.o marks.o streaminfo.o video.o audio.o demux.o  -lavcodec -lavutil -pthread -o markad

    Sollte aber so aussehen (andere Compiler Options sollten egal sein):

    Code
    g++ -g -O2 -fdebug-prefix-map=/build/vdr-hON7XR/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  markad-standalone.o decoder.o marks.o streaminfo.o video.o audio.o demux.o decoder_new.o -lavcodec -lavutil -lavformat -pthread -o markad
    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+

Participate now!

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