Video komprimieren - So geht’s professionell und einfach mit Xvid

Schrift:1. September 2008 in Nützlich | 10 Kommentare | Artikel drucken

V. Video

Klicken Sie auf den Reiter Video. Wählen Sie dort als Bearbeitungsmodus »Fast recompress«. Dadurch können Sie zwar kein Einfluss mehr auf Filter oder die Farbtiefe nehmen, in der Regel wurden diese Einstellungen jedoch schon vor dem Speichern der unkomprimierten finalen Version gemacht. Falls mit dem Video dennoch noch Einstellungen in VirtualDub gemacht werden, anstatt nur das reine Komprimieren, muss »Normal recompress« eingestellt werden, um die Farbtiefe zu ändern, bzw. »Full Processing« um auch Filter verwenden zu können. »Fast recompress« geht jedoch, wie der Name schon sagt, ein wenig schneller.

5.1 Compression…
Der Shortcut Strg+P ist hier sehr hilfreich, da Sie diese Schaltfläche bei häufiger Benutzung von VirtualDub oft benötigen. Dies spart etwas an Mausklickzeit.

Es öffnet sich ein Fenster mit den installierten Codecs. Markieren Sie einen Codec, erscheinen rechts Informationen und Einschränkungen (»Format restrictions«) des Codecs. Unter »About« finden Sie erweiterte Versionsinformationen. Oft ist »About« sehr hilfreich, wenn Sie feststellen wollen, welche Version installiert ist. Wählen Sie den Xvid-Codec aus. Über den »Configure«-Button kommen Sie zu den Einstellungen des Encoders.

VI. Die Farben

Damit die Erklärungen in diesem Artikel möglichst verständlich sind, verwende ich drei Farben als Umrandungen in den Screenshots.

  • Grau: Darauf müssen Sie, nachdem Sie alle Einstellungen gemacht haben, klicken um zum nächsten Schritt zu kommen.
  • Blau: Damit erkläre ich die Funktion der umrandeten Einstellung.
  • Rot: Das rot markierte müssen Sie in der Regel dem Screenshot anpassen, da es standardmäßig nicht so in Xvid eingestellt ist.

Dieser Artikel behandelt Xvid sehr ausführlich. Es würde theoretisch genügen, wenn Sie lediglich die rot markierten Einstellungen der Screenshots in Xvid anpassen und den rot markierten Text lesen. Dadurch erfahren Sie zwar nicht, was die Einstellungen bewirken und wie Xvid arbeitet, wenn Sie sich aber nicht die Zeit nehmen wollen dieses Wissen zu »erlesen«, können Sie lediglich den Bilder und Farben folgen.

VII. Encoding type

Bei dem »Encoding type« gibt es drei Auswahlmöglichkeiten. Die erste Möglichkeit ist der Single Pass. Bei dem Single Pass wird das Video in einem Durchgang komprimiert wird. Die Qualität reicht jedoch nicht an die des 2-Pass-Encodings heran. Allerdings gibt es einige Anwendungen, die nur als Single Pass encodiert werden können. So zum Beispiel Streams von TV-Karten und anderen Echtzeitanwendungen. Will man jedoch ein ganz normales Video komprimieren, sollte auf jeden Fall das »Mehr-Pass-Verfahren« verwendet werden.

7.1 Single pass
Bei dem Single-Pass-Encoding sind drei Werte definierbar. Bei diesen drei Werten muss in der Regel nichts verändert werden. Die Werte sind bereits gut gewählt.

Info: Dieser Abschnitt wurde nur der Vollständigkeit halber erwähnt. Im weiteren Verlauf des Tutorials wird das 2-Pass-Encoding verwendet.

7.2 2-Pass-Encoding
Xvid bietet die so genannte Komprimierungsvariante »Mehr-Pass-Verfahren«. Diese ist zwar mit zwei Durchläufen zeitaufwändiger aber bringt mit Abstand das Beste Qualitäts-Größenverhältnis. Es gibt den 1st pass und den 2nd pass Durchlauf. Der erste Durchlauf dient dem Codec AUSSCHLIESSLICH dazu, dass er das Video genau analysiert. Daraus erstellt sich vorausschauend eine Strategie, um die die optimale Datenrate zu erreichen. Im zweiten Durchlauf greift der Codec auf die zwischengespeicherten Daten des ersten Durchlaufes zu und komprimiert anhand der zuvor ermittelten Optimalen das Quellmaterial. Auf diese Art erzielen moderne Codecs diese hohe Effizienz.

