dvd2xvid


dvd2xvid

dvd2xvid ist ein, zurzeit noch einfach gehaltenes GUI, fuer MEncoder mit dem Hauptsaechlichen Ziel: DVDs in das xvid Format zu konvertieren.


Features:


Entstehung:

dvd2xvid wird momentan von mir alleine entwickelt und steht unter der GPL-2. Ich habe vor, stetig daran zu arbeiten und es zu verbessern. Da ich mir selbst vor kurzem einen Media-PC zugelegt habe und deshalb meine Filmesammlung in das xvid-Format bringen wollte, habe ich nach geeigenten Moeglichkeiten ausschau gehalten dies am einfachsten zu tun. Da fuer mich Windows fuer soetwas nicht mehr in Frage kommt, (bin begeisteter Linux Anhaenger), aber alle Linuxanwendungen die ich gefunden habe, bei meinem Gentoo nicht so gelaufen sind wie ich es mir vorgestellt habe, oder einfach noch Bugs hatten. "DVD::Rip" zum Beispiel stuerzte immer nach einiger Zeit, ca. 5 Minuten mit irgenwelchen Fehlern ab (moechte aber auch dazu sagen das wohl weniger ein Fehler in "DVD::Rip" gewesen ist, sondern mehr an meinem System gelegen hat.). Bin ich zu den Kommandozeilenprogrammen gekommen: "Transcode" und "Mencoder". Nach dem ich mir beide angeschaut habe und mir "Mencoder" irrgendwie sympatischer war, habe ich begonnen meine Filme damit zu konvertieren. Funktionierte auch anstandslos, aber da meine Filmesammlung mittlerweile weit ueber 100 Filme hat (Orignal, von mir gekaufte DVD's) wurde mir sehr schnell klar das mir das mit der Zeit zu unbequem werden wird. Also habe ich begonnen ein kleines, auf QT3.3 basierendes Programm zuschreiben, in dem ich mir den Kommandozeilenaufruf fuer "Mencoder" zusammenbauen konnte. Ausprobiert habe ich das Programm eigentlich immer an meinen System, und habe auftretende Fehler gleich korrigiert. Wie sich mein Programm auf anderen Systemen verhaelt wird sich erst zeigen. Ja, und mittlerweile sind schon einige Funktionen dazugekommen und ich hoffe mir gehen die Ideen nicht aus, was man noch alles verbessern koennte.


Bedienung:

Das Bedienkonzept koennte man ein wenig eigenwillig nennen, und zwar ist der Grundgedanke folgender: Das Programm sollte aus der Konsole gestartet werden, oder zumindest mit den ensprechenden Optionen, dass ein Konsolenfenster mit aufgeht. Das Konsolenfenster sollte im Hintergrund sichtbar bleiben, denn einige Meldungen kommen nur an der Standardausgabe heraus. Waehrend des Encodiervorgangs wird das Hauptfenster ausgeblendet und der Status des Vorgangs steht dann eben nur noch in diesem Konsolenfenster. Wie sich dieses Konzept in spaeteren Versionen entwickelt, wird sich erst zeigen, aber ich bin damit momentan eigenlich zufrieden. Ueber die Bedienung selbst gibt es eigentlich nicht viel zu sagen. Bis auf die Stapelverarbeitung, ist meiner Meinung nach alles selbsterklaerend. Die Stapelverarbeitung verbirgt sich hinter dem:

Anhaengen-Knopf

Das Ganze funktuniert so: Man stellt alle Optionen ein die man moechte, mountet die DVD oder setzt den Eingabeordner wo sich die vob-Dateien verbirgt und sucht sich einen Ausgangsnamen aus, aber statt auf den Knopf Encodieren zu druecken, was denn Film sofort konvertieren wuerde, drueckt man den Anhaengen Knopf. Der Encodiervorgang beginnt noch nicht, aber der Aufruf wird einmal zwischengespeichert und ein neues Fenster oeffnet sich wo der Aufruf aufgelistet wird. Jetzt kann man fuer den naechsten Film alle Einstellungen vornehmen und entweder wieder anhaengen oder um die Encodierung zu starten auf Encodieren druecken, dann werden alle zwischengespeicherten und der aktuelle Film encodiert. Alternativ koennte man natuerlich auch denn letzten Film mit Anhaengen, in die Stapelliste hinzufuegen und dann mit den Knopf Starten alle Auftraege in der Liste starten. Wenn man in der Stapelverarbeitung die xvid-Dateien die am Ende entstehen zusammenfuegen moechte, kann man die Option aktivieren "Dateien zusammenfuegen". Dies kann zum Beispiel der Fall sein wenn man aus einem Film aus dem DVD-Recoder die Werbung herausschneiden moechte. Dann muss man das Ganze in einzelne Filme aufteilen mit der Startposition und Endposition die Werbung jeweils weglassen und am Schluss wenn man den letzten Filmabschnitt eingestellt hat auf encodieren druecken. Dann werden die einzelen Teile des Films einmal encodiert am Schluss wieder zusmmengefuegt und wenn man die Option ".part Dateien loeschen" aktiviert gehabt hat dann werden die einzelnen Filmteile automatisch geloescht. Der Knopf Reset loescht alle zwischengespeicherten Auftraege und schliesst das Fenster.

stapelfenster


Hier noch eine etwas genauer Erklaerung zu ein paar Encodier-Optionen:

Autoaspect:

Speichere den Filmaspekt intern, wie bei MPEG-Dateien. Dies ist eine viel elegantere Loesung als den Film neu zu skalieren, da die Qualitaet nicht verringert wird. MPlayer und ein paar andere Player werden diese Dateien korrekt wiedergeben, andere werden das Groessenverhaeltnis falsch darstellen. Das Seitenverhaeltnis wird automatisch ausgewaehlt.(Auszug aus der MEncoder-Manpage)

2 Pass:

Gibt an, ob im 2-Pass Modus encodiert werden soll. Beim 2-Pass Modus werden 2 Durchlaeufe hintereinader durchgefuert. Der erste Durchlauf analysiert das Viedomaterial und speichert die Daten in einer kleinen temporaeren Datei ab und mit diesen Daten kann dann der Mencoder beim 2 Durchlauf ein Qualitativ besseres Ergebnis erziehlen. Einen Nachteihl hat das ganze, der Decdodiervorgang dauerte dadurch fast doppelt so lange.

Audio Encodierungs Optionen:

copy= Der Ton wird nicht veraendert sondert nur kopiert
mp3lame= Der Ton wird wird mit den mp3codec codiert
pcm= Der Ton wird im PCM/Wave Format codiert.

Bitrate Encodierungs Optionen:

Bitrate ist die Anzahl der pro Zeiteinheit uebertragenen Datenmenge also in unseren Fall sind das Kilobit pro Sekunde (kb/s). Die Bitrate bestimmt die Staerke der Komprimierung und damit die Qualitaet der Daten. Je hoeher die Bitrate, desto weniger komprimiert, desto groesser die Datei und desto hoeher die Qualitaet. Ein Ausgewogener Wert zwischen Qualitaet und Groesse ist meiner Meinung nach 1200 k/s, aber da sollte jeder selber herumexperimentieren und dann das nehmen, was ihm vom Endergebniss am Besten gefaellt.

Am Ende Herunterfahren:

Damit soll der PC am Ende des Encodiervorganges automatisch herutergefahren werden. 15 Sekunden bevor der poweroff Befehl gesendet wird, kommt an der Standardausgabe noch eine Meldung und wenn man sich es anders ueberlegt haben sollte, koennte man das Programm beenden noch voher beenden was das herunterfahren verhindern wuerde. Momentan funktuniert diese Option aber leider nur im Root Modus.

Debuglevel:

Der Debuglevel diente mir eigentlich hauptsaechlich als Programmierhilfe, aber ich habe mich entschlossen diese Option im Programm zu belassen. Wenn es mal Probleme gibt, dann kann man relativ einfach herausfinden, an was es hakt.
Level 0 = Debugmodus ausgeschaltet.
Level 1 = Der Mencoder aufruf wir nicht ausgefuert sondern der String mir den Mencoder geoeffnet werden sollte wird an die Standardausgabe ausgegeben. Also es wird nichts Encodiert sondern nur simluliert (he das reimt sich ja).
Level 2 = Wie Level 1 nur mit ein paar Infos welche Methoden und Slots gerade bearbeitet werden. Auch hier wird nichts Encodiert, sondern nur simluliert.
Level 3 = Wie Level 2 nur mit allen Variablen die ich interressant gefunden habe und auch hier nur simuliertes schreiben.


Installation:

Aktuelle Version ist dvd2xvid-0.2.5.seit der letzten Version wurden folgende Verbesserungen durchgefuehrt:


Aeltere erhaeltliche Versionen sind:


Zur Installation reicht ein einfaches make und das make install natuerlich im Rootmodus, wenn man das Programm aus den Source Code kompilieren moechte, was momentan die einzige Moeglichkeit ist, da ich noch keine Binaerpakete erstellt habe und mit diesen noch warten werde, bis das Projekt ein wenig weiter fortgeschritten ist.

Wenn man in KDE das Programm per Menue-Editor hinzufuegt, dann sollte man die Option im Terminal starten aktivieren, damit ein Konsolen Fenster automatisch mit geoffnet wird, in welchenman dann den Fortschirtt des Encodiervorganges beobachten kann.

Um dvd2xvid wieder zu entfernen, sollte ein make clean ausreichen.


Abhaengigkeiten:

Fuer das Kompilieren ist nur QT 3.3 noetig, aber da eigentlich alles als Aufruf weitergegeben wird, sind im Betrieb dann noch folgende Programme noetig:

MPlayer > 1.0: Wahrscheinlich gehts auch mit aeltern Versionen, habe ich nur nie ausprobiert, neuere sollten auf alle Faelle fehlerfrei funktionieren

lsdvd > 0.10: Die momentane aktulle Version von Lsdvd 0.16, arbeitet offenbar auch fehlerfrei mit dvd2xvid zusammen. Programmiert habe ich dvd2xvid mit Lsdvd 0.10, also sollten es mit den Versionen dazwischen keinen Probleme geben.

transcode v0.6.10: Transcode wird auschliesslich fuer das zusammenfuegen von Videodateien verwendet, da ich bei Mplayer keine Moeglichkeit gefunden habe dies zu tun. Es ist also nicht unbedingt nötig transcode installiert zu haben.

Wenn jemand Probleme mit einer aelteren, oder neueren Version bekommt, dann lasst es mich doch wissen und schreibt mir eine E-Mail und zwar unter neodym@neoversum.org


Hilfe:

Da ich vorhabe dieses Programm professionell und moeglichst anwenderfreundlich zu Gestalten, waehre ich ueber jede Hilfe dankbar, egal ob beim Programmieren, oder beim Uebersetzen in eine andere Sprache (ist eines meiner Hauptziele in der naechsten Zeit). Also bei Interresse, aber auch Kritik schreibt mir doch einen E-Mail und zwar unter neodym@neoversum.org