Xvid ist ein sehr genau konfigurierbarer Codec, und das klassische VfW-Interface lässt kaum eine Option aus. Da es gerade bei der Konfiguration eines Videoencoders kein absolut richtig oder falsch gibt, ist es keine schlechte Idee, ein wenig querzulesen. Selurs Wissenswertes rund um Xvid kann ich jedem nur ans Herz legen.
Profile und deren Level schalten – wie im allgemeinen Xvid-Kapitel besprochen – einzelne Optionen des Codecs frei oder sperren sie, um Konformität zu den gleichnamigen MPEG-4-Profilen zu gewährleisten. Für ein normales DVD-Backup spricht nichts dagegen, mit (unrestricted) sämtliche Freiheiten zu erhalten. Über den More-Button erreichen wir den Dialog für die Feineinstellungen.
Der Quantization type bestimmt die Matrix, die beim Encodieren verwendet wird. MPEG erzeugt ein etwas schärferes Bild auf Kosten der Kompression und eignet sich eher für die höhere Datenrate einer großzügigen Zielgröße. H.263 ergibt dagegen ein etwas weicheres Bild und erhöht damit die Kompression ein wenig; geeignet eher für die niedrigen Datenraten von 1-CD-Encodings. Über MPEG-Custom und den Button Edit Matrix können wir eine Custom-Matrix laden. Näheres zum Thema haben wir im allgemeinen Xvid-Kapitel schon besprochen.
In sehr hellen und sehr dunklen Bereichen des Bilds nimmt das menschliche Auge weniger Details wahr. Das macht sich Adaptive Quantization zu nutze und komprimiert solche Bereiche stärker, um die eingesparte Datenrate an Stellen zu verwenden, die es nötiger haben. Bei geringen Bitraten macht sich das positiv bemerkbar.
Quarter Pixel erhöht die Genauigkeit, mit der die Bewegungssuche arbeitet, von einem halben auf ein Viertel Pixel. Das wirkt sich positiv auf Details und Schärfe aus, deshalb sollten wir QPel normalerweise einschalten, obwohl sich die Anforderungen an die Rechenleistung nicht nur beim Encoding, sondern auch beim Decoding erhöhen.
Global Motion Compensation versucht die Kompression zu erhöhen, indem es nach gemeinsamen Bewegungsvektoren in der Szene sucht. Zooms und Kameraschwenks bieten sich dafür besonders an. GMC ist ein eher unbeliebtes Feature, da sowohl Encoding als auch Decoding die CPU spürbar mehr beanspruchen, der Nutzen aber oft fraglich bleibt. Dass im technisch fortschrittlicheren AVC-Standard GMC nicht verfügbar ist, deutet zusätzlich darauf hin, dass sich die Funktion nicht bewährt hat.
B-VOPs (technisch für B-Frames) sollten wir ohne guten Grund nicht abschalten. Max consecutive B-VOPs gibt an, wie viele B-Frames maximal direkt hintereinander stehen dürfen. Quantizer ratio und Quantizer offset bestimmen, wie hoch B-Frames im Vergleich zu den umgebenden I- oder P-Frames komprimiert werden. Im Detail haben wir uns mit diesen Optionen schon im allgemeinen Xvid-Kapitel beschäftigt. In der Regel empfehle ich ein Maximum von 2, Ratio 1.62 und Offset 0.00.
Packed Bitstream bestimmt, wie die B-Frames in der Videodatei gespeichert werden und sollte normalerweise ausgeschaltet sein. Doch keine Regel ohne Ausnahme: Wenn wir den AVI-Container verwenden und für mehrere CDs encodieren, so dass der Film zum Schluss gesplittet werden muss, vereinfacht aktivierter Packed Bitstream das Schneiden.
Damit wechseln wir zum Register Aspect Ratio.
Unter Pixel Aspect Ratio erlaubt Xvid die Angabe eines PAR, der im AR-Flag des MPEG-4-Streams gespeichert wird. Das ist nur für anamorphe Zieldateien interessant. Ein klassisches Encoding mit quadratischen Pixeln verwendet immer die Standardeinstellung Square. Die nicht-quadratischen Einträge entsprechen den Werten gemäß MPEG-4. Außerdem können wir mit Custom die beiden Eingabefelder unter der Combobox aktivieren, um einen beliebigen PAR anzugeben.
Für Custom-PARs definiert MPEG-4 Part 2 zwei Felder (für X und Y), die je einen vorzeichenlosen 8-Bit-Integer enthalten. D.h. der maximale Wert, der darin gespeichert werden kann, ist 255. Auch wenn sich Xvid nicht darüber beschwert, sollten wir deshalb größere Werte niemals eingeben, denn die können nicht in den Videostream geschrieben werden.
Die zweite Möglichkeit ist die Angabe des Display Aspect Ratio. Früher hieß diese Option noch verwirrenderweise Picture Aspect Ratio, hat aber schon immer das DAR bezeichnet. Wenn wir ein DAR angeben, ist wichtig, immer ganze Zahlen zu verwenden. 2,35:1 müssten wir also als 235:100 angeben (oder gekürzt als 47:20). Für ein DVD-Backup fällt mir allerdings kein guter Grund ein, das DAR dem PAR vorzuziehen.
Damit ist dieses Fenster abgehandelt und wir können zurück in den Hauptdialog.
Mit Twopass - 1st pass stellen wir den ersten Codierdurchgang ein und rufen über den More-Button die Details auf.
Im angegebenen Stats file werden die Informationen aus dem 1st Pass gespeichert, die der 2nd Pass dann weiterverwendet. Normalerweise kümmert sich das Encoding-Frontend um den richtigen Eintrag. Full quality first pass aktiviert sämtliche eingestellten Encoder-Optionen schon im ersten Durchgang. Normalerweise sind hier einige Optionen abgeschaltet (z.B. VHQ), die nur bremsen und im 1st Pass noch nichts bringen. Die Option sollten wir nur dann einschalten, wenn wir die Videodatei des 1st Pass behalten wollen. Wollen wir aber nicht. Deshalb setzen wir auch den Haken bei Discard first pass. Xvid schreibt dann keine komplette Videodatei sondern nur ein wenig Müll. Das spart Plattenplatz.
Damit kehren wir zurück ins Hauptfenster und kümmern uns um die Zones.
Zones definieren Abschnitte innerhalb des Videos, für die unabhängig eine Reihe von Optionen definiert werden können. Offensichtlichster Anwendungsbereich für Zonen sind die Credits. Eine Zone, die sich über den ganzen Film erstreckt, existiert immer. Über den Button Zone Options gelangen wir in den Konfigurationsdialog.
Bei Start frame # tragen wir das Bild ein, mit dem die Zone beginnen soll. Für die erste Zone ist das 0, der Filmanfang. Das Ende einer Zone ist immer der Anfang der darauf folgenden oder das Ende des Films.
Zonen können entweder mit einem konstanten Quantizer (vereinfacht: Kompressionsfaktor) oder einem relativen Gewicht (Weight) versehen sein. 1.00 ist dabei der Standard. Höher gewichtete Zonen bekommen mehr Qualität zugeteilt, geringer gewichtete müssen sich mit weniger zufrieden geben. Im Normalfall können wir Weight 1.00 einfach übernehmen.
Begin with a keyframe erzwingt am Anfang der Zone ein I-Frame. Greyscale encoding verwirft alle Farbinformationen, so dass wir ein Schwarzweiß-Video erhalten. Chroma optimizer wirkt Pixeltreppchen an scharfen Kanten entgegen, bremst aber den Encoding-Vorgang etwas. Obwohl ich mir nicht sicher bin, ob es wirklich sichtbare Verbesserungen bringt, lasse ich die Option immer eingeschaltet.
Der Cartoon Mode ist besonders nützlich bei Cartoons – wer hätte das gedacht, und da wiederum profitiert klassisch gezeichneter Zeichentrick à la Tom & Jerry oder The Simpsons am meisten. Für Realfilme sollten wir die Funktion lieber nicht einschalten.
Die BVOP sensitivity schließlich wirkt sich darauf aus, wie gern Xvid B-Frames setzt. Positive Werte ermutigen Xvid zu mehr B-Frames, negative Werte schrecken den Codec eher ab. Die 0 können wir als sinnvollen Standardwert stehen lassen.
Normalerweise definieren wir nur eine einzige Zone über den ganzen Film. Um das Einrichten einer zusätzlichen Zone für die Credits kümmert sich das Encoding-Frontend automatisch.
Über OK gelangen wir zurück in den Hauptdialog, wo wir uns im unteren Teil des Fensters um den More-Abschnitt kümmern.
Hier stellen wir das Quality Preset auf (User defined) und öffnen über den More-Button den Dialog für die Detaileinstellungen.
Die Motion search precision legt fest, wie intensiv Xvid nach Bewegungen sucht. Es gibt kaum einen Grund von 6 - Ultra High abzuweichen. 0 - None schaltet die Bewegungssuche ganz ab, was einen Film zufolge hat, der ausschließlich aus I-Frames besteht.
VHQ rechnet für die einzelnen Makroblocks verschiedene Szenarien durch und entscheidet sich dann für das mit der geringsten Anzahl Bits. Generell gilt: Je höher der VHQ mode desto besser die Qualität und desto langsamer das Encoding. 1 oder 2 bringen im Vergleich zum Bremseffekt den höchsten Qualitätsgewinn. Ich bin Qualitätsfanatiker genug, um meistens bei der höchsten Einstellung 4 zu bleiben. Wenn wir GMC aktiviert haben, sollte VHQ nicht abgeschaltet sein.
Use VHQ for bframes too aktiviert den VHQ-Modus auch für B-Frames. Da es sich dabei immer um VHQ 1 handelt, leidet die Geschwindigkeit nicht allzu sehr. Zwar wären auch höhere VHQ-Modi für B-Frames möglich. Laut Xvid-Entwickler syskin würden die aber kräftig bremsen und kaum einen spürbaren Effekt auf die Qualität haben. Da B-Frames meistens den größten Anteil der Frames in einem Film stellen, sollten wir das B-Frame-VHQ möglichst nicht deaktivieren.
Use chroma motion veranlasst Xvid, bei der Suche nach Bewegung nicht nur die Helligkeitsinformationen (Luminanz) zu berücksichtigen, sondern auch die Chrominanz (Farbe). Das steigert die Genauigkeit der Ergebnisse und damit die Qualität.
Turbo ;-) beschleunigt die Berechnung von B-Frames und QPel, erreicht dadurch aber nicht immer das absolute Qualitätsmaximum. Der Unterschied ist kaum jemals sichtbar, als Qualitätsfanatiker lasse ich Turbo trotzdem meistens ausgeschaltet.
Von der Frame drop ratio sollte jeder die Finger lassen, der nicht ganz genau weiß, was er da tut. Auch das Max. I-frame interval kann problemlos auf dem Standardwert bleiben. An günstigen Stellen setzt Xvid sowieso automatisch I-Frames (Man nennt sie auch Keyframes). Ein sehr niedriger Wert macht höchstens bei Captures direkt in Xvid Sinn, die man hinterher noch schneiden will. Denn Schneiden funktioniert nur an I-Frames. Genaueres dazu steht im Kapitel über manuelles Splitting.
Im Register Quantization ist zuerst Trellis quantization interessant. Trellis »überdenkt« die einmal getroffene Quantisierungsentscheidung und versucht sie zu verbessern. Heftige Gewinne bei der Qualität dürfen wir davon nicht erwarten, andererseits bremst Trellis auch nicht besonders und kann deshalb bedenkenlos eingeschaltet bleiben.
Sämtliche Min Quantizer vom Standardwert 1 auf 2 zu setzen, ist hauptsächlich eine kosmetische Entscheidung. 1 als kleinster Quantizer ist vor allem deswegen der Standard, um das ewige Gejammer über zu klein geratene Filme ein wenig einzudämmen. Ist der Film nämlich gut genug komprimierbar, um bei maximaler Qualität den vorgesehenen Platz nicht auszunutzen, wird die Datei kleiner als angegeben. Quant 1 verschwendet in diesem Fall zusätzlich Bitrate und steigert damit die Dateigröße, ohne die Qualität weiter zu verbessern. Deswegen ist 2 der eigentlich sinnvollere Wert, den wir auch einstellen sollten. Falls wir die Komplexität eines Film einmal grob überschätzen, gibt uns Xvid mit der zu kleinen Datei einen Hinweis und auch die Möglichkeit zur Anpassung. Eine größere Audiospur oder gar ein wiederholtes Encoding mit größerer Auflösung ist allemal besser als mit Quantizer 1 verschwendete Dateigröße.
Damit begeben wir uns zurück in den Hauptdialog, wo wir über den Button unten in der Mitte die Other Options aufrufen.
Number of threads ist erst seit Xvid Version 1.2 verfügbar. Hier stellen wir ein, wie viele Threads Xvid zum Encodieren verwenden soll. Für Computer mit nur einer CPU sollten wir diesen Wert immer auf 0 belassen. Wer Hyperthreading, Dual Core oder tatsächlich ein System mit mehreren Prozessoren sein eigen nennt, muss ein wenig testen, welche Einstellung die schnellsten Ergebnisse bringt. Die Anzahl der CPUs oder CPU-Kerne ist ein guter Startwert.
Weiter unten haben wir die Möglichkeit, das Statusfenster abzuschalten, das Informationen über das gerade laufende Encoding anzeigt. Es bremst zwar kaum, aber wer nicht die ganze Zeit vor dem Rechner sitzt und die Statistiken bewundert, wird es kaum benötigen.
Und damit ist die Konfiguration des 1st Pass endlich beendet. Keine Angst, der 2nd Pass geht schneller.
Im Hauptdialog stellen wir Twopass - 2nd pass ein. In der Regel kümmert sich das Encoding-Frontend um die richtige Target size. Wenn wir sie doch manuell eingeben: Hierhin gehört die Größe der reinen Videospur, nicht die Zielgröße des kompletten Films – also Gesamtgröße abzüglich Audiospuren und Untertitelspuren, abzüglich Containeroverhead. Da wir wegen des Overheads einen größeren Exkurs in die technischen tiefen der einzelnen Container einlegen müssen, sparen wir uns die manuelle Berechnung.
Ein Klick auf den More-Button bringt uns zu den Details, die wir allerdings komplett und guten Gewissens auf den Standardeinstellungen belassen können. Genauso verändern wir alle anderen Einstellungen im Vergleich zum 1st Pass nicht. Und damit ist die Konfiguration des 2nd Pass auch schon abgeschlossen.