Two-pass encoding

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Two-pass encoding ist ein Kompressionsverfahren, das eine Audio- oder Videodatei in zwei Durchläufen kodiert. Im ersten Durchlauf findet eine Analyse statt, um im zweiten Durchlauf bei Verwendung einer variablen Datenrate (VBR) die vorgegebene Speicherkapazität optimal zu nutzen.

Motivation[Bearbeiten | Quelltext bearbeiten]

Bei Kompressionsverfahren, in denen das Multimediamaterial innerhalb eines einzelnen Durchgangs komprimiert wird (One-pass encoding, Live-Streaming), besteht der Nachteil, dass die Komplexitätsverteilung über die Zeit im Material nicht bekannt ist, d. h. die zu erzielenden Kompressionsraten unbekannt sind. Es gibt zwei Methoden, wie der Encoder damit umgehen kann, beide mit einem signifikanten Nachteil.

In der ersten Variante wird eine Qualität vorgegeben, die der Encoder erfüllt, ungeachtet der erzielten Kompressionsrate. Dieses Vorgehen ist auch bekannt als Variable Bitrate Encoding (VBR). Dieses hat den Nachteil, dass die erzielte Gesamtdatenmenge beliebig sein kann, also ein Speichermedium fester Größe, wie etwa eine Daten-CD, nicht vollständig ausgenutzt wird oder gar nicht ausreicht.

Deshalb wird in der zweiten Vorgehensweise dem Encoder eine feste Datenmenge pro Zeitabschnitt (Sekunde oder Frame) vorgegeben, hiermit kann eine gewünschte Gesamtgröße, z. B. 680 MB als CD-Datenträgergröße, erreicht werden. Dieses Vorgehen ist auch bekannt als Constant Bitrate encoding (CBR). Nachteil dieses Vorgehens ist, dass die erreichte Qualität nicht konstant bleibt. Dies ergibt sich bei CBR daher, dass z. B. bei Videomaterial einfachen Videoszenen (dunkel oder mit wenig Bewegung) zu viel und komplexen Videoszenen (schnelle Änderungen) zu wenig Platz eingeräumt wird – anders als für eine gleichbleibende Qualität notwendig.

Verfahren[Bearbeiten | Quelltext bearbeiten]

Das Two-Pass-Verfahren vereint die Vorteile der beiden Single-Pass-Verfahren. Die Datenmenge pro Zeitabschnitt wird nicht vorab festgelegt, sondern nach Analyse des gesamten Materials entschieden. Der Encoder bestimmt in einem ersten Kompressions-Durchlauf die optimale Datenrate für jeden Zeitabschnitt und speichert diese Information temporär ab. Das Kompressionsergebnis (z. B. das komprimierte Video) selbst wird nicht abgespeichert.

Im zweiten Durchlauf verwendet der Encoder diese Informationen, um eine konstante Qualität bei vorgegebener Zieldatenmenge zu erreichen.

Dieses Verfahren lässt sich als iteratives Vorgehen mit mehr als zwei Durchläufen erweitern (Multi-pass), mit dem eine noch bessere Homogenisierung der Qualität über die Zeit oder eine präzisere Zieldatenmenge erreicht werden kann.

Vorteile:

  • Durch die optimale Ausnutzung des verfügbaren Speicherplatzes (etwa einer CD-ROM) wird die bestmögliche mittlere Qualität erzielt.

Nachteile:

  • Es wird etwa die doppelte Verarbeitungszeit wie beim one-pass encoding benötigt.
  • Dieses Verfahren kann nicht bei live gesendeten Audio-/Videodaten eingesetzt werden, da der wichtige zweite Durchgang erst bei Vorliegen aller Daten (also am Ende der Sendung) ausgeführt werden kann.

Geschichte[Bearbeiten | Quelltext bearbeiten]

Im Videobereich war Nandub eines der ersten Videokompressionprogramme, welche diese Technik beherrschten, dort bekannt als Smart Bitrate Control (SBC).

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Florian Plag, Roland Riempp: Interaktives Video im Internet mit Flash: Konzeption und Produktion. Springer Verlag, Berlin/ Heidelberg 2007, ISBN 978-3-540-37894-5.
  • Lisa Larson, Renee Costantini: Flash Video for Professionals. John Wiley & Sons, Indianapolis 2007, ISBN 978-0-470-13113-8.
  • Ian David Aronson: DV Filmmaking. From Start to Finish. 1. Auflage. O'Reilly Media, Sebastopol 2006, ISBN 0-596-00848-1.
  • Chris Seibold: Big Book of Apple Hacks. 1. Auflage. O'Reilly Media, Sebastopol 2008, ISBN 978-0-596-52982-6.
  • Tobias Künkel: Streaming Media. Technologies - Standards - Applications. John Wiley & Sons, Indianapolis 2007, ISBN 978-0-470-84724-4.