Noad

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Konfiguration: M)
(Probleme)
 
(109 dazwischenliegende Versionen von 45 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
==Beschreibung==
 
==Beschreibung==
Ein Programm zum automatischen setzen von Schnittmarken für Werbeeinblendungen in VDR-Aufnahmen.
+
Ein Programm zum automatischen Setzen von Schnittmarken für Werbeeinblendungen in VDR-Aufnahmen.
 +
Dazu werden die Senderlogos und z.B. die AC3 Tonerkennung benutzt.
  
==Hardwareanforderungen==
+
Anschließend kann man beim Abspielen mit Hilfe der Schnittmarken die Werbung überspringen oder die Aufnahme schneiden lassen. Je nach Sender und Sendung ist die Erkennung jedoch nicht perfekt und sollte manuell kontrolliert/überarbeitet werden.
Keine.
+
 
 +
===Status===
 +
Letztes Update 08/2017
  
 
==Softwareanforderungen==
 
==Softwareanforderungen==
 
* libmpeg2
 
* libmpeg2
* imagemagick (optional)
+
* [http://ffmpeg.mplayerhq.hu ffmpeg] (optional für "audio silence detection")
* ffmpeg (optional fuer "audio silence detection")
+
* [http://libmpeg2.sourceforge.net mpeg2dec]
  
==Installation==
+
==Konfiguration==
Imagemagick siehe [[text2skin-plugin]]
+
Noad startet man am besten aus der [[reccmds.conf]] heraus über das hier hinterlegte [[noad.sh]] Skript.
  
<pre>
+
Starte Werbefilter                          : [[Struktur|$PATH]]/[[noad.sh]] -start
cd $SOURCEDIR
+
Starte Werbefilter, alle Aufnahmen (batch)? : [[Struktur|$PATH]]/[[noad.sh]] -batch
tar xvzf mpeg2dec-<VERSION>.tar.gz
+
Aktive Werbefilter                          : [[Struktur|$PATH]]/[[noad.sh]] -count
cd mpeg2dec-<VERSION>
+
Beende Werbefilter (killpid)                : [[Struktur|$PATH]]/[[noad.sh]] -killpid
./configure --prefix=/usr/local
+
Beende Werbefilter (killall)?              : [[Struktur|$PATH]]/[[noad.sh]] -killall
make
+
Löschen der Schnittmarken                  : [[Struktur|$PATH]]/[[noad.sh]] -rmmarks
make install
+
Löschen aller Schnittmarken?                : [[Struktur|$PATH]]/[[noad.sh]] -rmallmarks
cd -
+
  
tar xvzf ffmpeg-<VERSION>.tar.gz
+
Es ist auch möglich Noad automatisch über die '''[[rwrapper.sh]]''' ''an schubsen'' zu lassen, dafür diese wie folgt anpassen:
ln -s ffmpeg-<VERSION> ffmpeg
+
cd ffmpeg
+
./configure --prefix=/usr/local \
+
            --enable-shared
+
make
+
make install
+
ldconfig
+
cd -
+
  
tar jxvf noad-<VERSION>.tar.bz2
+
NOAD="1"        # (0=off,1=on,2=online mode)
cd noad-<VERSION>
+
./configure --with-ffmpeg \
+
            --with-ffmpeglibdir=/usr/local/lib \
+
            --with-ffmpeginclude=/usr/local/include/ffmpeg \
+
            --with-mpeginclude=/usr/local/include/mpeg2dec
+
make
+
make install
+
</pre>
+
  
==Konfiguration==
 
Noad startet man am besten aus der [[reccmds.conf]] heraus.
 
  
  Run noad                          : /path_to_this_script/[[noad.sh]] -start
+
   
  Run noad, all recordings (batch)? : /path_to_this_script/[[noad.sh]] -batch
+
  # set the noad online-mode here
  In prozess                        : /path_to_this_script/[[noad.sh]] -count
+
  # 1 means online for live-recording only
  Stop noad (killpid)              : /path_to_this_script/[[noad.sh]] -killpid
+
  # 2 means online for every recording
  Stop noad (killall)?              : /path_to_this_script/[[noad.sh]] -killall
+
  ONLINEMODE="--online=1"
Remove marks                      : /path_to_this_script/[[noad.sh]] -rmmarks
+
Remove all marks?                : /path_to_this_script/[[noad.sh]] -rmallmarks
+
  
 +
Und VDR mit der entsprechenden [[VDR Optionen|Option]] übergeben.
  
Es ist auch möglich noad automatisch nach Beenden einer Aufnahme "anzuschubsen", Übergabe für VDR wäre folgende.
+
  -r [[Struktur|$PATH]]/[[rwrapper.sh]]
 
+
  -r '/usr/local/bin/'''[[rwrapper.sh]]''''
+
 
+
oder
+
 
+
--record='/usr/local/bin/'''[[rwrapper.sh]]''''
+
  
 
==Probleme==
 
==Probleme==
===0 Byte Dateien===
+
Noad + ffmpeg-4.x: lässt sich aktuell nicht compilieren (Juni 2019)
Sollte Noad auf eine *.vdr Datei treffen, die 0 Byte groß ist, so werden keine Schnittmarken erzeugt. Damit es doch funktioniert muß man diese Datei löschen und alle weiteren *.vdr Dateien in die richtige Reihenfolge umbenennen, d.h. wird 001.vdr gelöscht wird 002.vdr zu 001.vdr usw. Danach muß die Datei index.vdr noch neu erstellt werden. Dazu kann man sich bei www.muempf.de/down das Programm genindex (genindex-0.1.2.tar.gz) runterladen (Source und ein make) Dann die alte index.vdr umbenennen und den neuen Index unter index.vdr abspeichern. Nun sollte noad wieder Schnittmarken setzen.
+
 
+
===Segmentation fault ("--asd")===
+
Mit der Option '''--asd''', gibt es einen Fehler...
+
 
+
<pre>
+
noad[16052]: noad aborted by signal Segmentation fault
+
noad[16052]: [bt] Execution path:
+
noad[16052]: [bt] noad [0x805c49d]
+
noad[16052]: [bt] noad [0x8058aa0]
+
noad[16052]: [bt] [0xffffe420]
+
noad[16052]: [bt] /usr/local/lib/libavcodec.so(avcodec_open+0x21) [0xb7e5e9c1]
+
noad[16052]: [bt] noad [0x805832a]
+
noad[16052]: [bt] noad [0x804ede1]
+
noad[16052]: [bt] noad [0x8051d81]
+
noad[16052]: [bt] noad [0x80538d6]
+
noad[16052]: [bt] noad [0x8053c67]
+
noad[16052]: [bt] noad [0x8058715]
+
noad[16052]: [bt] noad [0x80590bc]
+
noad[16052]: [bt] /lib/libc.so.6(__libc_start_main+0xcb) [0xb7c47e0b]
+
noad[16052]: [bt] noad(__gxx_personality_v0+0x7d) [0x8049bb1]
+
</pre>
+
  
 
==Optionen==
 
==Optionen==
Zeile 96: Zeile 51:
 
| '''-s'''
 
| '''-s'''
 
| '''-statisticfile='''
 
| '''-statisticfile='''
| Name der datei, in der Statistik-Daten gespeichert werden
+
| Name der Datei, in der Statistik-Daten gespeichert werden
 
|-
 
|-
 
| '''-v'''
 
| '''-v'''
Zeile 108: Zeile 63:
 
| '''-p'''
 
| '''-p'''
 
| '''--priority'''
 
| '''--priority'''
| Priorität wenn noad als Hintergrundprozess läuft [20...-20] default 20
+
| Priorität wenn noad als Hintergrundprozess läuft [20...-20] default: 20
 
|-
 
|-
 
| '''-c'''
 
| '''-c'''
Zeile 120: Zeile 75:
 
| '''-a'''
 
| '''-a'''
 
| '''--ac3'''
 
| '''--ac3'''
| experimentell: nutzt in Aufnahmen mit ac3-sound die Sound-Umschaltungen 5.1/2.0 zur Erkennung von Werbeblöcken
+
| experimentell: nutzt in Aufnahmen mit AC3-Sound die Sound-Umschaltungen 5.1/2.0 zur Erkennung von Werbeblöcken
 
|-
 
|-
 
| '''-j'''
 
| '''-j'''
Zeile 140: Zeile 95:
 
| '''-n'''
 
| '''-n'''
 
| '''--nelonen'''
 
| '''--nelonen'''
| special behavior for finish stations
+
| Speziell für finnische Sender
 
|-
 
|-
 
| '''-V'''
 
| '''-V'''
 
| '''--version'''
 
| '''--version'''
| zeigt die Versionsnummer und endet dann
+
| zeigt die Versionsnummer und beendet noad dann
 
|-
 
|-
 
|
 
|
 
| '''--markfile=<markfilename>'''
 
| '''--markfile=<markfilename>'''
| set a different markfile-name
+
| setzt einen anderen <markfilename>, nur für Testzwecke
 
|-
 
|-
 
|
 
|
 
| '''--asd'''
 
| '''--asd'''
| audio silence detection, noad muß mit ffmpeg-support kompiliert sein (siehe configure --help)
+
| audio silence detection, noad muß mit ffmpeg-Support kompiliert sein (siehe configure --help)
 
|-
 
|-
 
|
 
|
 
| '''--online={1,2} (default is 1)'''
 
| '''--online={1,2} (default is 1)'''
| start noad immediately when called with "before" as cmd if online is 1, noad starts online for live-recordings only, online=2 starts noad online for every recording live-recordings are identified by having a '@' in the filename so the entry 'Mark instant recording' in the menu 'Setup - Recording' of the vdr should be set to 'yes'
+
| Wenn dieser Parameter angegeben ist, wird noad bei Aufruf mit cmd=before bereits während der Aufzeichnung
 +
gestartet. Ist --online=2 angegeben, passiert dies bei jeder Aufnahme, sonst nur bei live-Aufnahmen.
 +
Der Online-Scan startet ca. 2 Minuten nach Beginn der Aufnahme und wird danach alle 15 Sekunden fortgesetzt.
 
|}
 
|}
  
 
==Tipps==
 
==Tipps==
Wer mit noad Werbung in Filmen markiert hat, sollte nicht unbesehen die Schneidefunktion in VDR für diesen Film aktivieren. Je nachdem, wie ein Sender Werbung einblendet, können einige Werbebilder erhalten bleiben oder einige Filmbilder zuviel rausgeschnitten werden. Auch am Anfang können Szenen verloren gehen, wenn z. B, der Film schon begonnen hat, aber der Text mit dem Vorspann erst später gezeigt wird.
+
===Schneidefunktion===
 +
Wer mit noad Werbung in Filmen markiert hat, sollte diese nicht unbesehen herausschneiden, sehr wahrscheinlich müssen die [[Benutzerhandbuch#Schneiden_einer_Aufzeichnung|Schnittmarken manuell]] angepasst werden. Je nachdem, wie ein Sender Werbung einblendet, könnten sonst einige Werbebilder erhalten bleiben oder einige Filmbilder zu viel herausgeschnitten werden.  
  
Um das Ergebnis zu optimieren, sollte man die Aufnahme starten und die einzelnen Schnittmarken mit den Tasten 7 (springt zurück) oder 9 (springt vor) der [[Fernbedienung]] ansteuern und mit 4 (zurück) oder 6 (vor) feinjustieren. Ist man mit dem Ergebnis zufrieden, drückt man die 2: Der Schnitt wird nun gestartet. Eine Ausführliche Beschreibung zum Thema Schneiden einer Aufzeichnung findet Ihr hier: [[Benutzerhandbuch#Schneiden_einer_Aufzeichnung|Benutzerhandbuch]]
+
===Werbung überspringen===
 +
Für das direkte überspringen der Schnittmarken, bei der Wiedergabe von Aufnahmen, empfiehlt sich der [[jumpplay-patch]].
  
==Links==
+
==Aktuelle Version==
{|
+
[https://github.com/madmartin/noad github.com/madmartin/noad]
| [1]
+
 
| http://www.imagemagick.org
+
[https://www.vdr-portal.de/index.php?attachment/41870-noad-0-8-6-ffmpeg3-4-diff-bz2/ noad-0.8.6~madmartin-ffmpeg3.4-diff]
| Imagemagick Homepage
+
|-
+
| [2]
+
| http://libmpeg2.sourceforge.net
+
| Mpeg2dec Homepage
+
|-
+
| [3]
+
| http://ffmpeg.sourceforge.net
+
| ffmpeg
+
|-
+
| [4]
+
| http://www.freepgs.com/noad
+
| Noad Homepage
+
|-
+
| [5]
+
| http://linvdr.org/download/noad
+
| Spiegel linvdr.org
+
|-
+
| [6]
+
| http://gentoo.fh-luh.de/files/noad
+
| Spiegel gentoo.fh-luh.de
+
|}
+
  
 
[[Kategorie:Software]]
 
[[Kategorie:Software]]
 +
{{i18n|Noad}}

Aktuelle Version vom 16. Juni 2019, 11:24 Uhr

Inhaltsverzeichnis

[Bearbeiten] Beschreibung

Ein Programm zum automatischen Setzen von Schnittmarken für Werbeeinblendungen in VDR-Aufnahmen. Dazu werden die Senderlogos und z.B. die AC3 Tonerkennung benutzt.

Anschließend kann man beim Abspielen mit Hilfe der Schnittmarken die Werbung überspringen oder die Aufnahme schneiden lassen. Je nach Sender und Sendung ist die Erkennung jedoch nicht perfekt und sollte manuell kontrolliert/überarbeitet werden.

[Bearbeiten] Status

Letztes Update 08/2017

[Bearbeiten] Softwareanforderungen

[Bearbeiten] Konfiguration

Noad startet man am besten aus der reccmds.conf heraus über das hier hinterlegte noad.sh Skript.

Starte Werbefilter                          : $PATH/noad.sh -start
Starte Werbefilter, alle Aufnahmen (batch)? : $PATH/noad.sh -batch
Aktive Werbefilter                          : $PATH/noad.sh -count
Beende Werbefilter (killpid)                : $PATH/noad.sh -killpid
Beende Werbefilter (killall)?               : $PATH/noad.sh -killall
Löschen der Schnittmarken                   : $PATH/noad.sh -rmmarks
Löschen aller Schnittmarken?                : $PATH/noad.sh -rmallmarks

Es ist auch möglich Noad automatisch über die rwrapper.sh an schubsen zu lassen, dafür diese wie folgt anpassen:

NOAD="1"        # (0=off,1=on,2=online mode)


# set the noad online-mode here
# 1 means online for live-recording only
# 2 means online for every recording
ONLINEMODE="--online=1" 

Und VDR mit der entsprechenden Option übergeben.

-r $PATH/rwrapper.sh

[Bearbeiten] Probleme

Noad + ffmpeg-4.x: lässt sich aktuell nicht compilieren (Juni 2019)

[Bearbeiten] Optionen

Kurz Lang Beschreibung
-s -statisticfile= Name der Datei, in der Statistik-Daten gespeichert werden
-v --verbose erhöht den Log-Level, kann mehrfach angegeben werden
-b --background lässt noad als Hintergrundprozess laufen
-p --priority Priorität wenn noad als Hintergrundprozess läuft [20...-20] default: 20
-c --comments fügt Kommentare zu den Marken hinzu
-o --overlap erkennt Wiederholungssequenzen vor/nach der Werbung
-a --ac3 experimentell: nutzt in Aufnahmen mit AC3-Sound die Sound-Umschaltungen 5.1/2.0 zur Erkennung von Werbeblöcken
-j --jumplogo erkennt vertikal verschobene Senderlogos
-O --OSD sendet eine OSD-Message an VDR(localhost:2001) für Start und Ende
-S --savelogo speichert das erkannte Logo
-B --backupmarks sichert eine vorhandene marks.vdr nach marks0.vdr
-n --nelonen Speziell für finnische Sender
-V --version zeigt die Versionsnummer und beendet noad dann
--markfile=<markfilename> setzt einen anderen <markfilename>, nur für Testzwecke
--asd audio silence detection, noad muß mit ffmpeg-Support kompiliert sein (siehe configure --help)
--online={1,2} (default is 1) Wenn dieser Parameter angegeben ist, wird noad bei Aufruf mit cmd=before bereits während der Aufzeichnung

gestartet. Ist --online=2 angegeben, passiert dies bei jeder Aufnahme, sonst nur bei live-Aufnahmen. Der Online-Scan startet ca. 2 Minuten nach Beginn der Aufnahme und wird danach alle 15 Sekunden fortgesetzt.

[Bearbeiten] Tipps

[Bearbeiten] Schneidefunktion

Wer mit noad Werbung in Filmen markiert hat, sollte diese nicht unbesehen herausschneiden, sehr wahrscheinlich müssen die Schnittmarken manuell angepasst werden. Je nachdem, wie ein Sender Werbung einblendet, könnten sonst einige Werbebilder erhalten bleiben oder einige Filmbilder zu viel herausgeschnitten werden.

[Bearbeiten] Werbung überspringen

Für das direkte überspringen der Schnittmarken, bei der Wiedergabe von Aufnahmen, empfiehlt sich der jumpplay-patch.

[Bearbeiten] Aktuelle Version

github.com/madmartin/noad

noad-0.8.6~madmartin-ffmpeg3.4-diff

In anderen Sprachen