AutoCutter

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Beschreibung

Die Grundidee hinter dem Programm Autocutter ist das automatische Bearbeiten von mehreren Aufnahmen.

Die Vorteile von Autocutter sind :

  • Automatisierung der Verarbeitungsschritte
  • Überblick über die neue Aufnahmen
  • Genaues Steuern der Verarbeitungsschritte
  • Parallele Bearbeiten von mehreren Aufnahmen

Status

  • Letztes Update 2006
  • Nicht geeignet für VDR-1.7/2.x


Hinweis : Im Archiv des Autocutter-Paket sind in der Datei README (in Englisch) viele weitere Informationen enthalten.


Die Steuerung erfolgt über die Konfigurationsdatei autocutter.conf. In dieser Datei wird definiert was mit jeder Aufnahme geschehen soll. So kann eine Aufnahme z.b. umbenannt werden oder auch von die Bearbeitungen durch Noad festgelegt werden.

Folgende Verarbeitungsschritte finden standardmäßig statt :

  1. Die Aufnahme wird in die Noad Warteschlange gelegt
  2. Noad legt grob die Schnittmarken fest
  3. die Aufnahmen wird in der Sharemarks Warteschlange vermerkt
  4. Es wird versucht, Schnittmarken vom Sharemarks Server herunterzuladen. d.h. wenn jemand anderem die Aufnahme bereits mit Schnittmarken versehen hat, dann erhält man (hoffentlich) genauere Schnittmarken.
  5. Wenn der Download vom Sharemarks Server erfolgreich war oder ein nach einer Wartezeit (standardmäßig zwei Tage), wird die Aufnahme in den AutoCutter Warteschlange gelegt. Die konfigurierbare Wartezeit stellt sicher das Aufnahmen nicht dauerhaft in der Sharemarks Warteschlange liegen, falls keine Schnittmarken auf dem Sharemarks Server verfügbar sind.
  6. Als abschließender Schritt muss man die Schnittmarken "per Hand" kontrollieren und kann dann mit einen einzelnen Befehl den Schneidevorgang für alle Aufnahmen starten.

Wichtig : Bei mehreren Video Partitionen sollte immer das Verzeichnis als Ziel genommen werden, in dem der meiste Speicherplatz verfügbar ist. Damit alle Dateien einer Aufnahme auf der gleichen Festplatte gespeichert werden. Das ganze dient nur der Sicherheit, damit bei einem Festplattencrash keine Aufnahmen durch fehlende Teile zerstört werden!

Es müssen natürlich nicht alle Funktionen genutzt werden, der Programmteil zu Schnitt der Aufnahmen kann auch allein genutzt werden, oder auch nur die Schritte für Noad oder den Download per Sharemarks. Ebenso ist möglich diese Features selektiv pro Aufnahme oder Sender zu steuern.

Die Installation und weitere Details sind in der im Programm-Archiv enthalten Datei README (in Englisch) beschrieben.

Eine Liste der Features, ist weiter unter in der Historie beschrieben.

Download

Download AutoCutter 0.3.1


Historie

Was ist neu in 0.3.1

  • Man kann jetzt das SVDRP EDIT Kommando (VDR >= 1.3.31) zum Schneiden benutzen. Zum Aktivieren einfach VDRCUTTER2=no setzen.

Man benötigt also nicht mehr vdrcutter2 (obwohl ich das weiterhin empfehle ;)) und auch kein Patch für VDR. Achtung!! Wenn man dies benutzt, werden die geschnittene Aufnahmen IMMER auf die VDR bekannten Platten geschnitten, also gegebenenfalls nur auf die erste oder verteilt über alle Platten. Ich empfehle in dem Zusammenhang dann die Aufnahme nach dem Schneiden in die ReOrg-Queue zu legen, damit sie zusammengeführt wird oder auf eine Platte mit mehr Platz gelegt wird. Und das "Renaming" greift dann auch nicht beim schneiden - hier sollte man dann ReOrg benutzen.

  • showqueues.sh zeigt jetzt an, was für Schnittmarken eine Aufnahme hat. Somit kann man schnell sehen, was man nicht zu tun hat.

"-" bedeutet keine Schnittmarken
"N" bedeutet NoAD Schnittmarken
"S" bedeutet Sharemarks Schnittmarken
"*" bedeutet Manuell erstellte oder geänderte Schnittmarken (könnte NoAd oder Sharemarks-Marken sein, die geändert worden sind)

