VdrTransXvid
Inhaltsverzeichnis |
Beschreibung
Autor: Alexander Richter - last Version upload 01.12.2005
VdrTransXvid ist eine Sammlung von 3 Perlscripten, um aus geschnittenen Vdr-Aufnahmen nahezu ohne Interaktion Xvid Videos zu erstellen.
Was tuts nun, was geht ? Du kannst in einem Rutsch alle geschnittenen Aufnahmen in Mpeg-Files umsetzen, inclusive Timekorrektur ( Ton/Bildversatz ) und automatischer Auswahl der ersten Tonspur.
Du kannst in einem weiteren Rutsch alle diese Mpeg's in Xvid umsetzen, ohne eine Interaktion, die Defaultwerte ( mp3 Rate , Zielgröße etc. ) sind vorgegeben oder werden onTheFly ermittelt.
Die Zielgrößen onThefly 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 Avi's HTML Übersichten mit technischen Daten, Screenshots etc. anlegen lassen, die alle in einem Frameset statisch und thematisch verlinkt sind.
Softwareanforderungen
- Perl ich habe 5.8.6 , sollte jedes aktuellere Linux-System aber haben
- xvid ich habe Version xvidcore-1.1.0-beta2 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.1 vorherige 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
- tcmplex-panteltje ist im Snapshot als tarball mit drinn
Der orig. DL-Link für tcmplex-panteltje war : http://ip51cf87c4.direct-adsl.nl/panteltje/dvd/tcmplex-panteltje-0.4.7.tgz
- vdrsync.pl Version 0.1.2.2, nicht die Dev-Version ! ist im Snapshot als tarball mit drinn
DL -Link : http://vdrsync.vdr-portal.de/releases/vdrsync-0.1.2.2.tgz dann ausführbar z.B. /usr/local/bin/vdrsync.pl
- avinfo für die HTML Seitenerstellung, wer das nicht will, kann avinfo auch weglassen
- Vdr :-)
Installation Voraussetzung Pfade
angelegt werden müssen :
1. ein Verzeichnis für Info Files technische Daten etc.
bei mir wäre es : $ mkdir /home/alex/mpeg2avi : $ mkdir YOUR_HOME_DIR/mpeg2avi
2. dorthinein kommen folgende Files :
- ffmpeg.cfg
- xvid4.cfg
lesbar machen mit : $ chmod u+r ./datei
3. ein Verzeichnis für die Mpeg/Avi -Files anlegen, im Gigabereich , ich habe 20 Gigabyte dafür
bei mir wäre es : $ mkdir /home/alex/Video_Bearbeitung_mpg
4. die Scripte in ein ausführbares Verzeichnis kopieren , sehr gut geeignet z.B. /usr/local/bin
- vdr2mpgV2.pl
- mpg_to_avi_V2.pl
- update_filmarchiv.pl
ausführbar/editierbar machen mit : $ chmod u+rwx ./datei
5. für die HTML Seiten Erstellung ein Zieldirectory anlegen und den Ordner Filmdatenbank/ dahin kopieren.
Installation Editieren der Grundeinstellungen in den Scripten
1. vdr2mpgV2.pl mit einem Editor deiner Wahl öffnen ( das KDE Kate nehme ich gern ) und Grundsettings anpassen
my $Home = "/home/alex/" ; ### sollte klar sein my $InDir = "/video" ; ### Das VDR Videoverzeichnis, derzeit nur eins unterstützt, keinen abschliessenden slash !!!</br> my $OutDir = "/home/alex/Video_Bearbeitung_mpg/" ;</br> ### das Verzeichnis für die Mpg's my $Infodir = "${Home}/mpeg2avi/Info/" ; ### fix --> So belassen my $mpeg2avi_bin = "/usr/local/bin/mpg_to_avi_V2.pl" ; ### wo liegt das ausführbare Script mpg_to_avi_V2.pl ?
2. mpg_to_avi_V2.pl mit einem Editor deiner Wahl öffnen ( das KDE Kate nehme ich gern ) und Grundsettings anpassen
my $BinDir = "/usr/bin/" ; # fix my $MpgDir = "/home/alex/Video_Bearbeitung_mpg/" ; # wo befinden sich die orig mpeg Files my $OutDir = "/home/alex/Video_Bearbeitung_mpg/" ; # wo kommen die avi`s hin my $Mp3 ="112" ; # mp3 rate ( 96, 112 , 128 , 192 ) my $QFact="-Q 5,5" ; # 0,0 für schnell 5,5 für best Qualitätsfaktor für divxencoder my $Debug_Level = "-q2" ; # -q2 oder leer
3. update_filmarchiv.pl mit einem Editor deiner Wahl öffnen ( das KDE Kate nehme ich gern ) und Grundsettings anpassen
#### EDITIER MICH my $Archiv="/mnt/usb-hd/Filmdatenbank/" ; # wo soll die Struktur des Filmarchivs entstehen ? Ordner Filmdatenbank/ vorher dahin kopiert ? #### EDITIER MICH ENDE
Testen
Nachdem alles ausführbar ist, beginnst du am besten einen einzelnen File im VDR zu schneiden.
Danach führst du in der Kommandozeile vdr2mpgV2.pl aus Das sollte nach und nach eine Ausgabe ähnlich dieser bringen :
..... alex@alex ~ $ /home/alex/scripting/perl/smpg2avi/vdr2mpgV2.pl MTV_unplugged-Best_of_Teil_1 steht an ... ---> 10.4% MTV_unplugged-Best_of_Teil_2 steht an ... ---> 99.9% Der_Wixxer steht an ... ---> 49.5% 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
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
das ergibt folgendes Menü als Anzeige :
################################################################### # # # 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 06.11.2005 # # # ###################################################################</br> HAUPTMENÜ</br> (0) Zeige Stapelverarbeitung Files (1) Konvertiere einen gemuxten Mpg-File in mpeg4 (2) Setze neu oder ändere Files für Stapelverarbeitung ( nur für gemuxten Mpgfile ) (4) Führe Stapelverarbeitung aus (5) Exit
Kurze Erklärung zu den Menüpunkten :
(0) zeigt alle Mpg's an die zum umcodieren anstehen
(1) konvertiert sofort einen mpg-File , durchläuft Fragedialog nach Einstellungen für den File
(2) setzt die Standardwerte für ein anstehende Stapelverarbeitungs-Mpeg via Fragedialogen neu
(4) rattert alle Mpg's in Xvid durch , jeweils mit 2 Pass dauert je nach Rechner von Echzeit bis ewig ( bei mir ca. 1,5 X Länge )
(5) raus aus dem Script
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 :
- [
Sreenshot 1 (115 Kbyte)]
- [
Sreenshot 2 (52 Kbyte)]
- [
Sreenshot 3 (178 Kbyte)]
Tips
Die Perlscripte geben so gut wie keine Fehlermeldungen aus, schade eigentlich, aber ein paar Tips:
- 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.
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.
Disclaimer
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-Files, 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
Snapshot / Download
Vdrtransxvid-2005-12-01.tgz 278KByte] nicht immer zu erreichen, sorry, aber eben kostenlos und werbefrei
Links
Derzeitiger Thread im VDR-Portal Board]