Rec rename season serie

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

News

Beschreibung

Autor: Alexander Richter

  • VdrRecordSE.pl [-h -s -p] [-c {ConfigDir] [-i VideoDir]

Beispielaufruf :

  • VdrRecordSE.pl -c /home/alex/meine_episoden_dateien/ -i /video/ -p

Dieses Script fügt automatisch in den Aufnahmeverzeichnissen von Serien die zusätzliche numerische Information über Staffel- und Folgennummer der Aufnahme ein.

Wozu das?

Bei der Aufnahme von vielen Serien (Simpsons usw.) verliert man schnell den Überblick über die zeitliche Einordnung der Serien. Bei vielen Serien ist die chronologische Sortierung unabdingbar, um alles im richtigen zeitlichen Ablauf sehen zu können.

Wie sieht das aus:

Die numerischen Infos bezieht das Script aus externen Episodenlisten, die nach folgendem Muster aufgebaut sind:

Staffel  Folge   lfd. Nr.  Titel
01       21      21        Ich bin die Episode sowieso
01       22      22        Ich bin die nächste Episode

Für den Serientitel kann auch ein Umbennungsziel angegeben werden, z.B. um lange Serientitel zu kürzen.

Ein generelles Beispiel :

alt: /video/Star_Trek:_Deep_Space_Nine/Das_Melora-Problem
neu: /video/ST-DSN/2.06-Das_Melora-Problem

Serien, die nicht zugeordnet werden können, wie auch alle anderen Aufnahmen bleiben wie sie sind.

Status

alpha.

Softwareanforderungen

  • Perl >= 5.8.6
  • Perl Modul String::Approx
  • vdr >= 1.4.0

Installation

Zuerst ladet ihr euch das Script und die episodes-Dateien herunter.

Das Script VdrRecordSE.pl am besten in ein /bin verzeichnis kopieren (/usr/local/bin) und ausführbar machen mit:

$ chmod +x /usr/local/bin/VdrRecordSE.pl

alle Episoden Dateien sollten zusammen in ein Verzeichnis, welches ist egal, voreingestellt im Script ist:

/etc/vdr/plugins/

Für das unscharfe Suchen und Vergleichen brauchen wir ein Zusatzmodul (String::Approx) aus dem CPAN, mit

$ perl -MCPAN -e 'install String::Approx' 

ist dies schnell vom CPAN geholt und installiert.

Bedienung

Parameter

VdrRecordSE.pl [-h -s -p] [-c {ConfigDir] [-i VideoDir]

Parameter Beschreibung
-h help : Zeige die eingebaute Hilfe an, sonst nix
-s silent : Unterdrücke alle Printausgaben des Scripts, sinnvoll bei Hintergrundanwendung innerhalb des VDR etwa
-p pretend : führe keine Änderungen im Filesystem durch, zeigt nur an, was das Script tun würde
-c config Dir : Verzeichnis, in dem sich die .episoden Dateien der verschiedenen Serien befinden

default : /etc/vdr/plugins/

-i Video Dir : Ort des VDR - Videoverzeichnisses

default : /video/

-o Belasse den originalen Serien und Episoden Titel , wie er ist, nur ergänzt um die numerischen Daten
  • ohne Option -o --> Serien Short Ersetzung und Leerzeichen durch "_" , mit Option -o --> Original
  • Beispiel :
mit -o :		[cut]02.15-Totgebur t
ohne -o :		[cut]02.15-Totgebur_t
-f Format der Ausgabe "%S %E %N %T" , damit kann man ähnlich printf das Format der Ausgabe ändern :
  • %S Nummer der Staffel oder
  • %0S Nummer der Staffel mit gewünschter führender Null ( beachte hier eine "Null" kein Buchstabe "O" )
  • %E Nummer der Episode oder
  • %0E Nummer der Episode mit gewünschter führender Null ( beachte hier eine "Null" kein Buchstabe "O" )
  • %N fortlaufende Nummer durch alle Episoden oder
  • %0N fortlaufende Nummer durch alle Episoden mit gewünschter führender Null ( beachte hier eine "Null" kein Buchstabe "O" )
  • %T Der Titel der Episode
  • Default : -f "%S.%E-%T"
vorher  : CSI_Den_Tätern_auf_der_Spur/Wer_zuletzt_lacht
nachher : CSI_Den_Tätern_auf_der_Spur/3.20-Wer zuletzt lacht
  • Beispiele :
-f "%N_%S.%E-%T"
vorher  : CSI_Den_Tätern_auf_der_Spur/Wer_zuletzt_lacht
nachher : CSI_Den_Tätern_auf_der_Spur/66_3.20-Wer zuletzt lacht
-f "%S-%E-(%N)---%T"
vorher  : CSI_Den_Tätern_auf_der_Spur/Wer_zuletzt_lacht
nachher : CSI_Den_Tätern_auf_der_Spur/3-20-(66)---Wer zuletzt lacht
-f  "%0S---%0E---%N---%T"
vorher  : Medium/[cut]Totgeburt
nachher : Medium/[cut]02---15---23---Totgeburt

Beispielaufruf :

$ VdrRecordSE.pl -c /home/alex/meine_episoden_dateien/ -i /video/ -f "%N_%S.%E-%T" -p -o

Das Script wird auf der Kommandozeile ausgeführt, ein Aufruf mit -p (simulation) erzeugt:

alex@alex ~/scripting/perl/VdrTimer_make_SeasonEpisode $ ./VdrRecordSE.pl -p
-p erkannt !!! Änderungen werden nur angezeigt, aber nicht durchgeführt !

VdrRecordSE.pl Version 01.10.2006

Folgende Episodenlisten gefunden :
- CSI-Den_Tätern_auf_der_Spur
- Charmed-Zauberhafte_Hexen
- Crossing Jordan - Pathologin mit Profil
- Die_Simpsons
- Raumschiff_Enterprise-Das_nächste_Jahrhundert
- Rekordjagd
- Star_TreK-Deep_Space_Nine
- Wettlauf mit dem Tod

vorher  : CSI_Den_Tätern_auf_der_Spur/Wer_zuletzt_lacht
nachher : CSI_Den_Tätern_auf_der_Spur/3.20-Wer_zuletzt_lacht

Wenn keine Episodenlisten gefunden werden sieht es so aus:

alex@alex ~/scripting/perl/VdrTimer_make_SeasonEpisode $ ./VdrRecordSE.pl -p -i /video/ -c /etc/vdr/
-p erkannt !!! Änderungen werden nur angezeigt, aber nicht durchgeführt !

VdrRecordSE.pl Version 01.10.2006

Folgende Episodenlisten gefunden:

Sonstiges

Probleme

  • Wenn man eine Episode nach dem Umbenennen schneidet, wird die Staffel und Episode nochmal vorangestellt.
    Beispiel: Aufnahme "Lost/Dave" wird beim ersten Durchlauf umbenannt zu "Lost/02.18-Dave". Nach dem schneiden wird daraus "Lost/%02.18-Dave". Beim zweiten Durchlauf macht das Skript dann "Lost/02.18-%02.18-Dave" daraus.
  • Bei Verwendung von mehreren Video-Verzeichnissen (z.B. /video0, /video1, etc.) werden nur die Verzeichnisse unter /video0 umbenannt unter /video1+ behalten den alten Namen. Das führt dazu, dass die in weiteren Video-Verzeichnisse ausgelagerten Daten beim Löschen einer Aufnahmen nicht mehr gelöscht werden.

Tipps

  • Der User, der das Script ausführt, muss im /video verzeichnis des VDR Screibrechte haben, sonst kann nix umbenannt werden
  • Wenn der Aufruf des Scripts ein "No such file or directory" ausgibt, hilft es, den Befehlsinterpreter mit anzugeben :
$ perl /Pfad zum Script/VdrRecordSE.pl OPTIONEN

Wunschliste

Snapshot

Links

Episoden Dateien

  • Die Dateien enden auf ".episodes"
  • Die episodes-Dateien gibt es per subversion vom Entwicklerserver

Das Format der Dateien sieht wie folgt aus:

  • Kommentare werden durch "#" eingeleitet
  • Schlüsselwörter beginnen mit einer "#" + Leerzeichen + SCHLÜSSELWORT
  • Die Liste selbst besteht aus den Feldern Staffelnummer, Folgennummer, lfd. Nummer und dem Titel der Folge
  • Die Felder sind durch TAB getrennt
  • Die Staffelnummer sollte eine führende Null haben
01     1       1       Titel der Staffel 1, Folge 1
...
01     21      21      Staffel 1, Folge 21
01     22      22      Staffel 1, Folge 22
02     1       23      Noch ein Titel
02     2       24      Und noch einer

Schlüsselwörter

Folgende Schlüsselwörter sind möglich:

SHORT - Angabe eines kürzeren Titels

# Alias - Die Agentin.episodes
# SHORT Alias

Korrekterweise steht also in einer episodes-Datei mit dem Namen Das große Beispiel.episodes:

# SHORT Beispiel
01     21      21      Ich bin die Episode sowieso
01     22      22      Ich bin die nächste Episode