www.fabiankeil.de/ordentlicherrip.html

Rippen aber richtig – Von der DVD zum ordentlichen Rip

  1. DVD2AVI
  2. VFAPI
  3. VirtualDub
  4. Filter
  5. DivX-Einstellungen
  6. Mp3-Einstellungen
  7. Splitten

Streng genommen ist dieser Text natürlich kein DVD-Ripping-Guide, sondern eine Anleitung-zum-Konvertieren-von-in-VOBs-gemuxten-Video/Audio-Streams-nach-in-AVIs-gemuxten-Video/Audio-Streams, dieser Name scheint mir jedoch etwas lang und wenig suchmaschinenkompatibel.

Es gibt mehrere Lösungen, aus VOBs Avis zu erzeugen. Der hier beschriebene Weg ist vielleicht am Anfang etwas umständlich, die Resultate sind denen, die mit FlasK Mpeg erzeugt wurden, dafür aber meist überlegen, und auch die Geschwindigkeit ist höher.

Spätestens nach dem zehnten Rip ist auch diese Methode Routine, so dass die Einstellungen in ca. einer Minute abgeschlossen sind.

Der Codiervorgang wird noch mal etwas schneller, wenn man das Resizen dem Frameserver überlässt. Statt VFAPI wird dann Avisynth benutzt, und VirtualDub dient nur noch zum Encoden. Eine gute Anleitung dazu gibt's bei www.doom9.org (wo sonst?).

Benötigt werden:

  1. Quell-VOBs
  2. DVD2AVI zum Extrahieren des Tons aus den VOBs und zur Anlegung einer Projektdatei für VFAPI.
  3. VFAPI als Frameserver
  4. Ein Bitrate Calculator
  5. VirtualDub zum Encodieren auf passende Größe
  6. Video und Audio Codec, z.B. DivX und mp3

DVD2AVI

Nachdem man die DVD auf die Festplatte gebracht hat, schaut man sich im Explorer das Verzeichnis an, in das man sie gerippt hat. Hier sollte man nun, unter anderen, mehrere Dateien mit der Endung vob vorfinden. Sie sind nach dem Schema vts_XX_YY benannt, wobei XX und YY Zahlen sind. Dateien mit der gleichen Zahl an Stelle von XX gehören zu dem selben Film. Die vob-Dateien, mit der selben Zahl XX, die insgesamt am größten sind, enthalten den Hauptfilm.

Mit DVD2AVI wird nun die Audiospur extrahiert, sowie eine Projekt-Datei erzeugt, die dann von VFAPI weiter verarbeitet wird.

Über "File/Open", oder durch Druck auf F3, kommt man zu einem Fenster, in dem man die zu öffnenden Dateien auswählen kann. DVD2AVI ist nicht so benutzerfreundlich wie FlasK Mpeg und ist nicht in der Lage Ifos auszuwerten, sondern liest nur VOBs. Es reicht aber die erste der Film-Dateien anzuklicken, DVD2AVI ergänzt die anderen von alleine.

Bild: Laden der VOBs in DVD2AVI

Wenn die VOBs geladen sind, kann man durch das Klicken auf "Options\Preview" überprüfen, ob es die richtigen Dateien sind – ein Druck auf F5 tut's aber auch. Falls auffällt, dass das Bild verzerrt ist – das ist normal. DVD2AVI gibt die Bilder so aus, wie sie in den VOBs enthalten sind. Anamorphe Bilder werden nicht entzerrt. Das Entzerren kommt erst am Schluss und wird von VirtualDub übernommen.

Wählen des Audio-Streams

Das DVD2AVI keine IFOs auslesen kann, stört auch beim Finden des Richtigen Audio-Streams. Er befindet sich irgendwo unter den acht möglichen Tracks. Man kann ihn finden, indem man probecodiert und testet, oder indem man die Ifo-Datei mit IfoEdit öffnet und nachschaut welche Sprache wo ist. Deutscher Ton ist meistens Track 2 oder Track 1 (in dieser Reihenfolge) – darauf sollte man sich aber nicht verlassen. Wenn man den richtigen Track gefunden hat, aktiviert man ihn unter Audio/Track Number/Track X.

Soll DVD2AVI eine Wav-Datei ausgeben, damit sie später nach mp3 zu codiert werden kann, so ist, Audio/Dolby Digital/Decode zu aktivieren. Falls der Ton in den VOBs schon MPEG sein sollte, wird er wenn "Audio/MPEG Audio/Demux" aktiviert ist direkt auf die Platte demuxt.

