VdrTransXvid

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Probleme / Behebung)
K
 
(28 dazwischenliegende Versionen von 12 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
{{Box Hinweis|Die Entwicklung von VdrTransxvid wurde zugunsten [[VdrTranscode]] ( basierend auf HandbrakeCLI ) eingestellt.}}
 +
 
==Beschreibung==
 
==Beschreibung==
'''Autor:''' Alexander Richter - '''last Version upload 31.05.2006'''  
+
'''Autor:''' Alexander Richter  
 +
 
 +
- '''last stable Version upload 31.12.2008'''  
 +
 
 +
- '''last alpha Version upload 24.09.2009'''
 +
 
 +
== KurzInfo zum Snapshot 31.12.2008==
 +
Download unten unter Snapshots ...
 +
 
 +
NEW :
 +
- Opt. Mehrere Tonspuren im Xvid Datei
 +
- Opt. AC3 Ton zusätzlich im xvid Datei
 +
- Opt. eingerenderter Text am Beginn, wie viele Audiospuren verfügbar
 +
- konfigurierbare Matrizze, der zu erreichenden Größen mit allen Kombinationen der Audiospuren
 +
- Statistik, über Renderframeraten und Renderzeiten
 +
 
 +
vdrtransxvid.conf konfigurieren
 +
install.pl ausführen.
 +
html Übersichten sind erst einmal deaktiviert
 +
 
 +
gebraucht wird:
 +
perl
 +
vdr >1.4.5
 +
transcode mit xvid
 +
mplex
 +
projectx ohne X
 +
 
 +
ausführen als normaler user :
 +
- Movie im vdr markieren -> befehle -> für vdrtransxvid markieren
 +
- $ vdr2mpgV4.pl ( zum Umsetzen in mpg )
 +
- $ mpg_2_avi_V4.pl --do ( batchverarbeitung anstoßen )
 +
 
 +
zusätzlich möglich :
 +
- mpg_2_avi_V4.pl --show ( zum nachschauen, was ansteht )
 +
- mpg_2_avi_V4.pl --auto /FULLPATH/my_movie.mpg --size 300 ( neu xvid größe per hand setzen )
 +
- mpg_2_avi_V4.pl --auto /FULLPATH/my_movie.mpg --audio 0 ( audiokomprimierung abschalten -- Musik )
 +
 
 +
PS: eventuell müssen Pfade angepasst werden, der Snapshot läuft hier seit 11/2007 stabil.
 +
 
 +
Beispiel für eingerenderten Text :
 +
 
 +
http://de.youtube.com/watch?v=NLO-mtCaMm4
 +
 
 +
Problemlösung für :
 +
!!! ProjectX nicht gefunden / ausführbar ... bitte ändern ...
 +
 
 +
als "/usr/bin/projectx" speichern und ausführbar machen mit chmod a+x :
 +
 
 +
#!/bin/sh
 +
java -Djava.awt.headless=true -jar /usr/local/bin/ProjectX.jar $@
  
 
VdrTransXvid ist eine Sammlung von mehreren Perlscripten, um aus geschnittenen
 
VdrTransXvid ist eine Sammlung von mehreren Perlscripten, um aus geschnittenen
Zeile 38: Zeile 89:
  
 
Bitte an eigene Bedürfnisse anpassen, ich habe transcode übersetzt mit :
 
Bitte an eigene Bedürfnisse anpassen, ich habe transcode übersetzt mit :
$ ./configure --enable-a52 --enable-mjpegtools --enable-avifile --enable-libmpeg3 --enable-gtk --enable-imagemagick
+
$ ./configure --enable-a52 --enable-mjpegtools --enable-avifile --enable-libmpeg3 --enable-gtk --enable-imagemagick --enable-xvid --enable-x264 --enable-faac
  
 
* '''mjpegtools'''      ich habe mjpegtools-1.8.0-r1, daraus wird mplex gebraucht
 
* '''mjpegtools'''      ich habe mjpegtools-1.8.0-r1, daraus wird mplex gebraucht
 
* '''VDR'''            mind. 1.3.17
 
* '''VDR'''            mind. 1.3.17
 
* '''avinfo''' für die HTML Seitenerstellung, wer das nicht will, kann avinfo auch weglassen, ich habe Version 1.0 alpha 15
 
* '''avinfo''' für die HTML Seitenerstellung, wer das nicht will, kann avinfo auch weglassen, ich habe Version 1.0 alpha 15
 
  
 
==Konfiguration und Installation==
 
==Konfiguration und Installation==
Zeile 65: Zeile 115:
 
  Bin_Install_Dir = "/usr/local/bin/"
 
  Bin_Install_Dir = "/usr/local/bin/"
 
  #-----------------------------------------------------------------------------
 
  #-----------------------------------------------------------------------------
  # wo liegen die VDR Files , aka verzeichnis /video
+
  # wo liegen die VDR Dateien , aka verzeichnis /video
 
  # kein abschliessenden backslash !!!
 
  # kein abschliessenden backslash !!!
 
  InDir = "/video"
 
  InDir = "/video"
Zeile 72: Zeile 122:
 
  Loc_reccmdsconf = "/video/"
 
  Loc_reccmdsconf = "/video/"
 
  #-----------------------------------------------------------------------------
 
  #-----------------------------------------------------------------------------
  # wo sollen die fertigen mpg und avi files hin ?
+
  # wo sollen die fertigen mpg und avi Dateien hin ?
 
  OutDir = "/home/alex/Video_Bearbeitung_mpg/"
 
  OutDir = "/home/alex/Video_Bearbeitung_mpg/"
 
  #-----------------------------------------------------------------------------
 
  #-----------------------------------------------------------------------------
Zeile 132: Zeile 182:
 
  OK :    Konfigurationsdatei neu angelegt : /home/alex/.vdrtransxvid.conf</br>
 
  OK :    Konfigurationsdatei neu angelegt : /home/alex/.vdrtransxvid.conf</br>
 
  ------------------------------------------------------------------------------
 
  ------------------------------------------------------------------------------
  INFO : Noch ein paar schnelle Tips zum beginnen :
+
  INFO : Noch ein paar schnelle Tipps zum beginnen :
 
  ------------------------------------------------------------------------------
 
  ------------------------------------------------------------------------------
  1. Schneiden der Files im VDR, kein Schneiden ausführen nötig, Schnittmarken im orig. File langen völlig
+
  1. Schneiden der Dateien im VDR, kein Schneiden ausführen nötig, Schnittmarken im orig. Datei langen völlig
  2. Markieren der geschnittenen Files innerhalb des VDR mit "befehle" im  Aufnahmeverzeichnis
+
  2. Markieren der geschnittenen Dateien innerhalb des VDR mit "Befehle" im  Aufnahmeverzeichnis
 
  --> VdrTransXvid -> als geschnitten markieren
 
  --> VdrTransXvid -> als geschnitten markieren
  3. außerhalb des VDR auf der Kommadozeile : "vdr2mpgV3.pl" ausführen
+
  3. außerhalb des VDR auf der Kommandozeile : "vdr2mpgV3.pl" ausführen
  4. außerhalb des VDR auf der Kommadozeile : "mpg_to_avi_V2.pl --showbatch" zum Ansehen der anstehenden Files
+
  4. außerhalb des VDR auf der Kommandozeile : "mpg_to_avi_V2.pl --showbatch" zum Ansehen der anstehenden Dateien
  5. außerhalb des VDR auf der Kommadozeile : "mpg_to_avi_V2.pl --dobatch" zum transcodieren der anstehenden Files</br>
+
  5. außerhalb des VDR auf der Kommandozeile : "mpg_to_avi_V2.pl --dobatch" zum transcodieren der anstehenden Dateien</br>
 
  viel Spaß
 
  viel Spaß
  PS : wenn alles spielt, probier alles auf einmal : "vdr2mpgV3.pl &&  mpg_to_avi_V2.pl --dobatch"
+
  PS : wenn alles spielt, probiere alles auf einmal : "vdr2mpgV3.pl &&  mpg_to_avi_V2.pl --dobatch"
 
  ------------------------------------------------------------------------------
 
  ------------------------------------------------------------------------------
  
Zeile 153: Zeile 203:
 
* Wenn die HTML Erfassung aktiviert ist, wird das Grundgerüst hierfür kopiert  
 
* Wenn die HTML Erfassung aktiviert ist, wird das Grundgerüst hierfür kopiert  
 
* aus der Konfigurationdatei vdrtransxvid.conf wird eine bereinigte im Homeverzeichnis generiert ( /YOUR_HOME/.vdrtransxvid ), die mit führendem Punt nicht sichtbar ist. Diese kann man später noch editieren, einfacher ist es wohl, die vdrtransxvid.conf im aktuellen entpackten verzeichnis zu nehmen und anschließend nochmal ./install.pl laufen zu lassen
 
* aus der Konfigurationdatei vdrtransxvid.conf wird eine bereinigte im Homeverzeichnis generiert ( /YOUR_HOME/.vdrtransxvid ), die mit führendem Punt nicht sichtbar ist. Diese kann man später noch editieren, einfacher ist es wohl, die vdrtransxvid.conf im aktuellen entpackten verzeichnis zu nehmen und anschließend nochmal ./install.pl laufen zu lassen
* zum Schluß dann noch ein paar Tips für Eilige
+
* zum Schluß dann noch ein paar Tipps für Eilige
  
 
Soweit so gut, werdet wieder normaler User ( Ctrl-D ).
 
Soweit so gut, werdet wieder normaler User ( Ctrl-D ).
Zeile 187: Zeile 237:
  
 
  ------------------------------------------------------------------------------
 
  ------------------------------------------------------------------------------
  ° Alle anstehenden Files nochmal zum abnicken, [Enter] für weiter [Ctrl-C] für abrechen :
+
  ° Alle anstehenden Dateien nochmal zum abnicken, [Enter] für weiter [Ctrl-C] für abrechen :
 
  ------------------------------------------------------------------------------
 
  ------------------------------------------------------------------------------
 
  ° Final_Call
 
  ° Final_Call
Zeile 226: Zeile 276:
 
  $ mpg_to_avi_V2.pl --dobatch
 
  $ mpg_to_avi_V2.pl --dobatch
  
Nach einer Weile, habt ihr die mpg und avi Files in eurem Zielverzeichnis, im VDR Aufnahmeverzeichnis ist der Prefix von [cut] auf [del] gändert, um die Übersicht zu behalten, was geschnitten ist und was schon transcodiert.
+
Nach einer Weile, habt ihr die mpg und avi Dateien in eurem Zielverzeichnis, im VDR Aufnahmeverzeichnis ist der Prefix von [cut] auf [del] gändert, um die Übersicht zu behalten, was geschnitten ist und was schon transcodiert.
  
 
==Täglicher Gebrauch==
 
==Täglicher Gebrauch==
Zeile 237: Zeile 287:
 
  $ vdr2mpgV3.pl && mpg_to_avi_V2.pl --dobatch
 
  $ vdr2mpgV3.pl && mpg_to_avi_V2.pl --dobatch
  
* wenn alles durch ist, avi File anschauen, danach Löschen der VDR-Aufnahme und des Mpg-Files
+
* wenn alles durch ist, avi File anschauen, danach Löschen der VDR-Aufnahme und des Mpg-Dateien
* verschieben des Avi-Files in auf meine Archiv-Festplatte(n)
+
* verschieben des Avi-Dateien in auf meine Archiv-Festplatte(n)
  
 
== Html Übersicht erstellen==
 
== Html Übersicht erstellen==
Zeile 288: Zeile 338:
 
  ###################################################################
 
  ###################################################################
 
         HAUPTMENÜ</br>
 
         HAUPTMENÜ</br>
  (0)    Zeige Stapelverarbeitung Files
+
  (0)    Zeige Stapelverarbeitung Dateien
 
  (1)    Konvertiere einen gemuxten Mpg-File in mpeg4
 
  (1)    Konvertiere einen gemuxten Mpg-File in mpeg4
  (2)    Setze neu oder ändere Files für Stapelverarbeitung ( nur für gemuxten  Mpgfile )</br>
+
  (2)    Setze neu oder ändere Dateien für Stapelverarbeitung ( nur für gemuxten  Mpgfile )</br>
 
  (4)    Führe Stapelverarbeitung aus</br>
 
  (4)    Führe Stapelverarbeitung aus</br>
 
  (5)    Exit
 
  (5)    Exit
Zeile 310: Zeile 360:
 
  FRAGE : Frame Bereich eingeben [ 200-300 oder 500 / ENTER für 150683 ] :</br>
 
  FRAGE : Frame Bereich eingeben [ 200-300 oder 500 / ENTER für 150683 ] :</br>
 
  --->    Codiere alle Frames</br>
 
  --->    Codiere alle Frames</br>
  FRAGE : Standart Ausgabegrösse 700 Mbyte [ Enter / neuer wert (1400) ] :</br>
+
  FRAGE : Standard Ausgabegrösse 700 Mbyte [ Enter / neuer wert (1400) ] :</br>
 
  --->    bleibt bei 700 Mbyte</br>
 
  --->    bleibt bei 700 Mbyte</br>
 
  FRAGE : Mpeg4 Codec auswählen [ ffmpeg=1 , Xvid4=2 , divx5=3 (default ist xvid) ] :</br>
 
  FRAGE : Mpeg4 Codec auswählen [ ffmpeg=1 , Xvid4=2 , divx5=3 (default ist xvid) ] :</br>
Zeile 331: Zeile 381:
 
  -Erstellen einer der Infodatei für spätere Stapelverarbeitung
 
  -Erstellen einer der Infodatei für spätere Stapelverarbeitung
 
  $ mpg_to_avi_V2.pl --auto /FULLPATH/my_movie.mpg</br>
 
  $ mpg_to_avi_V2.pl --auto /FULLPATH/my_movie.mpg</br>
  - Zeige alle zur Stapelverarbeitung anstehenden Files :  
+
  - Zeige alle zur Stapelverarbeitung anstehenden Dateien :  
 
  $ mpg_to_avi_V2.pl --showbatch</br>
 
  $ mpg_to_avi_V2.pl --showbatch</br>
 
  - Führe die Stapelverabeitung transcodieren durch :
 
  - Führe die Stapelverabeitung transcodieren durch :
Zeile 352: Zeile 402:
 
  content/main/Filme/Mystic_Horror/Demonlover_uncut</br>
 
  content/main/Filme/Mystic_Horror/Demonlover_uncut</br>
 
  - erstellt 5 Previewbilder und ein Hauptpreviewbild
 
  - erstellt 5 Previewbilder und ein Hauptpreviewbild
  - ermittlet mittels avinfo technische Daten des Avifiles
+
  - ermittlet mittels avinfo technische Daten des Avi-Dateien
 
  - parst aus vorhanden epg.txt Dateien den Inhalt und fügt ihn in die Html's ein
 
  - parst aus vorhanden epg.txt Dateien den Inhalt und fügt ihn in die Html's ein
  - überschreibt keine vorhandenen html und jpg Files
+
  - überschreibt keine vorhandenen html und jpg Dateien
 
  - erstellt automatisch leftframe und topframe Linklisten mikt allen relevanten HTML Codes
 
  - erstellt automatisch leftframe und topframe Linklisten mikt allen relevanten HTML Codes
  - erstellt eine Top 10 Liste der zuletzte eingetragenen Files in der EinstiegsSeite
+
  - erstellt eine Top 10 Liste der zuletzte eingetragenen Dateien in der EinstiegsSeite
  
 
   
 
   
Zeile 408: Zeile 458:
 
Zur letzten Not nehme ich dann avidemux2, das Virtualdub für Linux.
 
Zur letzten Not nehme ich dann avidemux2, das Virtualdub für Linux.
  
==Disclaimer==
+
* Von einem user, betrifft Version vom 31.05.2006: Das Umbenennen des Verzeichnisses der vdr-Aufnahme in [cut]... geht bei mir erst nach folgender Änderung in vdrtransxvid_touch_cuted_flag.pl.
 +
vorher:
 +
( my $filename = $_[0] ) =~ s/\d{4}.*\.rec// ;
 +
nachher:
 +
( my $filename = $_[0] ) =~ s/\/\d{4}.*\.rec?\/// ;
 +
Außerdem wird vdrsync.pl nicht mitinstalliert. Dazu folgende Änderung in install.pl.
 +
vorher:
 +
foreach my $script ( "./mpg_to_avi_V2.pl" , "./vdr2mpgV3.pl" , "./vdrtransxvid_touch_cuted_flag.pl" , "./update_filmarchiv.pl" ) {
 +
nachher:
 +
foreach my $script ( "./mpg_to_avi_V2.pl" , "./vdr2mpgV3.pl" , "./vdrtransxvid_touch_cuted_flag.pl" , "./update_filmarchiv.pl" , "./vdrsync.pl") {
 +
 
 +
==Hinweise des Autors==
 
Ich habs geschrieben, aber ich bin nicht schuld.
 
Ich habs geschrieben, aber ich bin nicht schuld.
  
Zeile 415: Zeile 476:
 
Wenn ihr etwas ändern / hinzufügen wollt, tut es, ich kann mir keine Zeit nehmen, um ein Feature einzubauen, das ich nicht brauche, wohl aber jemand anders.
 
Wenn ihr etwas ändern / hinzufügen wollt, tut es, ich kann mir keine Zeit nehmen, um ein Feature einzubauen, das ich nicht brauche, wohl aber jemand anders.
  
Es kann immer passieren, das was kaputt/verloren geht ( vdr-Files, mpegs etc.). Ich habe kein absichtliches rm -rf all reingeschrieben, aber es  kann immer was schiefgehen, daher kann ich keine Garantie übernehmen.
+
Es kann immer passieren, das was kaputt/verloren geht ( vdr-Dateien, mpegs etc.). Ich habe kein absichtliches rm -rf all reingeschrieben, aber es  kann immer was schiefgehen, daher kann ich keine Garantie übernehmen.
  
 
So genug der bösen Worte, aber dies ich nicht mein erstes Soft-Projekt, welches ich for all stelle, ich habe schon viele UserMehls gelesen :-)
 
So genug der bösen Worte, aber dies ich nicht mein erstes Soft-Projekt, welches ich for all stelle, ich habe schon viele UserMehls gelesen :-)
Zeile 434: Zeile 495:
 
<!-- ==Tipps== -->
 
<!-- ==Tipps== -->
 
<!-- ==Wunschliste== -->
 
<!-- ==Wunschliste== -->
 
  
 
==Snapshot / Download==
 
==Snapshot / Download==
# [http://home.pages.at/bhg_online/Vdrtransxvid/Vdrtransxvid-2006-05-31.tgz Vdrtransxvid-2006-05-31.tgz Aktuellste Variante 480KByte] - ''nicht immer zu erreichen, sorry, aber eben kostenlos und werbefrei''
+
latest stable : [http://home.pages.at/bhg_online/Vdrtransxvid/vdrtransxvid_snapshot_2008-12-31.tgz Snapshot vom 31.12.2008 60 KByte] - ''Anpassung an Projectx Versionen 0.90.4.00_p26''
 +
 
 +
older : [http://home.pages.at/bhg_online/Vdrtransxvid/vdrtransxvid_snapshot_2008-01-05.tgz Snapshot vom 05.01.2008 60 KByte] - ''nicht immer zu erreichen, sorry, aber eben kostenlos und werbefrei''
 +
 
 +
alpha Version zum Testen ohne Unterstützung unter : [http://faup.fa.funpic.de/ http://faup.fa.funpic.de/]
  
 
==Links==
 
==Links==

Aktuelle Version vom 29. Juli 2013, 21:39 Uhr

Hinweis
Hinweis

Die Entwicklung von VdrTransxvid wurde zugunsten VdrTranscode ( basierend auf HandbrakeCLI ) eingestellt.


Inhaltsverzeichnis

[Bearbeiten] Beschreibung

Autor: Alexander Richter

- last stable Version upload 31.12.2008

- last alpha Version upload 24.09.2009

[Bearbeiten] KurzInfo zum Snapshot 31.12.2008

Download unten unter Snapshots ...

NEW :

- Opt. Mehrere Tonspuren im Xvid Datei
- Opt. AC3 Ton zusätzlich im xvid Datei
- Opt. eingerenderter Text am Beginn, wie viele Audiospuren verfügbar
- konfigurierbare Matrizze, der zu erreichenden Größen mit allen Kombinationen der Audiospuren
- Statistik, über Renderframeraten und Renderzeiten
vdrtransxvid.conf konfigurieren
install.pl ausführen.
html Übersichten sind erst einmal deaktiviert

gebraucht wird:

perl
vdr >1.4.5
transcode mit xvid
mplex
projectx ohne X

ausführen als normaler user :

- Movie im vdr markieren -> befehle -> für vdrtransxvid markieren
- $ vdr2mpgV4.pl ( zum Umsetzen in mpg )
- $ mpg_2_avi_V4.pl --do ( batchverarbeitung anstoßen )

zusätzlich möglich :

- mpg_2_avi_V4.pl --show ( zum nachschauen, was ansteht )
- mpg_2_avi_V4.pl --auto /FULLPATH/my_movie.mpg --size 300 ( neu xvid größe per hand setzen )
- mpg_2_avi_V4.pl --auto /FULLPATH/my_movie.mpg --audio 0 ( audiokomprimierung abschalten -- Musik )

PS: eventuell müssen Pfade angepasst werden, der Snapshot läuft hier seit 11/2007 stabil.

Beispiel für eingerenderten Text :

http://de.youtube.com/watch?v=NLO-mtCaMm4

Problemlösung für :

!!! ProjectX nicht gefunden / ausführbar ... bitte ändern ...

als "/usr/bin/projectx" speichern und ausführbar machen mit chmod a+x :

#!/bin/sh
java -Djava.awt.headless=true -jar /usr/local/bin/ProjectX.jar $@

VdrTransXvid ist eine Sammlung von mehreren Perlscripten, um aus geschnittenen Vdr-Aufnahmen nahezu ohne Interaktion Xvid Videos zu erstellen.

Was tut's nun, was geht? Du kannst in einem Rutsch alle geschnittenen Aufnahmen in Mpeg-Dateien umsetzen, inklusive Zeitkorrektur ( Ton/Bildversatz ) und automatischer Auswahl der ersten Tonspur.

Du kannst in einem weiteren Rutsch alle diese MPEGs in Xvid umsetzen, ohne eine Interaktion. Die Defaultwerte ( mp3 Rate , Zielgröße etc. ) sind vorgegeben oder werden "on the fly" ermittelt.

Die Zielgrößen "on the fly" richten sich nach der Länge des Films, hier in Frames:

1400 MB ( Frames >= 160000 ) über ~ 106 Minuten
700 MB ( Frames >= 70000 ) bis zu ~ 106 Minuten
350 MB ( Frames >= 40000 ) bis zu ~ 46 Minuten
175 MB ( Frames >= 10000 ) bis zu ~ 26 Minuten
50 MB ( Frames >= 5000 ) bis zu ~ 7 Minuten
20 MB ( Frames < 5000 ) bis zu ~ 3 Minuten
25 Frames = 1 Sekunde
1500 Frames = 1 Minute
90000 Frames = 1 Stunde

Du kannst in einem letzten Rutsch von den neuen AVIs HTML-Übersichten mit technischen Daten, Screenshots etc. anlegen lassen, die alle in einem Frameset statisch und thematisch verlinkt sind.

Die Scripte richten sich an Anwender, die außerhalb vom VDR auf der Kommandozeile fast vollautomatisch ihre Aufnahmen in xvid archivieren wollen.


[Bearbeiten] Softwareanforderungen

  • Perl ich habe 5.8.6 , sollte jedes aktuellere Linux-System aber haben
  • xvid ich habe Version xvidcore-1.1.0-r1 von xvid.org
  • lame ich habe Version 3.96.1, funktioniert, andere bitte probieren
  • divx OPTIONAL wer mag, benutze es nicht mehr, da quali gegenüber xvid zu schlecht ( 5.01)
  • ffmpeg OPTIONAL wer mag, Unterstützung ja, ich benutze es aber nicht
  • transcode ich habe Version 1.0.2, vor 1.01 gehen nicht, ( deinterlacer Problem )

Bitte an eigene Bedürfnisse anpassen, ich habe transcode übersetzt mit : $ ./configure --enable-a52 --enable-mjpegtools --enable-avifile --enable-libmpeg3 --enable-gtk --enable-imagemagick --enable-xvid --enable-x264 --enable-faac

  • mjpegtools ich habe mjpegtools-1.8.0-r1, daraus wird mplex gebraucht
  • VDR mind. 1.3.17
  • avinfo für die HTML Seitenerstellung, wer das nicht will, kann avinfo auch weglassen, ich habe Version 1.0 alpha 15

[Bearbeiten] Konfiguration und Installation

Mit der Version vom 28.05.2005 gibt es eigenes Installer-Script und eine Konfigurationsdatei. Ihr habt euch das aktuelle tgz Archiv runtergeladen ( Link Siehe unten ), entpackt wird es in einem Verzeichnis eurer Wahl mit :

$ tar xfvz ./vdrtransxvid_VERSION.tgz

Nun Wechsel ins neu angelegte Verzeichnis "vdrtransxvid" und öffnet die Datei vdrtransxvid.conf ebenda in einem geeigneten Editor und passt sie euren Gegebenheiten an :

#  vdrtransxvid.conf
#  zentrale Konfigurationsdatei für das Scriptpaket VdrTransXvid
#  VOR ausführem von install.pl EDITIEREN !!!
#  Stand 28.05.2006
#-----------------------------------------------------------------------------
### Dein Heimatverzeichnis, muss existieren und beschreibbar sein
Home = "/home/alex/"
#-----------------------------------------------------------------------------
# wohin sollen die Scripte installiert werden ? ein guter Platz wäre z.B. /usr/local/bin/
Bin_Install_Dir = "/usr/local/bin/"
#-----------------------------------------------------------------------------
# wo liegen die VDR Dateien , aka verzeichnis /video
# kein abschliessenden backslash !!!
InDir = "/video"
#-----------------------------------------------------------------------------
# wo befindet sich die Datei reccmds.conf aus der VDR Konfiguration ? ( /etc/vdr oder /video o.ä.) 
Loc_reccmdsconf = "/video/"
#-----------------------------------------------------------------------------
# wo sollen die fertigen mpg und avi Dateien hin ?
OutDir = "/home/alex/Video_Bearbeitung_mpg/"
#-----------------------------------------------------------------------------
# mp3 rate ( 96, 112 , 128 , 192 )
Mp3 ="128"
#-----------------------------------------------------------------------------
# 0,0 für schnell 5,5 für best Qualitätsfaktor für divxencoder
QFact = "-Q 5,5"
#-----------------------------------------------------------------------------
# Debug Ausgaben von transcode        -q2 oder leer -> " "
Debug_Level = " "
#-----------------------------------------------------------------------------
## Möchtest du die HTML - Statistik erfassung aktivieren ? "yes" oder "no"
HMTL = "yes"
#-----------------------------------------------------------------------------
## wenn ja, wo soll die Datenbank , aka html Seiten Sammlung entstehen ?
HMTL_DIR = "/mnt/hdc1/Filmdatenbank/"

Anmerkung eines Benutzers: Als Home das Home-Verzeichnis des Benutzers angeben, unter dessen Kennung der VDR ausgeführt wird! Sonst gibt es später Probleme.

Anmerkung eines Benutzers: OutDir unbedingt mit slash hinten angeben, sonst gibt es später Probleme.

wenn ihr alle Einstellungen erledigt habt, direkt speichern.

Nun Benutzer zu root werden und ./install.pl ausführen :

$ su 
( Passwort )
$ ./install.pl

Folgender Dialog erwartet euch, hier mit Kommentaren :

alex vdrtransxvid # ./install.pl</br>
------------------------------------------------------------------------------
Welcome to the Installer of VdrTransXvid 0.1 , first we check the needet Binarys :
------------------------------------------------------------------------------
OK :    Transcode Version v1.0.2 gefunden in /usr/bin/transcode ....
OK :    tcdemux gefunden in /usr/bin/tcdemux ....
OK :    tcprobe gefunden in /usr/bin/tcprobe ....
OK :    mjpegtools mplex-2 gefunden in /usr/bin/mplex ....</br>
Frage : Du hast bereits die Datei 'vdrtransxvid.conf' hier im aktuellen Verzeichnis editiert und deinen Gegebenheiten angepasst ?
       [Enter] oder [Ctrl-c] für abbrechen</br>
Frage : Kopiere nun die Scripte ins Verzeichnis /usr/local/bin/ ?
       [Enter] oder [Ctrl-c] für abbrechen</br>
( ich hatte bei diesem durchlauf des scripts bereits die scripte im  Zielverzeichnis, daher die Sicherheitsabfragen )
Frage : /usr/local/bin/mpg_to_avi_V2.pl existiert bereits, LÖSCHEN ???
       Eingabe [OK] für löschen oder [ENTER] für überspringen</br>
Frage : /usr/local/bin/vdr2mpgV3.pl existiert bereits, LÖSCHEN ???
       Eingabe [OK] für löschen oder [ENTER] für überspringen</br>
Frage : /usr/local/bin/vdrtransxvid_touch_cuted_flag.pl existiert bereits,  LÖSCHEN ???
       Eingabe [OK] für löschen oder [ENTER] für überspringen</br>
Frage : /usr/local/bin/update_filmarchiv.pl existiert bereits, LÖSCHEN ???
       Eingabe [OK] für löschen oder [ENTER] für überspringen</br>
OK :    kopiere ./ffmpeg.cfg
OK :    kopiere ./xvid4.cfg</br>
( Wenn in der Konfigdatei, HTML auf yes gesetzt wurde, wird das Grundgerüst kopiert )
INFO :  kopiere das Filmdatenbank - Grundgerüst NICHT nach /mnt/hdc1/Filmdatenbank/, da das Dir bereits besteht !</br>
OK :    avinfo gefunden in /usr/bin/avinfo ....
OK :    Konfigurationsdatei neu angelegt : /home/alex/.vdrtransxvid.conf</br>
------------------------------------------------------------------------------
INFO : Noch ein paar schnelle Tipps zum beginnen :
------------------------------------------------------------------------------
1. Schneiden der Dateien im VDR, kein Schneiden ausführen nötig, Schnittmarken im orig. Datei langen völlig
2. Markieren der geschnittenen Dateien innerhalb des VDR mit "Befehle" im  Aufnahmeverzeichnis
--> VdrTransXvid -> als geschnitten markieren
3. außerhalb des VDR auf der Kommandozeile : "vdr2mpgV3.pl" ausführen
4. außerhalb des VDR auf der Kommandozeile : "mpg_to_avi_V2.pl --showbatch" zum Ansehen der anstehenden Dateien
5. außerhalb des VDR auf der Kommandozeile : "mpg_to_avi_V2.pl --dobatch" zum transcodieren der anstehenden Dateien</br>
viel Spaß
PS : wenn alles spielt, probiere alles auf einmal : "vdr2mpgV3.pl &&  mpg_to_avi_V2.pl --dobatch"
------------------------------------------------------------------------------

Kurz erklärt, was beim Ausführen von install.pl passiert :</br>

  • zuerst wird geprüft, ob das Script als User root ausgeführt wird
  • es werden die benötigten externen ausführbaren Programme auf Ort und Ausführbarkeit geprüft, wenns hier klemmt, müßt ihr überprüfen, ob ihr alles benötigte installiert habt. ( siehe Softwareanforderungen )
  • Kurze Abfrage, ob das Konfigurationsscript angepasst wurde
  • die Scripte werden in's bin verzeichnis kopiert ( je nach Angabe in der vdrtransxvid.conf )
  • die Scripte werden ebendort ausführbar gemacht
  • es wird im Homeverzeichnis ein Verzeichnis "mpeg2avi" angelegt, dort landen später alle Infodateien der transcodierten Filme, sowie jetzt 2 config-Dateien für Transcode ( xvid4.cfg und ffmpeg.cfg )
  • Wenn die HTML Erfassung aktiviert ist, wird das Grundgerüst hierfür kopiert
  • aus der Konfigurationdatei vdrtransxvid.conf wird eine bereinigte im Homeverzeichnis generiert ( /YOUR_HOME/.vdrtransxvid ), die mit führendem Punt nicht sichtbar ist. Diese kann man später noch editieren, einfacher ist es wohl, die vdrtransxvid.conf im aktuellen entpackten verzeichnis zu nehmen und anschließend nochmal ./install.pl laufen zu lassen
  • zum Schluß dann noch ein paar Tipps für Eilige

Soweit so gut, werdet wieder normaler User ( Ctrl-D ). Um das Markierungsscript im VDR zu aktivieren, VDR neu starten ( das Install script schreibt eine neue Befehlszeile in die reccmds.conf von VDR ).

Damit ist die Installation beendet.

[Bearbeiten] Testen

Zum testen, ob alles läuft, beginnst du am besten einen einzelnen File im VDR zu schneiden. Es reicht völlig aus , nur die Schnittmarken zu setzten, du mußt NICHT schneiden -> ausführen, einen neuen geschnittenen File erzeugen.

Nach dem Cut gehst du im VDR auf Aufnahme -> Befehle und markierst die Aufnahme für vdrtransxvid : VdrTransXvid -> als geschnitten markieren

  • ACHTUNG : Version vom 28.05.2006 hat einen Bug :

Bitte in der reccmds.conf prüfen, ob die Anweisung "VdrTransXvid -> als geschnitten markieren..." in einer neuen Zeile erscheint, ich hatte in diser Version vergessen, einen Zeilenumbruch vorher einzufügen, kann aber auch schnell per Hand geändert werden.


Markieren der Aufnahme für die Weiterverarbeitung mit VdrTransXvid

Nach einer kurzen Weile taucht die Aufnahme mit dem Prefix [cut] im Aufnahmeverzeichnis auf, aka "[cut]Star-Trek-Episode-irgendwas" Anhand dieses Prefixes erkennt das Transcode Script, welche Aufnahmen transcodiert werden sollen.

Die markierten und umbenannten Aufnahmen


Danach führst du in einer Kommandozeile vdr2mpgV3.pl aus.

$ vdr2mpgV3.pl

Das sollte nach und nach eine Ausgabe ähnlich dieser bringen :

------------------------------------------------------------------------------
° Alle anstehenden Dateien nochmal zum abnicken, [Enter] für weiter [Ctrl-C] für abrechen :
------------------------------------------------------------------------------
° Final_Call
° The_I_Inside-Im_Auge_des_Todes
( nutze ich, um mal zu schauen, was alles ansteht, ohne gleich alles in mpg umzusetzten )</br> 
° und nun : Final_Call
° Ermittle Parameter für mpg_to_avi ...
--->    35.2%*quit...</br>
° und nun : The_I_Inside-Im_Auge_des_Todes
° Ermittle Parameter für mpg_to_avi ...
--->    5.2%*quit...</br>
° All done ...


Checked bitte danach, ob es in eurem /HOME/mpeg2avi/ Verzeichnis ein Unterverzeichnis mit Namen Info gibt, in dem für jede Aufnahme ein Subdir angelegt wurde :

/HOME/mpeg2avi/
/HOME/mpeg2avi/Info/
/HOME/mpeg2avi/Info/Der_Wixxer/

Darin sollte es fogende Dateien geben :

/HOME/mpeg2avi/Info/Der_Wixxer/epg.txt   ---> Der zugehörige EPG Eintrag für später ( HTML Übersicht )
/HOME/mpeg2avi/Info/Der_Wixxer/mpg2avi.data ---> die Daten für Transcode , ruhig mal reinschauen
/HOME/mpeg2avi/Info/Der_Wixxer/vdr2mpg_done ---> File ist bereits in mpg umcodiert Flag
/HOME/mpeg2avi/Info/Der_Wixxer/frames.dat ---> Länge der Aufnahme in Frames

Gratulation, erster Teil läuft also, und in deinem Verarbeitungsverzeichnis tummeln sich die Mpg's.

Auf gehts zum XVID codieren : Du rufst in der Kommandozeile das Script mpg_to_avi_V2.pl auf. Zuerst schaust du mal nach, was alles zum Umsetzen von mpg in xvid ansteht mit :

$ mpg_to_avi_V2.pl --showbatch

Alles was ansteht, kann dann nacheinander in xvid-avis umgesetzt werden, durch :

$ mpg_to_avi_V2.pl --dobatch

Nach einer Weile, habt ihr die mpg und avi Dateien in eurem Zielverzeichnis, im VDR Aufnahmeverzeichnis ist der Prefix von [cut] auf [del] gändert, um die Übersicht zu behalten, was geschnitten ist und was schon transcodiert.

[Bearbeiten] Täglicher Gebrauch

Ich gehe wie folgt vor :

  • Schneiden der Aufnahme im VDR
  • für vdrtransxvid markieren im VDR
  • Checken ob viel Platz in meinem Zielverzeichnis ist
  • in einem Rutsch alles, was geschnitten ist, transcodieren mit :
$ vdr2mpgV3.pl && mpg_to_avi_V2.pl --dobatch
  • wenn alles durch ist, avi File anschauen, danach Löschen der VDR-Aufnahme und des Mpg-Dateien
  • verschieben des Avi-Dateien in auf meine Archiv-Festplatte(n)

[Bearbeiten] Html Übersicht erstellen

  • update_Filmverzeichnis.pl
$ update_Filmverzeichnis.pl /mnt/usb-hd/Movie 
auf der Kommandozeile, erstellt eine  HTML Datei für jeden neuen Avifile

funktioniert bei meiner Archivhirarchie :

/mnt/usb-hd/Movie/Filme/
/mnt/usb-hd/Movie/Filme/Genre1/
/mnt/usb-hd/Movie/Filme/Genre1/Film1.avi
/mnt/usb-hd/Movie/Filme/Genre2/
/mnt/usb-hd/Movie/Filme/Genre2/Film2.avi
/mnt/usb-hd/Movie/Filme/Genre2/Film3.avi
/mnt/usb-hd/Movie/Serie/Star_Trek-TNG/
/mnt/usb-hd/Movie/Serie/Star_Trek-TNG/1.01-Folgesowieso.avi
/mnt/usb-hd/Movie/Serie/Star_Trek-TNG/1.02-Folgesowieso.avi

Grob gesagt ensteht eine Struktur : Sorte ( Film/Serie ) --> Genre/Serientitel --> Film.

Das Script zieht hierzu die letzten beiden Verzeichnisebenen über dem eigentlichen Avi heran.

so siehts bei mir dann aus :

  • [Shot1.png

Sreenshot 1]

  • [Shot2.png

Sreenshot 2]

  • [Shot3.png

Sreenshot 3]

[Bearbeiten] Tipps

Sollten euch die voreingestellten Werte nicht passen, könnt ihr nach einem Lauf von vdr2mpgV3.pl ( wenn also das Mpg-File schon existiert ) mpg_to_avi_V2.pl im interaktiven Modus laufen lassen und mittels Menüpunkt 2 viele Werte für die Transcodierung neu setzen :

$ mpg_to_avi_V2.pl
###################################################################
#                                                                 #
# mpg_to_avi.pl - Converter Version 0.2 Perl                      #
# written by Alexander Richter alexanderrichter@gmx.net           #
#                                                                 #
# convert Stream-mpeg from DVB-Cards like Technotrend to Mpeg4    #
# last edit 25.05.2006                                            #
#                                                                 #
###################################################################
       HAUPTMENÜ</br>
(0)     Zeige Stapelverarbeitung Dateien
(1)     Konvertiere einen gemuxten Mpg-File in mpeg4
(2)     Setze neu oder ändere Dateien für Stapelverarbeitung ( nur für gemuxten  Mpgfile )</br>
(4)    Führe Stapelverarbeitung aus</br>
(5)     Exit

Folgender Dialog setzt Werte neu :

###################################################################
#                                                                 #
# mpg_to_avi.pl - Converter Version 0.2 Perl                      #
# written by Alexander Richter alexanderrichter@gmx.net           #
#                                                                 #
# convert Stream-mpeg from DVB-Cards like Technotrend to Mpeg4    #
# last edit 25.05.2006                                            #
#                                                                 #
###################################################################</br>
*Ziel ist /home/alex/Video_Bearbeitung_mpg/Die_Olsenbande_sieht_rot.avi</br>
*INFO : Movie ist im Original ca. 2340 MBytes groß
*--->   File hat :              150683 Frames</br>
FRAGE : Frame Bereich eingeben [ 200-300 oder 500 / ENTER für 150683 ] :</br>
--->    Codiere alle Frames</br>
FRAGE : Standard Ausgabegrösse 700 Mbyte [ Enter / neuer wert (1400) ] :</br>
--->    bleibt bei 700 Mbyte</br>
FRAGE : Mpeg4 Codec auswählen [ ffmpeg=1 , Xvid4=2 , divx5=3 (default ist xvid) ] :</br>
--->   Mpeg4 Codec ist :               xvid4
--->   Orig Breite x Höhe :            720 x 576
--->   Mpeg4 Rate wird gesetzt auf :   842 Kbit/sec</br>
--->   File hat Orig Bildverhältniss : 4:3</br>
--->    19.8%*
--->   Crop und Deint : 72,8,72,0 , -I off</br>
--->   InfoDir : /home/alex/mpeg2avi/Info/Die_Olsenbande_sieht_rot/</br>
--->   Infos geschrieben

[Bearbeiten] Kommandozeilen-Optionen

$ mpg_to_avi_V2.pl [-v][--auto][--showbatch][--dobatch]</br>
Kommandozeilenparameter :
------------------------------------
-Anzeige der Hilfe / Version
$ mpg_to_avi_V2.pl -v</br>
-Erstellen einer der Infodatei für spätere Stapelverarbeitung
$ mpg_to_avi_V2.pl --auto /FULLPATH/my_movie.mpg</br>
- Zeige alle zur Stapelverarbeitung anstehenden Dateien : 
$ mpg_to_avi_V2.pl --showbatch</br>
- Führe die Stapelverabeitung transcodieren durch :
$ mpg_to_avi_V2.pl --dobatch</br>
Interaktive Benutzung :
------------------------------
- Aufruf ohne Parameter
$ mpg_to_avi_V2.pl
$ update_filmarchiv.pl /Verzeichnis
$ update_filmarchiv.pl /foo/bar.avi</br>
- updatet das Filmarchiv
- Erwartet als ersten Parammeter einen Avi-File mit voller Pfadangabe oder
 für Stapelverabeitung ein Verzeichnis mit 2 untergeordneten Verzeichnisebenen für Film/Serie und Genre
- erstellt aus dem Originalpfad : z.B:
/cdrom/Movie/Filme/Mystic_Horror/Demonlover_uncut.avi</br>
eine Verzeichnisstruktur ala :
content/main/Filme
content/main/Filme/Mystic_Horror/
content/main/Filme/Mystic_Horror/Demonlover_uncut</br>
- erstellt 5 Previewbilder und ein Hauptpreviewbild
- ermittlet mittels avinfo technische Daten des Avi-Dateien
- parst aus vorhanden epg.txt Dateien den Inhalt und fügt ihn in die Html's ein
- überschreibt keine vorhandenen html und jpg Dateien
- erstellt automatisch leftframe und topframe Linklisten mikt allen relevanten HTML Codes
- erstellt eine Top 10 Liste der zuletzte eingetragenen Dateien in der EinstiegsSeite


[Bearbeiten] Probleme / Behebung

  • ACHTUNG : Version vom 28.05.2005 hat einen Bug :

Bitte in der reccmds.conf prüfen, ob die Anweisung "VdrTransXvid -> als geschnitten markieren..." in einer neuen Zeile erscheint, ich hatte in diser Version vergessen, einen Zeilenumbruch vorher einzufügen, kann aber auch schnell per Hand geändert werden.

Release wird alsbald gefixt.

  • Bug in Version vom 31.05.2006: Bei meinem tcdemux (eigentlich auch 1.0.2) funktioniert die RegEx in der vdr2mpgV3.pl in Zeile 130 nicht.

Alt:

if ( $Line =~/ .*\ (\d+)\ .*video.*/ ) {

Neu:

if ( $Line =~/.*\ (\d+)\ .*video.*/ ) {

Ursache: Die Zeile mit der Ausgabe der Anzahl Frames beginnt nicht mit einem Leerzeichen (wenn ich die Perl RegEx da richtig raffe, was ich bezweifle - die neue Version tut jedenfalls).

  • File sollte nicht unter 5 Minuten Länge sein
  • Von einem User: Befehl in VDR fehlt trotz Beachtung der Bemerkung oben, in der reccmds.conf ist gar kein Eintrag, aber eine Warnung, nicht direkt in die Datei zu schreiben: vielleicht hängt es mit der VDR-Version zusammen (ich verwende 1.4.0)? Wie auch immer, bei mir gibt es eine Datei /etc/vdr/command-hooks/reccmds.custom.conf, in diese habe ich die folgende Zeile eingefügt:
VdrTransXvid -> als geschnitten markieren : /usr/local/bin/vdrtransxvid_touch_cuted_flag.pl

Der Pfad zum Skript vdrtransxvid_touch_cuted_flag.pl ist natürlich gemäß der Installation anzupassen.

  • 16:9 Aufnahmen werden manchmal als 4:3 erkannt und dann gibts Eierköpfe

Abhilfe : in der Datei im Verzeichnis /YOUR_HOME/mpeg2avi/Info/YOUR_MOVIE/mpg2avi.data die Einträge ändern :

alt

Show = 4:3
Stretch = 4,0,8

neu

Show = 16:9
Stretch = 21,0,8
  • Zweite Tonspur statt erster Tonspur ( alles ausländisch )
  • um den File nochmal zu transcodieren, folgende dateien aus /YOUR_HOME/mpeg2avi/Info/YOUR_MOVIE/ löschen :
vdr2mpg_done --> für wiederholen vdr nach mpg
mpg2avi_done --> für wiederholen mpg nach avi
  • Für vdr nach mpg, muß das Prefix der Aufnahme von [del] wieder zurück auf [cut] geändert werden.

Die Perlscripte geben so gut wie keine Fehlermeldungen aus, schade eigentlich, aber ein paar Tipps:

  • Das Script geht gar nicht auszuführen -- Bad Interpreter ---> ausführen mit /usr/bin/perl meinscript.pl kann helfen.
  • unmatched Operator while m// ---> meist fehlt eine ConfigDatei oder ist korrupt.
  • mpg_to_avi_V2.pl ist sehr schnell fertig, es wurde keine avi-Datei erzeugt: sicherstellen, daß transcode mit xvid Zeug korrekt installiert ist (in Debian: Datei /usr/lib/transcode/export_xvid4.so muss existieren)

Traut euch, schaut in die Scripte rein, was die eigentlich machen, wenns Gemeckertes vom Perlinterpreter gibt, gibts meist auch die Zeilenzahl dazu.

Editiert in den Scripten nach Herzenslust, die laufen bei mir und haben sicherlich Hunderte von Bugs, aber sie laufen erstmal...

Es kommt immer wal wieder vor, das ein Vdr File partout nicht will, dann probier mal vdrsync.pl alleine.

Zur letzten Not nehme ich dann avidemux2, das Virtualdub für Linux.

  • Von einem user, betrifft Version vom 31.05.2006: Das Umbenennen des Verzeichnisses der vdr-Aufnahme in [cut]... geht bei mir erst nach folgender Änderung in vdrtransxvid_touch_cuted_flag.pl.

vorher:

( my $filename = $_[0] ) =~ s/\d{4}.*\.rec// ;

nachher:

( my $filename = $_[0] ) =~ s/\/\d{4}.*\.rec?\/// ;

Außerdem wird vdrsync.pl nicht mitinstalliert. Dazu folgende Änderung in install.pl. vorher:

foreach my $script ( "./mpg_to_avi_V2.pl" , "./vdr2mpgV3.pl" , "./vdrtransxvid_touch_cuted_flag.pl" , "./update_filmarchiv.pl" ) {

nachher:

foreach my $script ( "./mpg_to_avi_V2.pl" , "./vdr2mpgV3.pl" , "./vdrtransxvid_touch_cuted_flag.pl" , "./update_filmarchiv.pl" , "./vdrsync.pl") {

[Bearbeiten] Hinweise des Autors

Ich habs geschrieben, aber ich bin nicht schuld.

Wenn ihr mit dem Scripten arbeiten wollt, müßt Ihr euch in die Scripte einarbeiten, ich gebe keinen richtigen Support.

Wenn ihr etwas ändern / hinzufügen wollt, tut es, ich kann mir keine Zeit nehmen, um ein Feature einzubauen, das ich nicht brauche, wohl aber jemand anders.

Es kann immer passieren, das was kaputt/verloren geht ( vdr-Dateien, mpegs etc.). Ich habe kein absichtliches rm -rf all reingeschrieben, aber es kann immer was schiefgehen, daher kann ich keine Garantie übernehmen.

So genug der bösen Worte, aber dies ich nicht mein erstes Soft-Projekt, welches ich for all stelle, ich habe schon viele UserMehls gelesen :-)

Wenn die Scripte jemanden das Leben leichter machen, würde es mich freuen.

Grüße an alle VDR-Freaks

Alexander Richter


[Bearbeiten] Snapshot / Download

latest stable : Snapshot vom 31.12.2008 60 KByte - Anpassung an Projectx Versionen 0.90.4.00_p26

older : Snapshot vom 05.01.2008 60 KByte - nicht immer zu erreichen, sorry, aber eben kostenlos und werbefrei

alpha Version zum Testen ohne Unterstützung unter : http://faup.fa.funpic.de/

[Bearbeiten] Links

  1. Derzeitiger Thread im VDR-Portal Board