Beispiele:

3016 N M/National Security
1679 * S/CSI: Miami/Drogenwahn
494  - Kinder/_New/Feuerwehrmann Sam/Norman fliegt auf!
1557 S S/Battlestar Galactica/Meuterei auf der Astral Queen

Normalerweise werden nur Aufnahmen mit "*" oder "S" geschnitten, alle andere werden einfach nochmal zur AutoCutter-Queue hinzugefügt (außer CUTNOAD = yes, dann werden auch "N" Aufnahmen geschnitten).

  • ReOrg Queue

Was ist die Idee hinter der ReOrg Queue?

Mein Ziel ist es, die zusätzlichen Festplatten schlafen zu lassen, und VDR kennt deshalb nur die erste Platte (/video). Dafür habe ich die AutoCutter Skripts geschrieben. Aber was ist jetzt, wenn einer der zusätzlichen Festplatten 200GB frei hat und die erste so gut wie voll ist? Dann wäre es Klasse, wenn man Aufnahmen von der ersten auf die andere Platte verschieben könnte. Hier kommt dann ReOrg ins Spiel. In "Normale" vdrconvert Queues kann man nur eine Aufnahme einfügen. Aber in der ReOrg-Queue kann man jedes beliebige Verzeichnis hinzufügen, z.B. "/video/Series". Das ReOrg Script sucht dann unter dieses Verzeichnis nach "*.rec" Verzeichnisse und "behandelt" dann alles was er findet. Man könnte sogar "/video/" hinzufügen um ALLE Aufnahmen neu zu organisieren ;)

Bitte beachtet:
- BITTE SEID VORSICHTIG WENN IHR DIE ReOrg QUEUE BENUTZT!!! Ich habe zwar getestet, aber ich kann keine Garantie geben, das es immer 100% funktioniert! Deshalb sollte ihr nicht damit anfangen "/video/" in die Queue zu legen, sondern erst einzelne Aufnahmen, dann ein Verzeichnis und erst wenn das eine Weile glatt gelaufen ist, dann etwas mehr :)
- ReOrg wird normalerweise keine Aufnahme verschieben, wo die Videodateien auf einer der zusätzlichen Platten liegen, die Ausnahmen sind:
A. wenn Renaming (Umbenennung) benutzt wird, um Aufnahmen auf eine Spezielle Platte zu legen! (Siehe README - "Renaming" für mehr)
B. Die Videofiles sind nicht alle auf die selben Platte. Wenn der VDR normal aufnimmt, dann platziert er die Videodateien auf der Platte mit dem meisten freien Platz. Dies führt dazu, das die Videofiles verstreut werden.
- ReOrg benutzt die "Renaming rules" spezifiziert in autocutter.conf, wenn die für eine Gruppe von Aufnahmen geändert wurden, dann kann man z.B. mit ReOrg alle Aufnahmen auf der neuen Platte verschieben :)
- "Renaming" ändert NICHT den Name einer ungeschnittene Aufnahme, das wird nur bei geschnittene Aufnahmen gemacht!
- Ungeschnittene Aufnahmen werden auch ReOrg(anized) = verschoben!
- Wenn nicht genug Platz auf der Ziel-Platte vorhanden ist, dann wird die Aufnahme nicht verschoben.
- Das "Verschieben" oder "ReOrg" wird so gemacht, wie VDR das auch macht. Die Videodateien werden auf die Platten mit dem meisten freien Platz gelegt. Die Index- und Info-Files liegen immer auf die primären Platte. Die Videofiles werden dann verlinkt auf die Primäre.

Siehe auch REORG_KEEP_PRIMARY_USAGE_LOW, REORG_USEFILO, REORG_ROUNDROBIN im README für mehr.

Hier ein paar Beispiele für das, was man tun kann. - "ReOrg" alle geschnittenen Aufnahmen und verschiebe die Videodateien auf die Platten mit freien Platz (macht Platz auf der primären Platte):

find /video/ -name "%*" -type d -exec /usr/local/vdr/bin/ins2.sh reorg {} \;

- "ReOrg" alle Aufnahmen. Das würde (fast) alle Aufnahmen auf die zusätzlichen Platten verschieben (wenn REORG_KEEP_PRIMARY_USAGE_LOW = yes):

/usr/local/vdr/bin/ins2.sh reorg /video/

- "ReOrg" nur Serien :

/usr/local/vdr/bin/ins2.sh reorg /video/Series


  • ins2.sh hat einen neuen Option "--subdirs"