Falls irgendwann in Zukunft geplant ist auf Mehrkanal zu setzen, sollte man den Ton tunlichst nicht mp3-codieren, sondern schon mal vorbeugend als AC3 belassen, wenn es die DVD ermöglicht.

Dazu wird ebenfalls die Option "Demux" gewählt. Die folgenden Beschreibungen zur Bearbeitung des Tons in VirtualDub können dann jedoch übersprungen werden, gemuxt wird anschließend mit AVI-Mux GUI. Vorher kann man den Ton noch mit BeSweet auf niedriger Bitrate runterrechnen.

Sind die Audio Einstelllungen gemacht, kann das Projekt durch Druck auf F4 gespeichert und DVD2AVI verlassen werden.

Bild: VFAPI GUI

VFAPI

VFAPI emuliert Avis für Programme, die wie VirtualDub keine VOBs lesen können. Als Input braucht VFAPI d2v-Dateien, wie sie von DVD2AVI erzeugt werden. Mit "Add Job" wird die d2v-Datei ausgewählt, mit "Convert" wird konvertiert – recht nahe liegend oder? Dies dauert nur wenige Sekunden, danach hat man eine (Pseudo-)avi-Datei, über die man mit Virtual Dub an die Video Daten aus den VOBs kommt.

Bild: VirtualDub - Avery Lees Meisterwerk (Erstes Segment)
Bild: VirtualDub - Avery Lees Meisterwerk (Zweites Segment)
Bild: VirtualDub - Avery Lees Meisterwerk (Drittes Segment)

VirtualDub

VirtualDub ist das wohl beste Programm, wenn es darum geht Videos zu bearbeiten und Avery Lee sollte, für das Erschaffen und unter die GPL stellen, ein Denkmal errichtet bekommen und zu seinen Ehren ein Feiertag eingeführt werden – wäre da nicht die Tatsache, das es mit Visual C++ geschrieben wurde ;-)

Mit "File/Open video file" wird die vorher mit VFAPI erstellte Datei geöffnet. Nun sieht man zwei sogenannte panes, Unterfenster die das Video anzeigen. Das linke stellt das Video da, wie es gelesen wird, das rechte wie es nach dem Durchlaufen der VirtualDub Filter aussieht. Wie man im Screenshot sehen kann, ist das Video fertig zum Codieren. Es wurde gecroppt (d.h. die Schwarzen Ränder wurden entfernt) und auf 16:9 entzerrt, ist also nicht mehr anamorph.

Die Filter

Veränderungen an Videos geschehen bei VirtualDub grundsätzlich über Filter. Zur Auswahl derselben, gelangt man über "Video/Filters" oder durch Druck von strg+F.

Bild: VirtualDub Filtereinstellungen

Zum Entzerren des Videos wird der Filter "Resize" verwendet, der im Screenshot auch schon aktiviert wurde (über Add). Als Parameter werden ihm die gewünschte Größe und das Verfahren zum Resizen angegeben. Über die Auflösung kann man streiten, beim Filter mode sollte man jedoch "Precise bilinear" oder "Precise bicubic" nehmen. "Precise bicubic" ist etwas langsamer als "Precise bilinear", aber dafür auch schärfer, was jedoch beim anschließenden Encodieren nicht unbedingt vorteilhaft sein muss. Man sollte beides ausprobieren und nehmen was einem besser gefällt.

Bei der Wahl der Auflösung sind die Restriktionen des Video-Codecs zu beachten, falls es welche gibt. Bei DivX 5.01 muss die Breite durch 4 und die Höhe durch 2 teilbar sein. Das Verhältnis von Breite zu Höhe sollte außerdem dem der DVD entsprechen, da man ja sonst einen verzerrten Film erhält. Die drei verbreitetsten Verhältnisse sind 4:3; 16:9 und 2.35:1. Sie sollten auf der DVD draufstehen, sonst muss man rumprobieren bis es passt.

Dafür wählt man nacheinander die drei am weitesten verbreiteten Seitenverhältnisse aus (z.B. 640:480; 640:360 und 640:272) und schiebt dann im Grundfenster den Schieberegler der Zeit, bis man glaubt zu wissen ob die Auflösung die richtige ist.

MPAA-Loge