VIII. 1st pass
Das Resultat des ersten Durchgangs ist unbrauchbar, da der Codec in diesem Durchgang nur analysiert und noch nicht encodiert. Im Videoplayer können diese Dateien nicht abgespielt werden. Das eigentliche Ergebnis ist eine .stats Datei, die Xvid dabei erstellt und hinterher im 2nd pass ausliest, um das Video endgültig zu komprimieren.
Für den ersten Pass gibt es drei Optionen, die relevant sind. Die Reihenfolge der erklärten Optionen ist immer von oben nach unten und links nach rechts:

  • Zum einen gibt es den Speicherort (»Stats filename«) für die Stats-Datei, in dem die Statistiken für den zweiten Pass abgelegt werden.
  • In der Regel errechnet Xvid nur eine Annäherung für den ersten Pass, was sehr viel schneller geht als ein kompletter Durchlauf. Wenn dennoch ein kompletter Durchgang gemacht werden soll, muss die »Full quality first pass« aktiviert sein.
  • Damit Xvid die Videodatei des ersten Durchgangs wieder löscht sollte »Discard first pass« aktiviert sein.


8.1 Profile
Zuerst müssen in Xvid die Grundeinstellungen vorgenommen werden. Hier sollten Sie sich über den Verwendungszweck Ihres Videos im Klaren sein. Sollen die Videos nur auf dem Computer oder auch auf einem Stand-Alone-Player lauffähig sein?

  • Mit Profile @ Level stellt man die Auflösung des Videos ein. In diesem Tutorial wird das Video besonders für den Computer optimiert. Das Profil deshalb bitte auf »unrestricted« (uneingeschränkt) stellen. Bei einem Klick auf die Registrierkarte »Level” kann man die jeweilige Auflösung nachschauen.
  • XivD verfügt über verschiedene Quantisierungsmatrizen (»Quantization type«). Verkürzt kann man sagen, dass die Quantisierungsmatrix bestimmt, wie stark die Details des Originalvideos reduziert werden. Unterschiedliche Matrizen beeinflussen dieses Verfahren unterschiedlich stark. Die Standardmatrix »H.263« ist vor allem bei niedrigen Bitraten gut, da diese Matrix das Bild etwas weichzeichnet. Die MPEG-Matrix ist das Gegenteil und liefert viele Details, die jedoch nur bei hohen Bitraten zur Geltung kommen.
  • »Adaptive Quantization« bringt ebenfalls eine bessere Bildqualität mit sich, da der Encoder die zur Verfügung stehenden Bits besser verteilen kann. Er nutzt dabei die Anatomie der menschlichen Augen aus und verteilt weniger Bits an sehr helle und dunkle Stellen, da wir diesen Bereich nicht mehr erkennen können.

8.1.1 Was sind Quantizer?
Einfach gesagt stellt ein Quantizer einen Faktor dar, der aussagt, wie stark die Qualität eines Videobildes reduziert werden soll. So reduziert ein niedriger Quantizer (z.B. 2) das Originalbild nur sehr wenig, was eine sehr gute Bildqualität mit sich bringt. Leider braucht dieses Bild auch relativ viel Speicherplatz. Ein hoher Quantizer dagegen reduziert die Qualität sehr stark, was sich im Extremfall in den typischen Blöcken im Video zeigt. Solch ein Bild benötigt sehr wenig Speicherplatz.

  • Das »Interlaced Encoding« sollte nur verwendet werden, wenn das Eingangsvideo »interlaced« (also 50 Halbbilder statt 25 Vollbilder) ist.
  • Ist das Video hauptsächlich für den Computer vorgesehen, sollte einer höheren Bildqualität zuliebe »Quartel Pixel« aktiviert sein. Dadurch wird die Bewegungsvektorsuche feiner. Aktuelle Hardwareplayer unterstützen diese komplexen Features meist nicht. Falls das Video auf jeden Fall auch auf dem Player im Wohnzimmer lauffähig sein soll, muss diese Option deaktiviert sein. Das Eingeständnis ist dafür eine etwas schlechtere Bildqualität.
  • Mit »Global Motion Compensation« spart der Encoder Speicherplatz in Szenen, in denen sich das gesamte Bild bewegt. Auch dieses Feature wird von vielen Hardwareplayern nicht unterstützt.

Die Optionen B-VOPs, Max consecutive BVOPs, Quantizer Ratio & Quantizer Offset werden nach dem Screenshot erklärt