Dies ist für reccmds.conf gedacht. Nach "--subdirs" kann man die Anzahl Verzeichnisse angeben, die vom Patch entfernt werden sollen. Ein Beispiel:

./ins2.sh --subdirs 2 reorg /video/Series/Monk/2005-12-31.20.12.19.99.rec

Das ergibt den Pfad "/video/Series", der dann zur ReOrg Queue hinzugefügt wird. Damit werden alle Aufnahmen unter "/vide/Series" ReOrganisiert. ACHTUNG!! Vorsichtig damit umgehen - man sollte sich vorher mit der Verzeichnis-struktur vom VDR auseinandersetzen.


  • autocutter-edited.sh - wenn man lieber direkt mit VDR schneidet (Taste 2 während der Wiedergabe) aber trotzdem einige Funktionalitäten von AutoCutter nicht missen möchte, kann man dieses Skript nutzen.

Bei korrekt geschnittenen Aufnahmen wird die original Aufnahme automatisch gelöscht, Sharemarks werden hoch geladen (wenn so konfiguriert) und man kann die ReOrg Queue nutzen oder je nach Name die Aufnahme in andere Queues ablegen, z.B. in dem man mehrere vdr2dvd Queues hat. Siehe auch README und "postaction*.sh" für mehr. Das ist auch der schnellste Weg, wenn man nur 1-2 Aufnahmen hat, die man schneiden möchte :) oder z.B. in Zusammenhang mit CutterQueue. Das Skript versucht exakt das selbe zu tun, was passiert wenn man mit AutoCutter schneidet. Der einzigste Nachteil ist, das die geschnittene Aufnahme immer auf die Primäre Disk landet. Aber dafür gibt es ja ReOrg. Einfach die Default-Zeile in AutoCutter.conf wie dies konfigurieren :

MyDefaults:DEFAULT:noad;sharemarks;autocutter;reorg:/usr/local/bin/noad:-v nice:Upload::

Damit werden die Aufnahmen nach dem Schneiden automatisch zu ReOrg hinzugefügt. ACHTUNG! Bitte auch "etc/nq.sh" anschauen !

  • Für VDR >= 1.3.25 benutze ich jetzt info.vdr für das Ermitteln der unique channel ID von eine Aufnahme.
  • Wenn man jetzt Schnittmarken bei Aufnahmen, die in der Sharemarks-Queue drin sind, per Hand ändert oder setzt, dann werden diese Aufnahmen beim nächsten Lauf automatisch in die nächste Queue verschoben.

Der Grund ist, das wenn man sich schon die Zeit nimmt Marken zu ändern, wäre es doof, wenn sie von einen Sharemarks-Download überschrieben werden ;)

  • Neue Option CLEANUP_ALL_EMPTY - siehe README
  • AC_SAVEFREESPACE gibt es nicht mehr - wer nicht weis, was es ist, sollte sich auch auch keine Gedanken machen ;)


Was ist neu in 0.3.0 (im vergleich zu 0.1.x)

  • Ich habe sehr viel geändert bzw. neu geschrieben, deshalb der Sprung zu 0.3.x.
  • README aufgeteilt in INSTALL und README

INSTALL sollte jetzt viel übersichtlicher sein - so das jeder damit zurecht kommt.

  • VDR >= 1.3.25 Unterstützung (info.vdr).
  • Umbenennung von Aufnahmen während des Schneidens (Renaming).

Beispiel : meine Filme werden im Verzeichnis /_M aufgenommen (damit man neue schnell findet) und beim Schneiden dann nach /Movie verschoben

  • Kontrolle darüber auf welche Partitionen welche Aufnahme geschnitten wird = Zielpartition (auch unter Renaming)

Beispiel : alle Aufnahmen die "Star Trek" enthalten, sollen auf /video1 "landen".

  • Multidisk Optimierung.

AutoCutter konnte auch früher mit mehrere Partitionen (Platten) umgehen. Jetzt funktioniert es aber besser und es gibt mehr Optionen.

  • Anti Wärme und Lärm Option.