An Gesichtern ist es nicht immer leicht zu erkennen ob sie verzerrt sind (es sei denn man hat den Film falsch codiert und will ihn anschauen), bei runden oder quadratischen Elementen ist es deutlich leichter, man sollte also wenn man sich nicht sicher ist, nach Wanduhren, Sonnen, Monden oder ähnlichen Dingen Ausschau halten. Die Mitglieder der MPAA blenden freundlicher Weise zu diesem Zwecke ihr Kalibrierungszeichen im Abspann ein.

Hat man die richtige Auflösung gefunden, wird man eventuell noch durch die schwarzen Ränder gestört, wenn der Film letterboxed codiert ist. Auch wenn sie einen nicht stören sollte man sie entfernen, da sonst unnötig Codec Bitrate an den Übergängen von Bild zu Rand verschwendet wird.

Die Balken werden über den "Cropping"-Button entfernt, nach seinem Druck erscheint ein Fenster in dem man vier Offset Werte angeben kann, also wieweit das Bild von jeder Seite beschnitten werden soll. Nachdem man hier die Werte eingegeben hat, sieht man auch sofort, wie viel nachher vom Bild fehlt. Am Besten wählt man dafür ein sehr helles Bild, da hier der Unterschied zwischen Bild und Balken besser auffällt.

Sollte der Film einmal schon im gewünschten Format vorliegen, muss aber noch beschnitten werden, so wird man merken, dass das Croppen nur funktioniert, wenn auch ein Filter aktiv ist. Damit man dennoch Beschneiden kann, gibt es den "Nulltransform"-Filter, der genau gar nichts macht, außer eben den Film weiterzuleiten. Nun kann auch gecroppt werden.

Bild: DivX 5.01 Einstellungen

Die DivX Einstellungen

Ist das Bild auf Format, müssen nur noch der Video- und der Audio-Codec konfiguriert werden. Zur Auswahl des Video-Codecs (hier DivX 5.01) gelangt man über strg+c oder über "Video/Compression". In dem nun erscheinenden Fenster wählt man DivX 5.01 aus und kommt nach Druck des "Configure"-Buttons zu den Einstellungen.

Die Bitrate gibt man durch bewegen des Schiebers, oder direkt im daneben liegenden "Eingabeloch" ein. Sie bekommt man von einem beliebigen Bitrate-Calculator, ein Blick in die Doom9.org-Download-Abteilung hilft.

Die Art des Encodens gibt man ebenfalls über den Schieber an. Wählt man "1-pass", so wird der Film codiert, und ist dann fertig. "1-pass quality-based" kann man wählen, wenn die Dateigröße egal ist. Die eingegebene Bitrate wird dann ignoriert und statt dessen ein eingegebener Prozentwert genommen. Da man bei diesem Modus die Größe nicht abschätzen kann, nehme ich ihn nie.

Die dritte mögliche Wahl ist "2-pass". Hierbei wird der Film zweimal durchgerechnet. Beim ersten Mal wird die Komplexität der einzelnen Bilder analysiert und beim zweiten Mal bekommen schwierige Bilder mehr Bitrate. Für diesen Modus wird bei "Two-pass encoding Logfiles" angegeben, wo die Logfiles beim ersten Durchgang gespeichert werden sollen bzw. wo sie beim zweiten Durchgang gelesen werden können.

Hat man nur einen Film, kann man die Standard-Pfade nehmen, bei mehreren Filme die man nicht der Reihe nach codiert (z.B. erst alle "2-pass first pass" dann alle "2-pass second pass", was natürlich sehr dumm wäre) muss man die Pfade ändern. Für beide Dateien zusammen sollte man ungefähr 150 MB freihalten, je nach Filmlänge.

Codiert man "2-pass", berechnet man den Ton erst beim zweiten Mal mit – einmal reicht. Von den "MPEG4 Tools" ist nur "Use Bidirectional Encoding" zu aktivieren, die anderen beiden Optionen sind noch nicht ausgereift.

Unter dem Karteireiter "General Parameters" ist nur das "Max Keyframe interval" einzustellen, das man auch auf dem Defaultwert lassen kann, der sowieso nur selten erreicht wird (langsame Szenen oder Abspann). Unter dem Karteireiter "Advanced Parameters" kann ebenfalls alles auf den Standardwerten bleiben, das Gleiche gilt für "Manage Settings".

Die Video Einstellungen sind nun abgeschlossen, nur der Sound fehlt noch.

Bild: Mp3-Eistellungen in VirtualDub

Die mp3 Einstellungen