8.1.2 I-Frames & P-Frames
Um ein Video optimal zu komprimieren verwendet MPEG ein spezielles Verfahren, das darauf beruht, nicht immer komplette Bilder zu speichern, sondern nur deren Unterschiede. Die Grundlage dafür bilden die I- und P-Frames. I-Frames sind immer Vollbilder (auch Keyframes genannt). Sie stellen einfach ein JPG-Bild dar. P-Frames dagegegen sind keine vollwertigen Bilder mehr. Sie sind nur die Informationen dafür, wie der Dekoder ein komplettes Bild nachbilden kann. Ein P-Frame besteht zum größten Teil aus Bewegungsvektoren, die im Vergleich mit einem vollständigen Bild sehr wenig Speicherplatz belegen. Die typische Bildfolge besteht immer aus sehr vielen P-Frames und nur am Anfang einer neuen Szene ist ein I-Frame.

  • Zusätzlich zu den I- und P-Frames beherrscht Xvid auch die B-Frames (»B-VOPs«). Diese sind den P-Frames sehr ähnlich. Der Unterschied ist allerdings, dass sie noch weiter optimiert sind und dadurch noch weniger Speicherplatz benötigen.  Die Quantizer der I- und P-Frames legt Xvid automatisch auf den optimalen Wert fest, darum müssen Sie sich nicht darum kümmern. Der Quantizer der B-Frames wird zwar von Xvid auch selbst errechnet, Sie können darauf jedoch Einfluss nehmen. Der Quantizer der B-Frames liegt immer höher als der Quantizer der Umliegenden P-Frames. Daraus ergibt sich zwar eine etwas schlechtere Bildqualität, es wird jedoch Speicherplatz eingespart. Wie viel höher der B-Frame-Quantizer liegt, hängt vom »Quantizer Ratio« und »Quantizer Offset« ab. Beide Werte (Ratio und Offset) wurden eingeführt, um zu bestimmen, wie stark die Qualität eines B-Frames gegenüber den anderen Frames reduziert werden soll. Als Faustregel gilt, je höher der Ratio- und Offset-Wert, desto niedriger ist die Qualität des B-Frames.
  • Mit »Max consecutive BVOPs« wird bestimmt, wie viele B-Frames am Stück verwendet werden sollen. Ein Wert von 0 schaltet die B-Frames ab, ein Wert von 1 benutzt nur immer einen B-Frame in Folge und ist kompatibel mit DivX 5. Ein Wert von 2 ist optimal und benutzt immer zwei Frames in Folge. Theoretisch sind auch höhere Werte möglich.
  • Das »Quantizer Ratio« bestimmt den Quantizer eines B-Frames. Dabei wird der Mittelwert des Quantizers des vorhergehenden und nachfolgenden Bildes mit dem Quantizer Ratio verrechnet. Wenn die beiden benachbarten Frames einen Quantizer von 2 und 4 haben, ergibt sich ein Mittelwert von 3, multipliziert mit einem Quantizer Ratio von 1,5 ergibt sich ein Quantizer von 4,5 für den B-Frame.
  • Der »Quantizer Offset« wird intern zu dem Resultat des Quantizer Ratio hinzugezählt. Ein Offset von 2 würde in unserem Beispiel (Ergebnis des Quantizer Ratio = 4,5) also einen Quantizer von 6,5 (4,5 + 2 = 6,5) ergeben.

Die B-VOPs Optionen sind relativ kompliziert. Lassen Sie sich deshalb nicht entmutigen, wenn Sie die obigen Erklärungen nicht vollständig verstanden haben. Die Standardwerte sind gut gewählt, und können normalerweise auch so belassen werden.

