Brother Johns gesammeltes Encodingwissen
Prinzipiell unterscheidet sich das Encoding anamorphen Materials kaum vom nicht-anamorphen Vorgehen. Lediglich einige Details müssen wir beachten; hauptsächlich, um den Film im richtigen Seitenverhältnis abspielen zu können.
Auch für anamorphe Encodings kann der Kompressionstest als Qualitätsindikator dienen. Allerdings müssen wir einige Abweichungen bedenken.
Um den Test durchzuführen, sollten wir immer das einfache Save-avs-Fenster benutzen, da die erweiterte Version die manuellen Änderungen am Skript nicht berücksichtigt. Außerdem stimmt die gewohnte Faustregel »60 – 80 %« für gute Qualität nicht mehr. Zumindest eine neue Untergrenze muss her. Ich hatte vor kurzem einen Film mit einem Compcheck-Wert von 35 %. Encodiert mit XviD 1.1 ist das Ergebnis einwandfrei. In anspruchsvollen High-Motion-Szenen tauchen ein paar Blocks auf, die allerdings nur bei Standbildern sichtbar sind. Ich würde deshalb 40 – 45 % als neue sichere Untergrenze vorschlagen. Ob die Obergrenze auch angepasst werden muss und wie die Situation bei anderen Codecs aussieht, weiß ich nicht. Wer in der Hinsicht schon Erfahrung hat, kann mir gerne eine Mail schicken.
Natürlich brauchen wir eine Möglichkeit, dem Decoder mitzuteilen, mit welchem Seitenverhältnis er das Bild wiedergeben soll. Dafür speichern wir in der Videodatei ein AR-Flag, das den korrekten Wert enthält. Dieses Flag kann auf zwei Ebenen gesetzt werden: entweder im Header der MPEG-4-Videospur selbst oder im Container. Wer auf Nummer sicher gehen will, kann auch beide Möglichkeiten nutzen. Allerdings unterstützen nicht alle Container ein AR-Flag. Nur Matroska bietet diese Möglichkeit, AVI und OggMedia dagegen nicht.
Kümmern wir uns zuerst um das setzen des MPEG-4-Flags. Wer XviD als Encoder verwendet, hat es leicht, denn XviD bringt AR-Unterstützung mit. Um das Seitenverhältnis zu setzen, müssen wir nach dem Speichern der AVS-Datei im Encoding Control Panel die XviD-Konfiguration aufrufen. Am besten nehmen wir die AR-Einstellung für beide Passes vor, um möglichen Problemen aus dem Weg zu gehen.
Über den ersten More-Button der XviD-Konfiguration öffnen wir die Details und wechseln ins Register Aspect Ratio. Dort setzen wir das Pixel Aspect Ratio (PAR) auf den richtigen Wert. Welcher das ist, hat uns das Statusfenster von DGIndex in den Feldern Aspect Ratio und Video Type verraten. 16:9 und PAL dürfte typisch sein. Entsprechend setzen wir jetzt das Pixel Aspect Ratio auf z. B. 16:9 PAL.
Wir könnten auch das Picture Aspect Ratio (entspricht dem DAR) weiter unten im Fenster verwenden, was zum gleichen Ergebnis führt. Das richtige DAR können wir im Resolution-Register unter Aspect Ratio im Abschnitt Crop (before resize!) ablesen. Dafür müssen wir das Input Pixel Aspect Ratio vorübergehend auf den korrekten Wert für ein nicht-anamorphes Encoding setzen (also anamorphic (16:9) oder non anamorphic (4:3)). Benutzen wir Resizing, muss die gewünschte Zielauflösung schon gewählt sein.
Wer lieber mit DivX encodiert, kann das AR-Flag nicht gleich beim Encoding setzen, sondern muss das hinterher mit MPEG4 Modifier tun. Dieses Programm unterstützt bisher allerdings nur AVIs (kein OpenDML).
Deshalb müssen wir entweder gleich Gordian Knot AVI verwenden lassen oder die Datei nach dem Encoding mit VirtualDubMod nach AVI konvertieren. Dazu laden wir den fertigen Film und speichern ihn über F7 wieder ab. Save AVI in old 1.0 format muss angehakt sein, und ganz unten muss der Video mode auf Direct Stream copy stehen.
Dann öffnen wir die Datei mit MPEG4 Modifier und setzen die Pixel AR wie oben bei XviD beschrieben. Anschließen speichern wir das Video mit dem Speichern-Button. Da sich das AR-Flag im Header der Videospur befindet, kann die AVI problemlos nach Matroska oder OggMedia konvertiert werden, ohne die AR-Info zu verlieren.
Freunden von x264 bleibt das MPEG-4-AR-Flag leider noch verwehrt. x264 bringt selbst keine Unterstützung mit und MPEG4 Modifier versteht bisher noch keine AVC-Videospuren. Als Ausweichmöglichkeit bleibt das Setzen des AR-Flags im Container.
Im Matroska-Container setzen wir das AR-Flag beim Muxen mit mkvmerge GUI. VirtualDubMods Matroska-Unterstützung geht leider nicht so weit.
In den Track options der Videospur setzen wir unter Aspect Ratio das Seitenverhältnis, und zwar das DAR. Ein PAR lässt sich in mkvmerge GUI nicht angeben. Wir tragen also den mit Gordian Knot berechneten Wert hier ein. Alternativ können wir auch unter Display width/height eine Wiedergabeauflösung angeben. Das Ergebnis ist das selbe.
Wenn das Video schon ein MPEG-4-AR-Flag enthält, brauchen wir in mkvmerge GUI nichts einstellen, denn mkvmerge übernimmt das MPEG-4-AR automatisch für das Matroska-AR-Flag.
Das Setzen des AR-Flags reicht noch nicht aus, um das Video mit dem richtigen Seitenverhältnis wiederzugeben. Der Decoder muss das Flag auch lesen und richtig umsetzen können. Die folgende Tabelle zeigt, welcher Decoder welche Art Flag erkennt. Getestet wurde in Graphedit. Welcher Container oder welcher Matroskasplitter verwendet wird, wirkt sich nicht aus.
MPEG-4-AR | Matroska-AR | |
---|---|---|
ffdshow 2005-03-12 | Ja (siehe unten) | Ja (siehe unten) |
XviD 1.1 Beta 2 | Ja | Ja |
DivX 5.2.1 | Nein | Nein |
Nero 6.3.1.20 | Ja | Nein |
ffdshow erkennt zwar sowohl MPEG-4- als auch Matroska-Flags, allerdings nur mit bestimmten und jeweils verschiedenen Einstellungen auf der Output-Seite des Konfigurationsdialogs. Zwingend nötig ist der Haken bei Use overlay mixer, sonst erkennt ffdshow keines der AR-Flags. Haben wir zusätzlich noch Allow output format changes... angehakt, erkennt ffdshow das MPEG-4-Flag, nicht jedoch das Matroska-Flag. Ohne den Haken ist es genau umgekehrt.
XviD und Nero benötigen keine besonderen Einstellungen. Für XviD lässt sich in der Decoder-Konfiguration lediglich bestimmen, welches der beiden Flags die höhere Priorität genießt, wenn beide vorhanden sind.
Um möglichst hohe Kompatibilität zu erreichen, sollten wir auf das MPEG-4-Flag nie verzichten und zusätzlich auch das Matroska-Flag setzen, wenn wir den Container verwenden. Mkvmerge übernimmt das MPEG-4-Flag ja bequemerweise automatisch.