Man kann VDR so konfigurieren, das es nur eine Platte (oder mehrere) zum Aufnehmen nutzt und dann eine beliebige Anzahl benutzen zum Speichern von geschnittene Aufnahmen :) D.h. nur die Platte(n), die zum Aufnehmen benutzt wird, muß an sein. Die restlichen werden im Schlafmodus versetzt und werden nur aufgeweckt bei Wiedergabe einer Aufnahme auf diese Platte oder wenn auf sie was geschnitten wird :D Damit vermindere ich die Wärmeentwicklung enorm - und spare auch noch Strom ;) -- Wir können jetzt die Partitionen in zwei verschiedene Wege füllen : -- die nächste Aufnahme kommt auf die Platte mit dem meisten freien Platz. -- Die Platten werden einer nach dem anderen gefüllt und die Reihenfolge bestimmt ihr. Für mehr siehe README - suche nach "Multidisk Optimization".

  • Änderung von "Automatisches löschen der alten Aufnahmen nach erfolgreiches Schneiden". Jetzt wird anhand von marks.vdr berechnet, wie lang die geschnittene Aufnahme sein sollte und wenn das übereinstimmt, dann wird die alte Aufnahme gelöscht (aber nur wenn DELCUTREC=yes). Ich habe bisher nie Probleme mit vdrcutter2 gehabt - entweder war alles OK oder er hat 2-3 mal sofort am Anfang abgebrochen - dann konnte VDR die Aufnahme auch nicht schneiden.
  • Bitte benutzt meine ins2.sh and cap2.sh statt ins.sh und cap.sh von vdrconvert - sonst passiert nicht das was ihr erwartet ;)
  • autocutter.conf

-- noad.conf ist umbenannt in autocutter.conf und ins $HOME/.vdrconvert verschoben worden. -- USEAUTOCUT, USESHAREMARKS, NOADCMD and NOADOPTIONS werden nicht mehr benutzt - sie sind ersetzt worden durch eine "DEFAULT" Zeile in autocutter.conf -- autocutter.conf wird nach mehrere Zeilen die auf der Aufnahme passen "abgesucht" und dann werden die Optionen zusammengeführt. Siehe README : "TestACLine.sh" und "Description of autocutter.conf" für mehr.

  • vdrcutter2 wird jetzt standardmäßig benutzt. Benutzt überhaupt jemand AutoCutter mit "USEVDRCUTTER2=no" (AutoCutter fernbedient VDR) ?
  • Enthaltener etc/nq.sh angepasst - funktioniert jetzt besser mit Systemen, die nicht 24x7 online sind.
  • summary.vdr backup bei mehrere Partitionen. Siehe README für mehr.
  • ActivateMarks.sh - gab es schon länger aber ich wollte es mal erwähnen - Siehe README für mehr.
  • VDRconvert 0.1.x und vdrconvert 0.2.x Unterstützung
  • Sharemarks incl. Offline Unterstützung !!

Wer ISDN hat oder einfach nicht immer online sein möchte, kann jetzt entschieden wann die Marken hoch und heruntergeladen werden.

  • Wenn man mehrere /video Partitionen hat dann legt VDR beim Aufnehmen/Schneiden die 00?.vdr Dateien auf den Partitionen ab, wo er Platz findet. Wenn aber eine Festplatte kaputt geht dann sind sehr viele Aufnahmen defekt. Mein Skript legt immer alles auf eine Partition ab - und zwar der mit dem meisten Platz.
  • showqueues.sh - ein Skript was anzeigt was in ALLE vdrconvert Queues drin ist und auch die Namen etwas schöner aufbereitet :).
  • del.sh, ins.sh, cap.sh von vdrconvert wurden geändert wegen verschiedene Änderungen und die Anzeige wurde "verbessert". Heissen bei mir jetzt del2.sh, ins2.sh und cap2.sh
  • nach der Aufnahme wird automatisch die Aufnahme in der noad queue gelegt und abgearbeitet - es kommen Nachrichten, wenn etwas schief gelaufen ist oder erfolgreich war.
  • kann VDR "fernsteuern" um Aufnahmen zu schneiden. D.h. bevor man zu Bett geht, kann man den Schneidevorgang anschieben und am nächsten Morgen ist alles geschnitten :)
  • Jetzt kann man auch vdrcutter2 nutzen, um Aufnahmen zu schneiden ohne VDR. D.h. man kann jederzeit den Schneidevorgang laufen lassen  :D
  • Meldungen die ausgegeben werden können angepasst werden oder komplett "abgeschaltet" werden (auf "NO" setzen)

Unter etc/vdrconvert.env findet ihr Einstellungen für deutsche Nachrichten, Standard ist Englisch.

Links

Aktueller AutoCutter 0.3.1 download + Doku