8.2 Zone Options…
»Zone Encoding« ist eine sehr nützliche Erfindung. Mit Hilfe des Zone Encoding können Sie die Videoqualität für unterschiedliche Bereiche des Videos getrennt beeinflussen. Das beste Beispiel dafür ist der Abspann eines Films. Dieser kann meistens mit sehr viel niedriger Qualität komprimiert werden, als der Film selbst. Mit welchem Frame der Abspann beginnt, kann ganz einfach über die Keyframe/Zeitleiste in VirtualDub nachgeschaut werden.

  • Um dieses Beispiel zu bewerkstelligen, müssen zwei Zonen definiert werden. Die erste Zone startet bei dem Frame 0 mit einem »Weight«-Wert von 1. Den Frame geben Sie bei »Start frame #« ein. Die zweite Zone startet am Anfang des Abspanns und erhält eine unterschiedliche Gewichtung oder einen festen Quantizer. Der Weight-Parameter ist relativ zur gesamten Bitrate des Videos zu sehen. Ein Weight-Wert von 1 ändert nichts am Video. Wird als Wert 2 eingegeben, würde der Abspann die doppelte Bitrate des restlichen Videos erhalten. Also gleichzeitig auch eine bessere Qualität. Ein Wert von 0,5 weißt dem Abspann nur die Hälfte der durchschnittlichen Bitrate des Videos zu. Für unseren Fall ist ein niedriger Wert im Bereich von 0,3 bis 0,7 sinnvoll.
  • Wird ein »Quantizer« angegeben, wird dieser Videoteil immer mit diesem festen Quantizer encodiert. Wie gut oder schlecht die Qualität wird, hängt deshalb auch von den Quantizern der anderen Zonen ab. Wem die Quantizer zu komplex sind, nimmt einfach Weight. Mit dieser Option lässt sich das gleichwertige Resultat erreichen.
  • »Begin with a keyframe« legt den Beginn einer Zone immer auf einen Keyframe fest. Diese Option sollte auf jeden Fall gewählt werden.
  • »Grayscale Encoding« spart Speicherplatz, indem es jegliche Farbinformation weglässt und in Graustufen encodiert. Diese Option ist sehr nützlich für einen Abspann, denn dieser weist in der Regel keine Farbe auf.
  • Der »Chroma Optimizer« reduziert die Farbblöcke an scharfen Kanten. Leider geht dies ein wenig auf Kosten der Geschwindigkeit. Das encodierte Bild verändert sich zwar im Vergleich zum Original stärker als ohne diese Option, die subjektive Bildqualität steigt aber an.
  • Bleibt noch der »Cartoon Mode«. Wie der Name bereits verrät, optimiert er die Encodingoptionen für Cartoons. Der Encoder vernachlässigt das Bildrauschen, was sich in einem etwas weniger detaillierten aber saubereren Bild niederschlägt. Lange Rede kurzer Sinn, wenn klassische Cartoons wie die Simpsons oder Futurama encodiert werden sollen, sollte diese Option ausprobiert werden.


Hinweis: Selbst wenn Sie nicht mehrere Zonen erstellen wollen, in denen Film und Abspann unterschiedlich encodiert werden, sollten Sie dennoch eine Zone, beginnend mit dem Frame 0 erstellen, in dem die Optionen »Begin with keyframe« und »Chroma optimizer enabled« aktivieren. Die Bildqualität wird dadurch sehr verbessert.

8.3 Motion
Zuerst einmal muss »Quality preset« (Qualitätseinstellung) auf »(User defined)« gestellt werden.

  • Am meisten Speicherplatz wird mit MPEG bei der Videokompression gespart, indem Bildteile durch Bewegungsvektoren nachbildet werden. Um diese Bewegungsvektoren zu finden, bietet Xvid unterschiedlich aufwendige Verfahren an. Eingestellt werden sie über die »Motion Search Precision«. Diesen sollten nach Möglichkeit auf dem höchsten Wert »6 - Ultra High« belassen werden. Je niedriger der Wert wird, desto schneller geht die Vektorsuche vonstatten. Dies schlägt sich allerdings in einer Verschlechterung der Bildqualität nieder. Bei diesen Verfahren werden nur die Helligkeitswerte des Videos in die Suche einbezogen.
  • Der »VHQ mode« intensiviert die Vektorsuche weiter und verbessert damit auch die Bildqualität. Dies verringert jedoch Encodinggeschwindigkeit stark.
  • »Use chroma motion« schaltet zu der Bewegungsvektorsuche nach Helligkeitswerten auch die Suche nach Farbwerten mit ein. Diese Option sollte aktiviert bleiben.
  • Der »Turbo« beschleunigt die Vektorsuche, wenn Qpel und B-Frames verwendet werden, wobei die Qualität nicht nachteilig beeinflusst wird. Der Turbo kann also einen leichten Geschwindigkeitsgewinn mit sich bringen.
  • »Frame drop ratio« sollte immer auf 0 belassen werden.

  • Das »Maximum I-frame interval« definiert einen Wert in Bildern, nach dem unter allen Umständen ein I-Frame gesetzt wird. Ein Richtwert ist 10-mal die Bildrate pro Sekunde. Das heißt, wenn Ihr Video 30 FPS hat, sind es 300, rendern Sie mit 25 FPS sind es 250…

Wie viel FPS hat mein Video?
Das Programm MediaInfo wird Ihnen hier weiterhelfen können.