Bevor man die mp3 Einstellungen eingibt, sollte man über "Audio/WAV Audio" die Datei angeben, in der man den Ton gespeichert hat. Außerdem muss (ebenfalls unter Audio) der "full processing" Modus aktiviert werden, sonst wird der Ton als WAV eingefügt, was keinen Sinn ergibt. Unter "Audio/Compression..." kann man nun den Codec mitsamt Bitrate wählen.

Nochmal: Wird der Film "2-pass" codiert, erst beim zweiten Durchgang die Audio Einstellungen tätigen!

Die Codecs sind nun fertig eingestellt.

Hat der Rechner die nächsten Stunden nichts zu tun, kann man direkt speichern, ansonsten sollte man nach Eingabe des Dateinamen noch "Add operation to job list and defer processing" aktivieren, bevor man auf "speichern" klickt. Will man seinen Film "2-pass" codieren, so sollte man das auf jeden Fall über die "job list" machen, damit beide Durchgänge mit den gleichen Filter-Einstellungen gemacht werden – also erst ohne Audio mit "2-pass first pass" in den DivX Einstellungen, und dann "2-pass second pass" mit Audio in die "job list" eintragen.

Wenn man den Rechner mehrere Stunden nicht mehr benutzen muss, drückt man nach VirtualDub-Start F4 und startet die in der "job list" eingetragenen "jobs". Alle auf "waiting" eingestellten "jobs" werden nun erledigt. Sollen manche "jobs" noch nicht bearbeitet werden, stellt man sie auf "postponed", um sie wieder zu aktivieren wenn die Zeit gekommen ist.

Bild: Speichern in VirtualDub

Splitten von Avis

Falls das Video nach dem Codieren auf eine CD passt, kann man es natürlich direkt auf CD brennen. Wenn dem nicht so ist, muss man es erst in kleinere Teile zerlegen.

Bei VirtualDub gibt es zwar eine Funktion, die das Video in ungefähr passende Stücke zerlegen kann (File/Save segmented Avi), diese Funktion berücksichtigt aber keine Keyframes, so das man das Video vor dem Anschauen entweder wieder zusammenfügen muss, oder aber unter Umständen, am Anfang der dem ersten Teil folgenden Teile, Bildfehler erhält, bis das erste Keyframe erreicht ist.

Diese Funktion sollte man also nicht zum Splitten nehmen, sondern manuell splitten.

Wo das Video Teilstück beginnen und wo es enden soll, stellt man unter "Video/Select Range" ein, und speichert ab. Dies macht man, bis man das Video in mehrere CD-große Stücke zerlegt hat. Dabei muss man darauf achten, die Teilstücke bei Keyframes anfangen zu lassen, da nur Keyframes die gesamte Bildinformation enthalten. Die Anzahl der Frames, die ein Segment lang sein soll, kann man leider nicht errechnen, indem man die Videogröße durch 700MB mal die Anzahl der Gesamtframes rechnet, da die Frames je nach Komplexität unterschiedlich viel Bits bekommen.

Man kann zwar so ermitteln, wo die Grenze ungefähr sein könnte und sich ihr dann durch probieren nähern, dadurch verschwendet man aber viel Zeit. Einfacher ist es sich das Video mit "File/Segmented Avi" passend zerlegen zulassen, sich dann die Framezahl der Segmente aufzuschreiben und im zu schneidenden Video zu schauen wo das dieser Zahl nächste Keyframe liegt.

Dafür öffnet man das Teilstück und merkt sich die Zahl der Frames, die unter "Video/Select Range" als Länge angegeben ist. War das Videoteilstück ein bisschen zu groß, nimmt ein Keyframe von weiter vorne, sonst eins von weiter hinten.

Diese Keyframes erreicht man, indem man erst mit "Edit/Goto" (alternativ Strg+G) die Framenummer an der VirtualDub gesplittet hat anspringt, und dann mit Shift+Links bzw. Shift+Rechts zum nächste Keyframe spulen lässt.

An der so erreichten Framezahl muss man dann später teilen. Dabei ist es wichtig, unter Video und Audio "direct stream copy" zu aktivieren, da man den Film ja nicht noch mal durch die Filter und Codecs schicken will.

Mittlerweile hat Alexander Noé das Programm AVI-Mux GUI (nicht verwechseln mit AviMux) programmiert, mit dem das Splitten deutlich schneller und komfortabler abläuft, außerdem erzeugt es weniger Overhead. AVI-Mux GUI gibt es mit einer ausführlichen Beschreibung auf Alexander Noés Website.