VDRSeriesTimer.pl
Inhaltsverzeichnis |
News
- 28.09.2009: Die Entwicklung ist langsam, aber nicht stehengeblieben. Ich arbeite an einem kompletten rewrite der das ganze einfacher und schneller machen wird. vejoun 14:32, 28. Sep 2009 (CEST)
- 28.09.2009: 400 Episodenlisten.
- 10.06.2008: Version 0.3.0-beta6
- 30.12.2007: Version 0.2.6
- 30.06.2007: Version 0.2.5; 234 Episodenlisten.
Beschreibung
Autor: Mike Constabel
Dieses Script wird über die epgsearchuservars von epgsearch aufgerufen und erweitert die zu programmierenden Timer um Informationen wie Staffelnummer, Episodennummer etc.
Beispiel: Normalerweise würde ein programmierter Timer z.B. so aussehen
Serie~Star Trek: Das nächste Jahrhundert~Indiskretionen
Dieses Script erzeugt dies:
Serie~Star Trek: Das nächste Jahrhundert~07x02 - 154. Indiskretionen
Die Informationen bezieht das Script aus Episodenlisten, von denen bereits viele bereitstehen und die auch sehr einfach erzeugt und erweitert werden können. Die Episodenlisten sind dieselben wie die von dem Projekt Rec rename season serie verwendeten.
Die Möglichkeiten, aber auch die Konfigurationsoptionen, sind umfangreich und werden hier nach und nach erläutert.
Softwareanforderungen
- vdr >= 1.4.0
- epgsearch >= 0.9.19
- Perl
- Perl-Module Getopt::Long, Pod::Usage, File::Basename, Text::LevenshteinXS
Installation via CPAN:
$ perl -MCPAN -e 'install <Paketname>'
Unter Debian: apt-get install perl-modules libgetopt-mixed-perl; perl -MCPAN -e 'install Text::LevenshteinXS'
Installation
- HISTORY lesen
- Das Script in den $PATH kopieren, z.B. nach /usr/local/bin/
- Einmal unter dem User, unter dem VDR läuft, aufrufen mit VDRSeriesTimer.pl --options
Es wird eine globale conf erstellt: ~/.VDRSeriesTimer.conf - VDRSeriesTimer.pl --man lesen
- In der Datei ~/.VDRSeriesTimer.conf die Variable ListsDir auf den Pfad zu den Episodenlisten setzen
- VDRSeriesTimer.pl --options zeigt die aktuellen Optionen
VDRSeriesTimer.pl --lists zeigt die gefundenen Listen - /<vdr-conf-dir>/plugins/epgsearch/epgsearchuservars.conf editieren (oder anlegen wenn nicht vorhanden) und dies hinzufügen:
%Season%=system(VDRSeriesTimer.pl,--title %Title% --subtitle %Subtitle% --episode %Episode% --category %Category% --genre %Genre% --date %date% --time %time% --channel %chnr% --timet %time_lng%) %DateVar%=%time_w% %date% %time% %SerieSD%=%Subtitle% ? %Subtitle% : %DateVar% %SerieVar1%=Serie~%Title%~%SerieSD% %Serie%=%Season% ? %Season% : %SerieVar1%
Sollte man kein erweitertes EPG, z.B. von tvmovie oder hörzu, haben und somit keine Episodennummer etc, reicht auch die Kurzform:
%Season%=system(VDRSeriesTimer.pl,--title %Title% --subtitle %Subtitle% --date %date% --time %time% --channel %chnr% --timet %time_lng%) %DateVar%=%time_w% %date% %time% %SerieSD%=%Subtitle% ? %Subtitle% : %DateVar% %SerieVar1%=Serie~%Title%~%SerieSD% %Serie%=%Season% ? %Season% : %SerieVar1%
Im Suchtimer als Verzeichnis nun die Variable %Serie% verwenden. Möchtest Du diese Variable mit der Taste Auswahl auswählen können, musst Du diese Variable mit in die Datei epgsearchdirs.conf schreiben, siehe man epgsearchdirs.conf.
Weitere Informationen wie auch eine Erklärung aller Optionen finden sich in der integrierten man-Page: VDRSeriesTimer.pl --man
Beispiele
Von der Kommandozeile mit -v aufgerufen, damit man auch etwas sieht:
1. Suche den Subtitle anhand der Episodennummer
CompareSubtitle = yes KeepEPGSubtitle = no
$ VDRSeriesTimer.pl --title 'Star Trek: Das nächste Jahrhundert' --subtitle 'Angriff der Borg' --episode '153' -v File <Star Trek: Das nächste Jahrhundert> is like title <Star Trek: Das nächste Jahrhundert> with a distance from 0 (max 7), using file </etc/vdr.conf/plugins/epgsearch/episodes/Star Trek: Das nächste Jahrhundert.episodes> Verbose: 1 Found "153" is equal to the given "153", so using <07 1 153 Angriff der Borg (Teil 2)> Script VDRSeriesTimer.pl info: Start 1162114896; End: 1162114897; Runs for 1s; Changes count: 0; Title: <Star Trek: Das nächste Jahrhundert>; Subtitle: <Angriff der Borg> Result: Serie~Star Trek: Das nächste Jahrhundert~07x01 - 153. Angriff der Borg (Teil 2)
2. Suche die Nummern anhand des Subtitles
CompareEpisode = yes KeepEPGSubtitle = no
$ VDRSeriesTimer.pl --title 'Star Trek: Das nächste Jahrhundert' --subtitle 'Angriff der Borg, Teil 2' --episode '153' -v File <Star Trek: Das nächste Jahrhundert> is like title <Star Trek: Das nächste Jahrhundert> with a distance from 0 (max 7), using file </etc/vdr.conf/plugins/epgsearch/episodes/Star Trek: Das nächste Jahrhundert.episodes> Verbose: 1 Run 1: Found "Angriff der Borg (Teil 1)", changed to "Angriff der Borg (Teil 1)", is like the given "Angriff der Borg, Teil 2", changed to "Angriff der Borg, Teil 2", with a distance from 4 (max 5), so using <06 26 152 Angriff der Borg (Teil 1)> Run 1: Found "Angriff der Borg (Teil 2)", changed to "Angriff der Borg (Teil 2)", is like the given "Angriff der Borg, Teil 2", changed to "Angriff der Borg, Teil 2", with a distance from 3 (max 5), so using <07 1 153 Angriff der Borg (Teil 2)> Run 2: Found "Angriff der Borg (Teil 1)", changed to "Angriff der Borg 1", is like the given "Angriff der Borg, Teil 2", changed to "Angriff der Borg 2", with a distance from 1 (max 4), so using <06 26 152 Angriff der Borg (Teil 1)> Run 2: Found "Angriff der Borg (Teil 2)", changed to "Angriff der Borg 2", is like the given "Angriff der Borg, Teil 2", changed to "Angriff der Borg 2", with a distance from 0 (max 4), so using <07 1 153 Angriff der Borg (Teil 2)> Script VDRSeriesTimer.pl info: Start 1162115051; End: 1162115056; Runs for 5s; Changes count: 0; Title: <Star Trek: Das nächste Jahrhundert>; Subtitle: <Angriff der Borg, Teil 2> Result: Serie~Star Trek: Das nächste Jahrhundert~07x01 - 153. Angriff der Borg (Teil 2)
Parameter
$ VDRSeriesTimer.pl -h Usage: VDRSeriesTimer.pl ( -c=<> | -ec=<> ) --t=<> (--sub=<> | --ep=<>) [options...] Help options: --help | -h | -? brief help message --man full documentation Needed options: At least one of them: --title | -t series title --subtitle | -s series subtitle --lists | -l lists episodes files --options print options/variables and exit Optional options: --episode | -ep overall episode number --formatprefix | -fp First part of the output string, default: "%D~%T~" --format | -f Output format, default: "%sx%e - %n. %S" --formatspacer | -fs How to seperate the subtitles if there is more than one, default: " / " %T - Title %S - Subtitle %s - Season number %e - Episode number %n - Episode number over all %D - Directory %C - Category %G - Genre Example: Smallville~05x10 - 098. Lex gegen Jonathan --category category --genre genre --date date --time time --timet timestamp --channel channel number --useshorttitle | -short use / don't use the SHORT keyword in episode list, defaults to "use" --nouseshorttitle | -noshort --verbose | -v verbosity, increasing by using it more than one times, up to three times --dry-run | -dry don't change EPG via SVDRP or any file --version show version number --upgrade upgrade old conf's --forceupgrade upgrade all conf's, never mind which version they have Options: -help Print a brief help message and exits. -man Prints the manual page and exits.