8.4 Quantization
Neben der Angabe der Bitrate sind die Quantizer das wichtigste Kriterium, um die Videoqualität zu beeinflussen. Die Quantizer bestimmen, wie stark das Originalvideo in der Qualität reduziert (quantisiert) wird. Niedrige Werte beeinflussen das Video sehr wenig. Hohe Quantizer dagegen führen zu einer starken Komprimierung.

  • In Xvid können für alle drei Framearten (I-, P-, B-Frame) die minimalen und maximalen Quantizer gesetzt werden. Die voreingestellten Werte von Min 1 und Max 31 bedeuten in der Praxis, dass das Video im Idealfall fast nicht komprimiert wird (Q=1), wenn nötig aber sehr stark (Q=31). Xvid ist inzwischen so weit entwickelt, dass es zu keinen Patzern in der Quantizeranpassung mehr kommt. Der Encoder wählt für jede Szene den passenden Quantizer und damit auch die passende Qualität. Die Werte können also getrost auf ihren Standardwert belassen werden. Falls einige Szenen wider Erwarten zu schlechte Qualität aufweisen, kann versucht werden, die maximalen Quantizer zu reduzieren.
  • Da die Quantisierung des Videos auf einem relativ simplen Prozess basiert, kann dieser leicht optimiert werden. Diese Optimierung nennt sich »Trellis quantization«. Sie optimiert die Quantizer, die für die Qualitätsreduzierung verwendet werden und kann deshalb eine höhere Bildqualität aufrechterhalten. Es ist sinnvoll, wenn diese Option immer aktiviert ist.

IX. Audio

Da der 1st Pass nur zum analysieren des Video dient und eine unbrauchbare Datei liefert, wäre es sinnlos, die Audiospur mit zu speichern. Dies würde nur unnötige Rechenzeit benötigen.

X. Speichern

Nun können Sie das Video über »Save as AVI…« oder F7 speichern.

Dateinamen wählen und speichern, und schon startet der 1st pass.

Seiten: 1 2 3 4 5

Über neue Artikel per E-Mail benachrichtigt werden. Möchten Sie lieber per E-Mail über neue Artikel informiert werden?

Ihre Meinung ist wichtig. Hier klicken und Ihren Kommentar schreiben.

1. Werner R. schreibt am 22. Dezember 2008 um 19:51

Super! Vielen Dank. Sehr nützlich das. Ich mach übrigens auch Anleitungen für andere…
Gruß von Werner

2. john schreibt am 28. Dezember 2008 um 08:45

Hallo,

vielen herzlichen Dank für die tolle Einführung! Hat mir sehr viel geholfen und äußerst viel Zeit gespart!!

thx!!!

LG john

3. Eric schreibt am 19. März 2009 um 22:59

Super Tutorial - Vielen Dank … Gruß Eric

4. NaSch schreibt am 7. April 2009 um 15:42

Sowas habe ich schon lange gesucht. Das schnall sogar ich! Danke für die Arbeit!

Gruß NaSch

5. gober schreibt am 18. Juni 2009 um 01:05

Lange gesucht - und endlich gefunden: eine wirklich ausführliche Anleitung. Vielen Dank!

LG “gober”

6. Reinhard schreibt am 17. Juli 2009 um 07:46

Recht herzlichen Dank für dieses Tutorial. Ich suche schon lange nach einem solchen Teil, hab´s vor längerer Zeit mal in englisch gesehen aber mir leider nicht den Link gemerkt.

Großartige Arbeit!

Liebe Grüße
Reinhard

7. Reinhard schreibt am 17. Juli 2009 um 13:11

tja, wer hat denn da nur von wem abgeschrieben? Die Lorbeeren sollte ja nur der ernten, der sich die Mühe gemacht hat….

siehe hier:
http://www.cs-erweiterungen.de/tutorials.php?site=49

Trotzdem, eine gelungene Arbeit

Danke

beste Grüße
Reinhard

Schreiben Sie jetzt Ihren Kommentar





Sponsoren

Sponsor

Über diesen Blog

Mein Name ist Marc Metz und ich bin Autor des Schokoladenes-Blogs. Hier veröffentliche ich Artikel über Themen die mich interessieren. Über was ich in den Artikeln schreibe? Kurz und bündig über Wissen das sich meiner Meinung nach zu wissen lohnt.

Informiert bleiben

Kostenlos per E-Mail über neue Artikel benachrichtigt werden:

Abbonieren Sie jetzt den Schokoladenes Blog.