[markad] überarbeiteter Decoder

  • Das verstehe ich den Nutzen nicht. Warum nicht sowie jede Aufnahme mit markad auf dem Server bearbeiten ? Dann sind die Marken mal auf jeden Fall da und der Client kann es nutzen oder auch nicht. Falls es alte Aufnahmen ohne Marken gibt, dazu liegt im Source Code unter contrib ein Skript, dass markad auf ein Videoverzeichnis laufen lässt. Möchte man alle Marken, z.B. mit einer neuen Version, neu erstellen lassen, einfach überall marks löschen und wieder das Skript laufen lassen. Ich rufe das Skript aus cron.hourly auf, damit werden regelmäßig alle neuen Aufnahmen auf dem Server bearbeitet.

    der Nutzen ist das wenn ich zeitversetzt schaue, zB sone RTL drei Stunden Show 5 gegen Jauch oder was auch immer und ich schon während der Wiedergabe der laufenden Aufnahme Marken generieren möchte. Meist klappt da ja wenn man in sone Sendung ne Stunde später einsteigt dann ist man am Ende wieder "on time".

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5

  • ofenheizer

    Ich habe eine Anleitung gebaut:

    Die fehlende Datei und die o.g. Anleitung findest du auf dem aktuellen Entwickler Branch im git:

    git clone -b V02 https://github.com/kfb77/vdr-plugin-markad

  • mit der FB des client in der Hand, wie soll ich da das markad auf dem Server starten.


    über so ein script für eine dedizierte Aufnahme aus dem commands Menu des client aufgerufen, das genau diese Aufnahmen in einen online markad modus versetzt

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5

  • CKone und ofenheizer

    Wenn ich das richtig verstanden habe, startet ihr markad aus einem eigenen Befehl in der Reccmds.conf. Zumindest habe ich im VDR Standard Menü nichts gefunden, mit dem man markad manuell starten könnte.

    Wenn ihr das unbedingt so beibehalten wollt, nur markad auf dem Server starten wollt, gibt es eine ganz einfache Lösung:

    Ändert in eurem Skript den Aufruf von markad <Pfad zur Aufnahme auf dem Client> in:

    svdrpsend -d <Server Name oder IP> PLUG markad mark <Pfad zur Aufnahme auf dem Server>

    Die Funktion markad über svdrpsend zu starten gab es schon immer.

  • jepp, wird über die reccmds.conf gestartet.

    ah, ok. das mit dem svdrpsend habe ich bei meiner suche nicht gefunden.

  • Eine neue Version 2.1.3 ist auf vdr-plugin-markad verfügbar. Es sind einige Bug Fixes und viele interne Code Optimierungen drin. Außerdem habe ich auch noch versucht, einen Beitrag zum Thema Speicherverbrauch zu leisten:

    - 14 Byte Leak pro Aufnahme gefixed (ok, nicht viel, aber Leak ist Leak)

    - zum Suchen eventuell vorhandener Leaks habe ich Code hinzugefügt, der sich merkt, für welche Variablen Speicher allokiert oder freigegeben wird. Der Code kann im Plugin Makefile durch Entfernen des Kommentars in der Zeile DEBUGMEMPLUGIN=1 aktiviert werden. Den Status kann man dann über svdrpsend abrufen:

    Code
    1. root@VDR-1804:~# svdrpsend PLUG markad DEBUGMEM
    2. 220 VDR-1804 SVDRP VideoDiskRecorder 2.4.2; Fri Jun 12 10:36:47 2020; UTF-8
    3. 900-markad: unmachted alloc 1 times 9 bytes, line 30, file markad.cpp, variable: bindir
    4. 900-markad: unmachted alloc 1 times 16 bytes, line 33, file markad.cpp, variable: logodir
    5. 900 markad: unmachted alloc 1 times 22600 bytes, line 217, file markad.cpp, variable: statusMonitor
    6. 221 VDR-1804 closing connection

    Die Hauptfunktion steckt im, aus VDR Sicht externen Programm, markad. Das Plugin macht fast nichts und startet eigentlich nur markad beim Start einer Aufnahme. Es hat gerade mal 3 Variablen dynamisch allokiert. Beim Start einer Aufnahme kommen noch ein paar dazu, die am Ende der Aufnahme wieder frei gegeben werden.

  • Klasse. Lobenswert, dass auch kleinste auf den ersten Blick triviale Bugs/Leaks gefixt werden. Ist ja immerhin alles Arbeit, die nicht entlohnt wird. Danke dafür.:thumbup:

    MP-Logos (Kanallogos für VDR) - MV_Backup (Backup mit RSync) - Skin FlatPlus (Fork)


    Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. [StGB §328 Abs.: 2 Nr.: 3]

    ___

    Gen2VDR V7; VDR 2.4.5; Gehäuse: Antec Fusion V2 Black & iMon LCD (15c2:ffdc); Atric IR-Einschalter Rev. 4; Board: Intel DH77EB, Core i5-3550, NVidia GTX 750 Ti, 4 GB RAM; DVB: 1x Digital Devices CineS2 Quad V6.5 [VDR-User #1540]

  • Ich habe bei VOX (SD) sehr schlechte Marken. Ich frage mich wo ich ansetzen kann das zu verbessern.

    Ist ein einfache Datei ohne AC3 und mit gutem vorhandenem Logo.

    Jemand eine Idee?


    markad --cDecoder --astopoffs=0 --loglevel=3 -R --priority=19 --autologo=2 --backupmarks - after /video/@video/video0/James_Bond_007_-_Der_Hauch_des_Todes/2020-06-18.20.13.5-0.rec 

    Files

    • markad.log.gz

      (8.72 kB, downloaded 16 times, last: )

    Server: CPU J1900 | 1x CineS2 | Debian Buster | VDR 2.4.1
    Client: 2x Himbeere mit vdr

  • und ich habe bei 4 min Vorlauf und 6 Minuten Nachlauf meist sehr gute Marken nur fehlt fast immer die Endmarke (auch bei ÖR HD ), oder sie wird ganz am Ende gesetzt. - müsste man mal genauer prüfen.


    Hat sonst noch jemand so ein Verhalten?

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5

  • CKone

    Ja das mit den Endmarken ist schwierig, weil oft wirklich kein Ende erkennbar ist und nahtlos die nächste Sendung beginnt. Dann setzte ich lieber die Marke ans Ende der Aufnahme, bevor ich das Ende abschneide. Man kann ja abschalten, wenn man sieht, dass die Sendung zu Ende ist. Wenn du mir mal ein Log File hast, wo man ein Ende erkennen kann (Logo fehlt lange genug, dass es erkennbar ist, Balken sind weg, Ton Kanäle ändern sich oder Bild Seitenverhältnis ändert sich) dann schaue ich gerne mal rein, ob ich hier noch was verbessern kann.

    Es würde auch noch einen anderen Ansatz zur Lösung des Problems geben: Zumindest die ÖR senden ein gutes VPS Signal mit einer recht zuverlässigen Start und Ende Informationen. Ich denke, die meisten von uns haben aber schon schlechte Erfahrungen mit VPS Aufnahmen gemacht. Wenn es dumm läuft, dann hat man keine Aufnahme.

    Ich hatte schon vor ein paar Wochen die Idee, im markad Plugin mir die VPS Events zu holen, zu prüfen und wenn sie sinnvoll erscheinen, als Start und Ende Information zu verwenden. Das Problem dabei ist nur, wenn epg2vdr installiert ist, werden die Events so umgebogen, dass ich sie nicht mehr zuordnen kann. Ich hätte dafür aber auch einen Vorschlag für einen Patch in epg2vdr. Ich werde aber keine Version meines Plugins releasen, dass abhängig ist von einem Patch in einem anderen Plugin, da mache ich mich bei den Distributoren unbeliebt ;-)

    horchi : bitte melde dich mal hier, damit wir uns dazu austauschen können.

    Falls du Interesse hast meinem Prototypen zu testen, melde dich, dann push ich meinen Test Branch. Das zusätzliche Feature funktioniert aber nur bei ÖR, der Rest sendet willkürliche Start Events und keine Stop Events.

  • hondansx Wow, das Log sieht ja ganz seltsam aus.

    INFO: live-recording, disabling pre-/post timer

    ERROR: length of recording not found

    Die beiden Einträge dürften eigentlich nicht kommen.

    Bitte nochmals testen und Log File posten mit:


    markad --cDecoder --astopoffs=0 --loglevel=3 -R --priority=19 --autologo=2 --backupmarks nice /video/@video/video0/James_Bond_007_-_Der_Hauch_des_Todes/2020-06-18.20.13.5-0.rec


    "after" sollte eigentlich nur beim internen Aufruf durch das Plugin verwendet werden und dann statt "-" und nicht zusätzlich.

    Falls das nicht die Lösung bringt, versuche mit noch zusätzlich ----logocachedir=/tmp markad dazu zu zwingen, selbst ein Logo zu suchen. Vielleicht ist dein gespeichertes Logo nicht mehr aktuell.

  • Also ich hatte letztens auch eine Timeraufnahme auf VOX (markad lief während der Aufnahme), wo ich markad stoppen musste und die gefühlt "100" Schnittmarken löschen, damit ich die Aufnahme anschauen konnte.

    Alle Serientimer werden bei mir per epgsearch gesetzt mit 5min Vorlauf und 10min Nachlauf.

    Wenn eine laufende Serienaufnahme angeschaut wird, dann mit soviel zeitverzögerung, dass mind. der erste Werbeblock übersprungen werden kann.

    Die betreffende Aufnahme habe ich später nochmals manuell durch markad laufen lassen, da waren die Schnittmarken dann in Ordnung.

  • ofenheizer

    Je nachdem wo du makad abbrichst, können die vielen Marken normal sein. In den ersten 12 Minuten und in den letzten 10 Minuten werden auch kurze schwarze Bildschirme als Marken gespeichert um damit zur Not den Anfang oder das Ende einer Sendung zu erkennen. Die werden aber nach 12 Minuten und am Ende wieder aufgeräumt. Ich nehme mal an, du hast das Log nicht mehr. Wenn du nächstes Mal wieder so was hast, bitte poste das Log.

  • markad hatte ich ja erst abgebrochen, als die vielen marken vorhanden waren. es waren aber definitiv mehr als 12min vergangen, habe auch extra noch etwas gewartet, ob da noch was aufgeräumt wird im laufe der zeit.

    nächtes log hebe ich mal auf.