Lade Inhalt...

Vergleich softwarebasierter Multiformat-Encoder

Analyse der Computerprogramme Cleaner, ProCoder und Squeeze

©2006 Diplomarbeit 155 Seiten

Zusammenfassung

Inhaltsangabe:Einleitung:
Ein Viertel unseres Gehirns dient der Verarbeitung visueller Sinneseindrücke, welche rund 80 Prozent jener Informationen ausmachen, die wir aus der Umwelt aufnehmen. Zur Kommunikation dieser Eindrücke konnten wir bis zum neunzehnten Jahrhundert ausschließlich auf visuell und sprachlich formulierte Zeichen zurückgreifen. Der Informationsgehalt wird durch sie auf das Wesentliche reduziert und über einen schmalen Kommunikationskanal übertragen, sei es in Form von Sprache oder einzelner Bilder. Dieser Vorgang kann jedoch bewusst oder unbewusst mit Fehlern behaftet sein, womit sich der Wunsch verbindet, visuelle Eindrücke direkt zu vermitteln.
Zunächst konnte die Fotografie diesem Anspruch gerecht werden, später Film und Fernsehen. Die Bereitstellung von analoger und nun auch digitaler Videotechnik ermöglicht es, visuelle und akustische Informationen einfach und preiswert zu speichern, zu verarbeiten und weiterzureichen. Der Kreislauf aus verfügbarer Technik, den daraus resultierenden Anwendungsfeldern und den durch sie wiederum steigenden Ansprüchen an leistungsstärkere Technik nimmt hier kein Ende: Computer werden schneller, es können höher aufgelöste Bilder verarbeitet werden, zur Effizienzsteigerung ist noch schnellere Hardware nötig.
Auch bei der Verteilung wachsen die Ansprüche, was an immer schnelleren Internetanbindungen sichtbar ist, an einem Ansteigen der Senderzahl im Fernsehen oder einer Kapazitätssteigerung von CD zu DVD sowie zu der nächsten Generation optischer Datenträger in Form von HD-DVD und Bluray Disc. Diese rasante Entwicklung wurde erst durch die Digitaltechnik ermöglicht. Bei ihr werden Informationen ähnlich wie bei der Sprache in Form von Symbolen ausgedrückt, jedoch in stark vereinfachter Form durch ein Alphabet, welches z. B. ausschließlich aus den Zeichen 0 und 1, den so genannten Bits, besteht. Ein Bit kann leicht durch Computer verarbeitet werden und besitzt eine geringe Fehleranfälligkeit.
Bildinformationen gehören zu den aufwendigsten Gebieten der Digitaltechnik. Ein beispielsweise 720 mal 576 Pixel messendes Video, welches aus 25 Einzelbildern pro Sekunde besteht, führt bei einer Stunde Laufzeit und 24 Bit/Pixel zu einer Datenmenge von 895.795.200.000 Bits bzw. 104 GiB, den Ton noch nicht mitgerechnet. Zu dessen Speicherung wären 24 handelsübliche DVDs (4,7 GB Speicherkapazität, Stand 2006) nötig, die Übertragung über eine moderne Internetanbindung mit 6 Mbit/s würde über 40 Stunden in […]

Leseprobe

Inhaltsverzeichnis


Inhaltsverzeichnis:

Glossar

1 Einleitung
1.1 Datenkompression
1.2 Aufgabenstellung und Zielsetzung

2 Grundlagen
2.1 Menschliches Wahrnehmungssystem
2.2 Kompressionsverfahren
2.2.1 Redundanz und Irrelevanz
2.2.2 Bildaufbereitung
2.2.3 Intraframekodierung
2.2.4 Interframekodierung
2.2.5 Entropiekodierung
2.2.6 Audiokompression
2.3 Codecs, Dateiformate und Multimediaarchitekturen
2.3.1 Codecs
2.3.2 Bitratenverteilung
2.3.3 Dateiformate und Multimediaarchitekturen
2.3.4 Auswahlkriterien
2.3.5 MPEG-1
2.3.6 MPEG-2
2.3.7 QuickTime/Sorenson Video
2.3.8 Windows Media Video
2.3.9 RealVideo
2.4 Softwarebasierte Multiformat-Encoder
2.4.1 Autodesk Cleaner
2.4.2 Canopus ProCoder
2.4.3 Sorenson Squeeze

3 Analysekonzeption
3.1 Untersuchungsobjekte
3.2 Bewertungskriterien
3.3 Versuchsrahmen
3.3.1 Referenzsequenz
3.3.2 Codecparameter
3.3.3 Subjektive Bildbeurteilungsverfahren
3.3.4 Objektive Bildbeurteilungsverfahren
3.3.5 Dekoder

4 Analyse
4.1 Vorbemerkung
4.2 Erläuterungen zur Ergebnisdarstellung
4.3 MPEG-1
4.3.1 Konfiguration
4.3.2 Ergebnisse bei 1500 kbit/s
4.3.3 Ergebnisse bei 5000 kbit/s
4.3.4 Fazit MPEG-1
4.4 MPEG-2
4.4.1 Konfiguration
4.4.2 Ergebnisse bei 1500 kbit/s
4.4.3 Ergebnisse bei 5000 kbit/s
4.4.4 Fazit MPEG-2
4.5 QuickTime Sorenson Video 3 Pro
4.5.1 Konfiguration
4.5.2 Ergebnisse bei 30 kbit/s
4.5.3 Ergebnisse bei 300 kbit/s
4.5.4 Ergebnisse bei 1500 kbit/s
4.5.5 Fazit Sorenson Video 3 Pro
4.6 RealVideo 10
4.6.1 Konfiguration
4.6.2 Ergebnisse bei 30 kbit/s
4.6.3 Ergebnisse bei 300 kbit/s
4.6.4 Ergebnisse bei 1500 kbit/s
4.6.5 Fazit RealVideo 10
4.7 Windows Media Video 9
4.7.1 Konfiguration und allgemeine Ergebnisse
4.7.2 Ergebnisse bei 30 kbit/s
4.7.3 Ergebnisse bei 300 kbit/s
4.7.4 Ergebnisse bei 1500 kbit/s
4.7.5 Fazit Windows Media Video 9

5 Weitere Vergleichsfelder
5.1 Input-Formate
5.2 Deinterlacing
5.2.1 Weave
5.2.2 Skip Field
5.2.3 Skip Field mit Zeilenverdopplung
5.2.4 Skip Field mit Interpolation
5.2.5 Bobbing
5.2.6 Blending
5.2.7 Adaptives Deinterlacing
5.2.8 Motion Compensation
5.2.9 Automatisches Deinterlacing
5.2.10 Zusammenfassung Deinterlacing
5.3 Skalierung
5.4 Normwandlung
5.5 Filter
5.6 Output-Formate
5.7 Audiokodierung
5.8 Handhabung

6 Zusammenfassung und Ausblick

Anhang
Erstellung der Referenzsequenz
Messung von Dateigröße und Kodierungsdauer
Szenenerkennung
Ergebnisse

Literaturverzeichnis

Abbildungsverzeichnis:

Abb. 1: Betrachtungsabstand und Zeilenauflösung

Abb. 2: Ruhe- und Mithörschwelle

Abb. 3: Zeitlicher Verdeckungseffekt

Abb. 4: 4:2:0 Unterabtastung

Abb. 5: Blockbildung

Abb. 6: Die 64 möglichen Frequenzen in Bildern

Abb. 7: Wiederhergestellter Bildblock nach Dekodierung

Abb. 8: Zwei zeitlich benachbarte Bilder und ihr Differenzbild

Abb. 9: Typische GOP-Struktur

Abb. 10: Beispiel für eine Huffman-Kodierung

Abb. 11: Beziehung zwischen Qualität, Geschwindigkeit und Dateigröße bei der Kodierung

Abb. 12: Programmoberfläche Autodesk Cleaner XL 1.5

Abb. 13: Programmoberfläche Canopus ProCoder 2

Abb. 14: Programmoberfläche Sorenson Squeeze 4

Abb. 15: Versuchsrahmen

Abb. 16: “Tree“ (src1_ref__625)

Abb. 17: “Barcelona“ (src2_ref__625)

Abb. 18: “Harp“ (src3_ref_625)

Abb. 19: “Moving graphic“ (src4_ref__625)

Abb. 20: “Canoa Valsesia“ (src5_ref__625)

Abb. 21: “F1 Car“ (src6_ref__625)

Abb. 22: “Fries“ (src7_ref__625)

Abb. 23: “Horizontal scrolling 2“ (src8_ref__625)

Abb. 24: “Rugby“ (src9_ref__625)

Abb. 25: “Mobile&Calendar“ (src10_ref__625)

Abb. 26: Fehlbilder bei RV10_1500_CBR1 mit Loss Protection und WMVv9_30_CBR1_CL

Abb. 27: Abhängigkeit der Kammsichtbarkeit vom Bildmotiv

Abb. 28: Fehler bei Skip Field (Blending sowie falsche Farbdeckung)

Abb. 29: Ergebnisse Skip Field

Abb. 30: Ergebnisse Skip Field mit Zeilenverdopplung und Interpolation

Abb. 31: Ergebnisse Blending im Vergleich zur Referenz und Interpolation

Abb. 32: Adaptives Deinterlacing von Cleaner und AviSynth im Vergleich

Abb. 33: Adaptives Deinterlacing von Cleaner, ProCoder und AviSynth im Vergleich

Abb. 34: Adaptives Deinterlacing von Cleaner, ProCoder und AviSynth im Vergleich (2)

Abb. 35: Beispiel für unterschiedliche Verkleinerungen (Bildausschnitt)

Abb. 36: HD-Testbild mit Hervorhebung des verwendeten Ausschnitts

Abb. 37: Beispiel für unterschiedliche Verkleinerungen (Bildausschnitt vergrößert) (2)

Abb. 38: Beispiel für unterschiedliche Vergrößerungen (Bildausschnitt vergrößert)

Abb. 39: Beispielhafte Bildinterpolation bei Wandlung von PAL nach NTSC

Abb. 40: Fehlerhaftes Halbbild bei Squeeze

Abb. 41: Pegelbetrachtung für gesamte Dateien bzw. Ausschnitte

Diagrammverzeichnis:

Diagramm 1: Theoretisches Verhalten von CBR, VBR und VBR 2-pass

Diagramm 2: Diagrammtyp 1 zur Darstellung von Bildqualität und Kodierdauer

Diagramm 3: MPEG1-Bildqualität in Abhängigkeit der Kodierdauer bei 1500 kbit/s

Diagramm 4: MPEG1-Bildqualität in Abhängigkeit der Dateigröße bei 1500 kbit/s

Diagramm 5: MPEG1-Bildqualität in Abhängigkeit der Kodierdauer bei 5000 kbit/s

Diagramm 6: MPEG1-Bildqualität in Abhängigkeit der Dateigröße bei 5000 kbit/s

Diagramm 7: MPEG2-Bildqualität in Abhängigkeit der Kodierdauer bei 1500 kbit/s

Diagramm 8: MPEG2-Bildqualität in Abhängigkeit der Dateigröße bei 1500 kbit/s

Diagramm 9: MPEG2-Bildqualität in Abhängigkeit der Kodierdauer bei 5000 kbit/s

Diagramm 10: MPEG2-Bildqualität in Abhängigkeit der Dateigröße bei 5000 kbit/s

Diagramm 11: SV3P-Bildqualität in Abhängigkeit der Kodierdauer bei 30 kbit/s

Diagramm 12: SV3P-Bildqualität in Abhängigkeit der Dateigröße bei 30 kbit/s

Diagramm 13: SV3P-Bildqualität in Abhängigkeit der Kodierdauer bei 300 kbit/s

Diagramm 14: SV3P-Bildqualität in Abhängigkeit der Dateigröße bei 300 kbit/s

Diagramm 15: SV3P-Bildqualität in Abhängigkeit der Kodierdauer bei 1500 kbit/s

Diagramm 16: SV3P-Bildqualität in Abhängigkeit der Dateigröße bei 1500 kbit/s

Diagramm 17: RV10-Bildqualität in Abhängigkeit der Kodierdauer bei 30 kbit/s

Diagramm 18: RV10-Bildqualität in Abhängigkeit der Dateigröße bei 30 kbit/s

Diagramm 19: RV10-Bildqualität in Abhängigkeit der Kodierdauer bei 300 kbit/s

Diagramm 20: RV10-Bildqualität in Abhängigkeit der Kodierdauer bei 300 kbit/s

Diagramm 21: RV10-Bildqualität in Abhängigkeit der Kodierdauer bei 1500 kbit/s

Diagramm 22: RV10-Bildqualität in Abhängigkeit der Dateigröße bei 1500 kbit/s

Diagramm 23: WMVv9-Bildqualität in Abhängigkeit der Kodierdauer bei 30 kbit/s

Diagramm 24: WMVv9-Bildqualität in Abhängigkeit der Dateigröße bei 30 kbit/s

Diagramm 25: WMVv9-Bildqualität in Abhängigkeit der Kodierdauer bei 300 kbit/s

Diagramm 26: WMVv9-Bildqualität in Abhängigkeit der Dateigröße bei 300 kbit/s

Diagramm 27: WMVv9-Bildqualität in Abhängigkeit der Kodierdauer bei 1500 kbit/s

Diagramm 28: WMVv9-Bildqualität in Abhängigkeit der Dateigröße bei 1500 kbit/s

Diagramm 29: gemessene Deinterlacing-Zeiten

Gleichungsverzeichnis:

Gleichung 1: Kompressionsrate

Gleichung 2: Redundanzdifferenz

Gleichung 3: bpp (Bits-pro-Pixel-Wert)

Gleichung 4: relative Kodierdauer

Gleichung 5: relative Dateigröße

Gleichung 6: relative Qualität

Gleichung 7: MSE (mean sqare error)

Gleichung 8: PSNR (peak signal to noise ratio)

Gleichung 9: SSIMY/U/V (structural similarity index)

Gleichung 10: mittlere Differenz Abbildung in dieser Leseprobe nicht enthalten

Gleichung 11: mittlere Differenz Abbildung in dieser Leseprobe nicht enthalten

Gleichung 12: empirische Standardabweichung Abbildung in dieser Leseprobe nicht enthalten

Gleichung 13: empirische Standardabweichung Abbildung in dieser Leseprobe nicht enthalten

Gleichung 14: Co-Varianz Abbildung in dieser Leseprobe nicht enthalten, normalisiert durch die Varianz

Tabellenverzeichnis:

Tab. 1: Darstellung üblicher Unterabtastungs-Formen

Tab. 2: 64 Pixel eines Blocks und ihre Grauwerte

Tab. 3: 64 DCT-Koeffizienten für 64 Frequenzen

Tab. 4: Quantisierungstabelle für MPEG-2 (Luminanz)

Tab. 5: DCT-Koeffizienten nach der Quantisierung

Tab. 6: Vor- und Nachteile der Bitratenmodi

Tab. 7: Übersicht auf Software beruhender Multiformat-Encoder

Tab. 8: Verwendete Audiodateien

Tab. 9: Einsatzgebiete & Randbedingungen

Tab. 10: Kontrastunterschiede bei bestimmten Programm-Codec-Kombinationen

Tab. 11: verwendete Einstellungen bei MPEG-1

Tab. 12: verwendete Einstellungen bei MPEG-2

Tab. 13: verwendete Einstellungen bei QuickTime

Tab. 14: verwendete Einstellungen bei RealVideo

Tab. 15: verwendete Einstellungen bei WMV

Tab. 16: Input-Formate Video

Tab. 17: Input-Formate Audio

Tab. 18: Input-Formate Bildsequenzen

Tab. 19: Einstellungen Weave-Deinterlacing

Tab. 20: Einstellungen Skip-Field-Deinterlacing

Tab. 21: Einstellungen Skip-Field-Deinterlacing mit Interpolation

Tab. 22: Einstellungen adaptives Deinterlacing

Tab. 23: Einstellungen automatisches Deinterlacing

Tab. 24: Übersicht Deinterlacing-Verfahren

Tab. 25: Vergleich einzelner Kodierungen mit externer und interner Skalierung

Tab. 26: Übersicht Normwandlungs-Fähigkeiten

Tab. 27: Audiofilter

Tab. 28: Videofilter

Tab. 29: Output-Formate Audio

Tab. 30: Output-Formate Bildsequenzen

Tab. 31: Output-Formate Video

Tab. 32: Optionen für MPEG1/-2-Audio

Tab. 33: Optionen für QuickTime-Audio

Tab. 34: Optionen für RealVideo-Audio

Tab. 35: Optionen für WMV-Audio

Tab. 36: Allgemeine Programm-Optionen

Tab. 37: Optionen für Quelldateien

Tab. 38: Optionen für Ausgabeformate

Tab. 39: Optionen zur Kodierung

Tab. 40: Weitere Funktionen / Eigenschaften

Tab. 41: Zusammenfassung der Einzelvergleiche

Tab. 42: Farben für die Kennzeichnung von Dateigrößen-Über- und Unterschreitungen

Tab. 43: Ergebnisse der MPEG-1-Testreihe bei 1500 kbit/s

Tab. 44: Ergebnisse der MPEG-1-Testreihe bei 5000 kbit/s

Tab. 45: Ergebnisse der MPEG-2-Testreihe bei 1500 kbit/s

Tab. 46: Ergebnisse der MPEG-2-Testreihe bei 5000 kbit/s

Tab. 47: Ergebnisse der QuickTime-Testreihen für alle Bitraten

Tab. 48: Ergebnisse der RealVideo-Testreihen für alle Bitraten

Tab. 49: Ergebnisse der WMV-Testreihen für alle Bitraten

Glossar

Abbildung in dieser Leseprobe nicht enthalten

1 Einleitung

1.1 Datenkompression

Ein Viertel unseres Gehirns dient der Verarbeitung visueller Sinneseindrücke [Waggoner02, S. 4], welche rund 80 Prozent jener Informationen ausmachen, die wir aus der Umwelt aufnehmen. Zur Kommunikation dieser Eindrücke konnten wir bis zum neunzehnten Jahrhundert ausschließlich auf visuell und sprachlich formulierte Zeichen zurückgreifen. Der Informationsgehalt wird durch sie auf das Wesentliche reduziert und über einen schmalen Kommunikationskanal übertragen, sei es in Form von Sprache oder einzelner Bilder. Dieser Vorgang kann jedoch bewusst oder unbewusst mit Fehlern behaftet sein, womit sich der Wunsch verbindet, visuelle Eindrücke direkt zu vermitteln.

Zunächst konnte die Fotografie diesem Anspruch gerecht werden, später Film und Fernsehen. Die Bereitstellung von analoger und nun auch digitaler Videotechnik ermöglicht es, visuelle und akustische Informationen einfach und preiswert zu speichern, zu verarbeiten und weiterzureichen. Der Kreislauf aus verfügbarer Technik, den daraus resultierenden Anwendungsfeldern und den durch sie wiederum steigenden Ansprüchen an leistungsstärkere Technik nimmt hier kein Ende: Computer werden schneller, es können höher aufgelöste Bilder verarbeitet werden, zur Effizienzsteigerung ist noch schnellere Hardware nötig. Auch bei der Verteilung wachsen die Ansprüche, was an immer schnelleren Internetanbindungen sichtbar ist, an einem Ansteigen der Senderzahl im Fernsehen oder einer Kapazitätssteigerung von CD zu DVD sowie zu der nächsten Generation optischer Datenträger in Form von HD-DVD und Blu-ray Disc. Diese rasante Entwicklung wurde erst durch die Digitaltechnik ermöglicht. Bei ihr werden Informationen ähnlich wie bei der Sprache in Form von Symbolen ausgedrückt, jedoch in stark vereinfachter Form durch ein Alphabet, welches z. B. ausschließlich aus den Zeichen 0 und 1, den so genannten Bits[1], besteht. Ein Bit kann leicht durch Computer verarbeitet werden und besitzt eine geringe Fehleranfälligkeit.

Bildinformationen gehören zu den aufwendigsten Gebieten der Digitaltechnik. Ein beispielsweise 720 mal 576 Pixel[2] messendes Video, welches aus 25 Einzelbildern pro Sekunde besteht, führt bei einer Stunde Laufzeit und 24 Bit/Pixel zu einer Datenmenge von 895.795.200.000 Bits bzw. 104 GiB[3], den Ton noch nicht mitgerechnet. Zu dessen Speicherung wären 24 handelsübliche DVDs (4,7 GB Speicherkapazität, Stand 2006) nötig, die Übertragung über eine moderne Internetanbindung mit 6 Mbit/s würde über 40 Stunden in Anspruch nehmen. Bei diesen Zahlen wird deutlich, dass die Datenmenge reduziert werden muss. Hier kommt die Videokompression ins Spiel, die u. a. dafür sorgt, dass auf Video-DVDs ganze Spielfilme Platz finden, ohne dass ein nenneswerter Qualitätsverlust zu verzeichnen ist. Dies gelingt, indem man für das menschliche Wahrnehmungssystem irrelevante Informationen unterdrückt, Gemeinsamkeiten innerhalb eines Bildes und zwischen benachbarten Bildern zusammenfasst und Regelmäßigkeiten des sich ergebenden Datenstroms zu dessen Komprimierung ausnutzt. Hierfür haben sich verschiedene Techniken entwickelt, die in Codecs zur Anwendung kommen, einer Wortkreuzung aus COder und DECoder. Ein (En-) Coder wandelt ein Signal in ein für einen bestimmten Kanal geeignetes Format um, wobei unter Kanal u. a. der Fernsehkanal, das Internet oder ein Datenträger verstanden werden kann. Ein Decoder desselben Codecs wandelt dieses Format in das Ausgangssignal zurück, welches bei Verwendung verlustbehafteter Kompressionstechniken Abweichungen aufweisen kann. Je besser der Codec, desto geringer der Unterschied.

Wichtige Gründe für den Erfolg eines Codecs liegen nicht nur in seiner Fähigkeit, Bildqualität zu erhalten, sondern auch in seinem Preismodell, der Verbreitung seiner Decoder oder seiner Tauglichkeit für bestimmte Inhalte und Einsatzgebiete. Da diese Gebiete bisweilen sehr unterschiedlich ausfallen, wird es immer eine Reihe unterschiedlicher Codecs geben, die alle ihre speziellen Vor- und Nachteile besitzen. Moderne Computer verfügen meist von Haus aus über Software zur Dekodierung der gebräuchlichsten Codecs, aktuelle Schnittprogramme stellen ebenfalls verschiedene Codecs bereit. Um zwischen den Formaten zu übersetzen (zu „transkodieren“), sind spezielle Programme nötig. Multiformat-Encoder bieten dabei den Vorteil, auf ein oder mehrere Videos gleichzeitig verschiedene Codecs anwenden zu können.

1.2 Aufgabenstellung und Zielsetzung

In dieser Arbeit werden drei populäre Multiformat-Encoder auf Softwarebasis untersucht, die alle über eine vergleichbare Funktionsvielfalt, Preisfestlegung und Zielgruppe verfügen: Autodesk Cleaner XL, Canopus ProCoder sowie Sorenson Squeeze, jeweils in der zum Zeitpunkt der Arbeit aktuellen Version. Alle sind unter Windows XP für ca. 500 Euro erhältlich und erstellen als kleinsten gemeinsamen Nenner die Formate MPEG-1, MPEG-2 (4:2:0), RealMedia, QuickTime, Windows Media, AVI und DV (in den Varianten DV, DVCPro, DV50). Sie bieten diverse Filter an und ermöglichen eine Batchverarbeitung: das Abarbeiten einer Liste von Aufgaben, währenddessen sich weiterhin mit dem Programm arbeiten lässt. Direkte Vergleiche der drei Programme in allen Disziplinen gibt es noch nicht. Häufiger lassen sich Vergleiche einzelner Codecs finden, die jedoch eines außer Acht lassen: in der Produktionswelt wird oft nicht nach den Formaten mit der besten Qualität verlangt (z.B. H.264, VC-1 oder Nero Digital AVC), sondern nach den gebräuchlichsten.

Die Arbeit versucht die Frage zu beantworten, wo die Stärken und Schwächen der drei oben erwähnten Programme liegen. Jedes Programm muss

- die fünf Formate MPEG-1, MPEG-2, QuickTime (mit Sorenson-Video-3-Pro-Codec), RealVideo 10 und Windows Media Video 9 erstellen,
- bei diesen Formaten verschiedene Bitraten-Bildauflösungs-Kombinationen beherrschen und
- verschiedene Geschwindigkeits-/Qualitäts-Stufen ermöglichen, sofern dies ein Codec vorsieht - Geschwindigkeit und Qualität der Enkodierung hängen oft umgekehrt proportional voneinander ab.

Es ergibt sich demnach je Programm eine dreidimensionale Matrix, die mit denen der anderen beiden Programme verglichen werden kann. Der Vergleich richtet sich nach drei Kriterien: Bildqualität, Kodiergeschwindigkeit und Einhaltung der zu erwartenden Dateigröße. Zur Absicherung der Ergebnisse ist auch die Beantwortung folgender Fragen notwendig: Erzeugt ein Programm bei der Anwendung eines Codecs bei gleichen Einstellungen immer das gleiche Ergebnis? Hat ein Programm bzw. ein Codec Probleme mit bestimmten Bildinhalten? Diese Problemfelder werden stichprobenartig untersucht.

Neben dieser Kernuntersuchung müssen noch weitere Fragen beantwortet werden: Wie einfach lässt sich ein Programm bedienen? Sind alle Codec-Parameter einstellbar? Stürzt ein Programm hin und wieder ab? Welche Filter und Funktionen stehen zur Verfügung (Deinterlacing, PAL-NTSC-Wandlung und umgekehrt)? Taugt deren Qualität? Welche zusätzlichen Formate lassen sich erstellen? Welche Dateiarten können gelesen werden? Gibt es Unterschiede in der Audioqualität? Anhand von Tabellen wird eine Gegenüberstellung der Ergebnisse und somit eine Möglichkeit zur Entscheidungsfindung für eines der drei Programme geboten, ohne dass ein absoluter Gewinner in allen Disziplinen zu erwarten ist.

Die Arbeit gliedert sich in vier Teile: Zunächst wird auf die Grundlagen des menschlichen Wahrnehmungssystems und der Videokompression eingegangen, die fünf Codecs näher beschrieben sowie die softwarebasierten Multiformat-Encoder vorgestellt. Im nächsten Kapitel werden Analyseverfahren, Referenzsequenz und Testumgebung beschrieben. Das dritte Kapitel dient der Auswertung und ein letztes der Beantwortung der weiteren Fragen (Deinterlacing, Normwandlung, Handhabung etc.). Ein Fazit fasst schließlich alle Ergebnisse zusammen und liefert in einer Tabelle ein Gesamtbild der Programme.

2 Grundlagen

2.1 Menschliches Wahrnehmungssystem

Der Gesichtssinn, auch „Human Visual System“ (HVS) genannt, sowie das Gehör des Menschen bieten einige Besonderheiten [Gierling04, S. 243] [Schmidt05, S. 8]. Diese sind bei der Konstruktion eines Codecs [Clarke85] oder der Beurteilung dessen visueller bzw. auditiver Qualität zu beachten [Zhou03, S. 1044]. Die Kenntnis dieser Eigenschaften ist für Video- und Audiokompression von Vorteil, weil sie angibt, welche Informationen irrelevant sind und welche Inhalte eine größere Aufmerksamkeit verdienen:

1. Bild- und Audiosample-Rate: Unser Bewusstsein nimmt pro Sekunde 16 subjektive Zeitquanten wahr [Nørret97, S. 208]. Dies führt zum einen dazu, dass wir bei Bildfolgen mit mehr als 16 Bildern pro Sekunde laufende Bilder sehen, zum anderen, dass unser Ohr bei mehr als 16 Schwingungen pro Sekunde keine Einzelimpulse mehr wahrnimmt, sondern einen Ton. Einige Wiedergabesysteme wie Röhrenmonitore (50 bzw. 60 Hz) und Kinoprojektoren (48 Hz) müssen die Bildrate zusätzlich erhöhen, da die Bilder nicht kontinuierlich gezeigt werden, sondern von Schwarzphasen unterbrochen sind. Bei Computern besteht dieses Problem im Allgemeinen nicht, da hier entweder flimmerarme Röhren oder kontinuierlich leuchtende LCD-Monitore zur Anwendung kommen. Hier reichen 24 bis 30 Hz aus. Unser Ohr nimmt je nach Alter Geräusche von 20 Hz bis 20 kHz wahr. Um Schwingungen solcher Frequenz zu speichern, ist laut dem Abtasttheorem eine Abtastfrequenz von größer als 40 kHz nötig.

2. Auflösungsvermögen der Netzhaut: Auf der Netzhaut befindet sich eine Fovea centralis (Sehgrube) genannte Einsenkung mit einem Durchmesser von etwa 1,5 mm, die als der Bereich des schärfsten Sehens gilt. Sie ermöglicht uns, auf dreieinhalb Metern ein Objekt von einem Millimeter Größe wahrzunehmen [Waggoner02, S. 6]. Dies führt bei den im PAL-System verwendeten 576 sichtbaren Zeilen zu einem empfohlenen Betrachtungsabstand von vier bis sechs Bildhöhen [Webers02, S. 151]. Bei gleichem Abstand sorgt die bei HDTV verwendete Auflösung für ein etwa viereinhalb Mal größeres Bild. Je feiner die zur Darstellung benutzten Bildelemente, desto kleiner kann der Abstand gewählt werden, ohne dass das Bildraster sichtbar wird. Daher ist die Kenntnis der Wiedergabebedingungen für die Wahl der Videobildgröße wichtig.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 1: Betrachtungsabstand und Zeilenauflösung [Schmidt05, Abb. 2.12]

3. Helligkeitsunterschiede werden leichter erkannt als Farbunterschiede. Auf der Netzhaut des Auges befinden sich ca. 120 x 106 lichtempfindliche Zellen, die in Stäbchen und Zapfen unterteilt werden. Die Stäbchen registrieren schwache Helligkeitswerte, die Zapfen sind bei hohen Leuchtdichten für die Helligkeits- und Farbwahrnehmung zuständig. Der Anteil letzterer beträgt nur etwa fünf Prozent aller Sehzellen, womit auch das Farb- im Vergleich zum Helligkeitsempfinden eine untergeordnete Rolle spielt. Videocodecs können somit die Farbauflösung und –quantisierung gröber ansetzen als bei der Helligkeit.

4. Unterschiede in stehenden Bildteilen werden früher erkannt als solche in bewegten. Der Gesichtssinn umfasst horizontal einen Winkel von 180°, der Bereich des deutlichen Sehens nur einige Grad. Wir können umso mehr Details wahrnehmen, je länger wir uns auf ein Objekt konzentrieren. Das funktioniert nur bei stehenden oder langsam bewegten Objekten gut, bei schnelleren Bewegungen verschwimmen die Konturen. Somit kann ein Kompressionsverfahren die Qualität in schnell bewegten Bildteilen minimieren.

5. Unterschiede in Flächen werden früher erkannt als solche in hochfrequenten Bildteilen. Der Aufbau des Auges sorgt für eine Unterdrückung hoher Frequenzen, die zudem nur im Bereich der Fovea centralis erkannt werden. Niedrige Frequenzen, z.B. Flächen im Himmel, können jedoch selbst im peripheren Bereich der Netzhaut gut wahrgenommen werden. Zusätzlich ist unser Gehirn auf Strukturen spezialisiert [Zhou05, S. 3]. In strukturarmen Flächen fallen geringste Fehler wie Blockbildungen schneller auf als in bereits strukturierten Bildteilen. Ein Codec sollte daher eher Rücksicht auf niedrige als auf hohe Frequenzen nehmen.

6. Fehler im Vordergrund werden früher beanstandet als solche im Hintergrund. Neben den rein physischen Eigenschaften des Sehapparates gilt es auch die Sehgewohnheiten selbst zu berücksichtigen. Da ein Betrachter geneigt ist, einer Handlung zu folgen, und diese in der Regel im Vordergrund stattfindet, sollte auch die Qualität in diesem Bereich höher sein als im Bildhintergrund.

7. Töne können maskiert werden: Unser Ohr nimmt Töne erst dann wahr, wenn sie oberhalb der frequenzabhängigen Hörschwelle liegen. Darüber hinaus erzeugen laute Töne eine Mithörschwelle, unter der benachbarte leisere Töne nicht wahrgenommen werden, auch wenn sie oberhalb der Ruhehörschwelle liegen (Abb. 2). Neben frequenzmäßigen Maskierungen gibt es auch zeitliche (Abb. 3). So werden leise Töne durch zeitlich voraus- oder nacheilende laute Signale verdeckt [Waggoner02, S. 45]. Diese psychoakustischen Effekte können bei der Audiokompression berücksichtigt werden.

Abbildung in dieser Leseprobe nicht enthalten

2.2 Kompressionsverfahren

2.2.1 Redundanz und Irrelevanz

Video- und Audiokompression bezeichnen Verfahren zum Verkleinern audiovisueller Datenaufkommen. Neben verlustfreien Verfahren, die auf Redundanzreduktion basieren, werden verlustbehaftete Kompressionstechniken eingesetzt, die bevorzugt irrelevante Inhalte beseitigen [Schmidt05]. Dafür sind Kenntnisse des menschlichen Wahrnehmungssystems nötig, um psychooptische und -akustische Effekte ausnutzen zu können. Der Begriff der Kodierung bzw. des Encodings beschreibt die Übersetzung von einem Zeichensystem in ein anderes, um z.B. eine Anpassung von Daten an einen fehleranfälligen oder schmalbandigen Übertragungskanal zu erreichen. So werden beim Morsecode Buchstaben in eine Abfolge kurzer und langer Tonsignale übertragen, um leicht in elektrische Signale gewandelt werden zu können. Da Kompression und Kodierung nicht voneinander getrennt vorkommen, greifen beide auf die gleiche Bedeutung zurück und werden stellvertretend genutzt. Die Kompressionsrate (Gleichung 1) bezeichnet das Verhältnis aus komprimierter Größe zur Originalgröße [Henning00].

Abbildung in dieser Leseprobe nicht enthalten

Abbildung in dieser Leseprobe nicht enthalten Kompressionsrate

mit n1 = komprimierte Größe und n2 = Originalgröße

Je nachdem, wie stark Daten komprimiert werden müssen, kommen verschiedene Kompressionsverfahren zum Einsatz.

Bei der Redundanzreduktion, einem umkehrbar verlustlosen Prozess, werden mehrfach vorkommende Daten zusammengefasst. Ihr liegt der Sachverhalt zugrunde, dass in einer Informationsmenge Wiederholungen auftreten (Redundanz), welche die Grundinformation stützen, aber nicht unbedingt notwendig sind. Eine Beseitigung dieser Redundanzen führt zu einer Kompression, die verlustfrei arbeitet und daher eine Rekonstruktion der ursprünglichen Daten erlaubt. Aus Gleichung 2 lässt sich die erzielte Redundanzdifferenz berechnen. Bei einem Kompressionsfaktor von 2:1 ist die Grenze zwischen Redundanz- und Irrelevanzreduktion erreicht.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung in dieser Leseprobe nicht enthalten Redundanzdifferenz

Die Irrelevanzreduktion ist ein irreversibel verlustbehafteter Vorgang. Beruhend auf Eigenschaften des Wahrnehmungssystems reduzieren Kompressionsalgorithmen zunächst Bild- bzw. Toninformationen, die vom Betrachter nicht wahrgenommen werden und somit überflüssig sind. Erst ab einem Reduktionsfaktor von etwa 10:1 werden Fehler wahrnehmbar und relevante Inhalte reduziert.

Die Relevanzreduktion tritt auf, sobald mehr oder weniger auffindbare Unterschiede zwischen dekomprimiertem Signal und originalem Quellmaterial auftreten. Im Bereich der Distribution muss sie aus ökonomischen Gründen in Kauf genommen werden, da hier Kompressionsraten von 25:1 und höher erforderlich sind. Dabei muss eine Beeinträchtigung des subjektiven Eindrucks nicht immer mit einer Verschlechterung gleichgesetzt werden. Gerade moderne Kompressionstechniken wie die Wavelet-Transformation sorgen bei hohen Kompressionsraten für eine Weichzeichnung des Bildes, was je nach Betrachter und Bildgegenstand sogar wünschenswert sein kann.

Redundanz-, Irrelevanz- und Relevanzreduktion werden von den in den folgenden Abschnitten vorgestellten Kompressionsverfahren unterschiedlich gewichtet.

2.2.2 Bildaufbereitung

Bevor die eigentlichen Kodierungsverfahren zur Anwendung kommen, muss das Quellmaterial aufbereitet werden. Dazu gehört, falls nicht schon geschehen, die Übertragung des Farbraums vom RGB- in den YUV-Bereich, welcher auch YCrCb genannt wird. Statt für jeden Bildpunkt einen Rot-, Grün- und Blauwert anzugeben, verwendet dieses Format eine Unterteilung in einen Helligkeitswert (Y) und zwei Farbdifferenzsignale (Cr, Cb). Näheres zur Konvertierung beider Formate siehe [Schmidt05, S. 63]. In einem zweiten Schritt kann nun die Auflösung der Farbsignale unabhängig von der Helligkeit reduziert werden, da der menschliche Sehapparat gemäß Kapitel 2.1 Farbunterschiede schlechter wahrnimmt als Helligkeitsdifferenzen. Dieser auch als Subsampling bezeichnete Prozess [Schmidt05, S. 118] fällt in den Bereich der Irrelevanzreduktion und wird in Abb. 4 anhand der von vielen Formaten verwendeten 4:2:0[4] -Unterabtastung verdeutlicht. Auf vier Helligkeitsinformationen fällt nur je ein Wert für Cr und Cb.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 5: Blockbildung

In einem dritten Schritt werden die drei Komponenten jeweils in Blöcke von 8x8 Pixeln unterteilt [Schmidt05, S. 154], was für die spätere Intraframekodierung (siehe nächster Abschnitt) von Bedeutung ist (Abb. 5). Vier Helligkeitsblöcke und je ein Block der beiden Farbkomponenten ergeben einen Makroblock, dem bei der später eventuell eingesetzten Bewegungskompensation ein Bewegungsvektor zugewiesen wird. In einem letzten, optionalen Schritt können noch diverse Filter angewendet werden, die das Bild glätten, also vor allem tiefpassfiltern. Damit können schon vorab hohe Frequenzen wie das störende Rauschen von Filmaufnahmen herausgefiltert werden, damit sich der Kodieralgorithmus vor allem auf die relevanten Bildinhalte konzentrieren kann. Es obliegt jedem Programm und Anwender selbst, ob er lieber ein scharfes, fehlerreiches Bild oder ein weiches, fehlerarmes Bild bevorzugt. Manche Encoder-Programme sind auch auf einen Deinterlacer[5] angewiesen, obwohl einige Codecs wie MPEG-2 standardgemäß eine Halbbildkodierung vorsehen.

2.2.3 Intraframekodierung

Techniken zur Intraframekodierung nutzen Ähnlichkeiten innerhalb eines Bildes zur Datenreduktion aus. Im einfachsten Fall ist es ein bei Animationscodecs angewendetes Run Length Encoding (RLE), bei dem statt mehrerer gleicher Werte, die in Folge auftreten, ein einzelner Wert mit der Zahl seiner Wiederholung abgespeichert wird. Bei natürlichen Bildinhalten hat diese Lauflängencodierung keine hohe Effizienz, da selten ein und derselbe Wert wiederholt auftritt. Viel eher sind von Wert zu Wert leichte Unterschiede feststellbar, weshalb hier die Differenzielle Puls-Code-Modulation (DPCM) zu einer höheren Effizienz führt. Hierbei werden nur die Differenzwerte zwischen benachbarten Bildpunkten übertragen. Zur Steigerung der noch immer nicht genügend hohen Effizienz können diese Werte quantisiert werden.

Fast alle modernen Codecs wenden die Diskrete Cosinus-Transformation (DCT) an, die ähnlich der Fourier-Transformation Signale aus dem Ortsbereich in den Frequenzbereich transformiert. Der Begriff der Frequenz rührt aus den Zeiten der analogen Fernseh- und Videotechnik her, als zu jedem Zeitpunkt nur ein Bildpunkt generiert werden konnte und das resultierende Signal ein Bild somit im Zeitverlauf anzeigte. Flächen im Bild sorgten für eine geringe Signalveränderung (niedrige Signalfrequenz), feine Muster hingegen für starke Signalsprünge (hohe Frequenz). Auch digitale Systeme speichern ein Bild zunächst Punkt für Punkt als eine Kette von Werten, die sich theoretisch zeitlich darstellen ließe. Als Sonderform der allgemeinen Transformationscodierung nutzt die DCT den Umstand, dass sich aus dem Frequenzspektrum eines Videosignals Bearbeitungsmöglichkeiten erschließen, die sich nach den Eigenschaften des Sehapparates richten. Sie ermöglicht die Erkennung und Reduzierung hoher Frequenzen, und damit eine Steigerung der Kompression. Die 8x8 Pixel großen Blöcke jeder Helligkeits- bzw. Farbdifferenz-Komponente beinhalten Grauwerte mit 8 Bit/Pixel (siehe Tab. 2). Durch eine einfach zu implementierende Berechnungsmethode [Schmidt05, S. 139] erhält man aus den 64 Pixeln eines Bildblocks eine Matrix aus 64 DCT-Koeffizienten (Tab. 3), die jeweils den Anteil einer bestimmten Frequenz innerhalb des Bildblocks widerspiegeln (Abb. 6). Der bedeutendste Wert befindet sich in der linken oberen Ecke. Er wird DC-Koeffizient[6] genannt und bestimmt den durchschnittlichen Grau- oder Farbwert des gesamten Bildblocks. Die Koeffizienten für die niederfrequenten AC[7] -Spektralanteile befinden sich direkt neben bzw. unter dem AC-Wert. Mit zunehmender Entfernung nehmen die Frequenzen zu, rechts unten befindet sich der Anteilswert der höchsten Frequenz.

Abbildung in dieser Leseprobe nicht enthalten

Tab. 3: 64 DCT-Koeffizienten für 64 Frequenzen

Der Vorgang der Transformation in den Frequenzbereich bringt noch keine Kompression mit sich, im Gegenteil: Wurde vorher jeder Bildpunkt mit 8 Bit repräsentiert, benötigt nun jeder Koeffizient 11 Bit [Schmidt05, S. 141]. Erst die nun folgende Quantisierung und Rundung sorgt für die Schrumpfung der Datenmenge. Da für das Auge hohe Frequenzen weniger wichtig sind, können diese stärker quantisiert werden als niedrige. Für Farbe und Helligkeit gibt es verschiedene Quantisierungstabellen (z.B. Tab. 4), die jeweils 64 Werte enthalten, mit denen die 64 entsprechenden Koeffizienten geteilt und anschließend gerundet werden (Tab. 5). Viele der hochfrequenten Anteile werden dabei fast zu Null, was durch eine anschließende Zick-Zack-Auslesung (Tab. 5) dazu führt, dass nur die ersten niederfrequenten Anteile übertragen werden müssen. Es handelt sich dabei um eine Anordnungsmethode, bei der die Anteile nach steigender Frequenz aufgereiht werden. Da früher oder später nur noch Nullen kommen, kann durch Setzen eines EOB-Zeichens[8] in der Regel schon nach wenigen Koeffizienten die Bearbeitung des Blocks abgeschlossen werden. Die Bewertungsmatrizen (= Quantisierungstabellen) bestimmen, in welchem Maß Fehler wie der Blocking-Effekt[9] auftreten.

Daneben gibt es weitere Kodierungsverfahren innerhalb eines Bildes [Waggoner02, S. 36ff.]. Die bei älteren Formaten wie GIF, Cinepak und Sorenson Video 1 und 2 angewendete Vektor-Quantisierung (VQ) ermöglicht im Prinzip eine höhere Effizienz als die DCT, ist jedoch sehr rechenintensiv. Ähnlich steht es mit der Fraktal-Kompression, die einst bei dem ClearVideo-Codec eingesetzt wurde. Höhere Erwartungen werden dagegen an die Wavelet-Transformation gesetzt, die bereits in JPEG2000, im MPEG-4-Einzelbildcodec sowie Indeo 4 und 5 zu finden ist. Da hier die Verarbeitung von zeitlichen Redundanzen noch Schwierigkeiten bereitet, hat sie sich im Videobereich noch nicht etabliert, was jedoch nur noch eine Frage der Zeit ist, da sie eine effektive, skalierbare Bildqualität ermöglicht.

Abbildung in dieser Leseprobe nicht enthalten

Tab. 4: Quantisierungstabelle für MPEG-2 (Luminanz)

Abbildung in dieser Leseprobe nicht enthalten

Abb. 7: Wiederhergestellter Bildblock nach Dekodierung

Abbildung in dieser Leseprobe nicht enthalten

Tab. 5: DCT-Koeffizienten nach der Quantisierung

2.2.4 Interframekodierung

Allein das Ausnutzen bildinterner Ähnlichkeiten kann die hohe Effizienz moderner Videocodecs nicht erklären. Noch viel größere Redundanzen bestehen zwischen zeitlich benachbarten Bildern. Wie Abb. 8 zeigt, besitzen zwei aufeinander folgende Bilder mehr Ähnlichkeiten als Unterschiede. In der Mitte befindet sich das Differenzbild, bei dem eine Differenz der Größe Null schwarz erscheint. Bei der Interframekodierung werden nur die Unterschiede zweier Bilder übertragen. In den meisten Fällen wird hier die bereits oben erwähnte DPCM eingesetzt, die wie die DCT einzeln auf die drei Signalkomponenten angewendet wird und nur die Grauwertunterschiede zweier Bilder beschreibt. Die Kombination aus DCT und DPCM wird auch als hybride DCT bezeichnet [Schmidt05, S. 153].

Abbildung in dieser Leseprobe nicht enthalten

Abb. 8: Zwei zeitlich benachbarte Bilder und ihr Differenzbild (Mitte)

Die DPCM allein genügt nicht, um zeitliche Redundanzen effizient auszunutzen, da sie den Bildinhalt nicht zu erkennen vermag. Das führt bei Bewegungen dazu, dass von Bild zu Bild ständig neue Differenzwerte übertragen werden müssen, obwohl sich am Informationsgehalt kaum etwas geändert hat. Ein auch als Bewegungsschätzung und ‑kompensation bezeichnetes objektbasiertes Verfahren sorgt dafür, dass statt reiner DPCM-Differenzbilder eine Reihe Platz sparender Bewegungsvektoren übertragen werden können [Beuchler02, S. 21]. Pro Makroblock wird ein Verfahren angewendet, welches Block Matching heißt [Furth97, S. 53]. Dabei wird im Referenz-Bild nach einem ähnlichen Block gesucht. Wird dieser wiedergefunden, aber an anderer Stelle, wird diese Verschiebung in einem Vektor gespeichert. Der Decoder kann nun mittels der Bewegungsvektoren die Bewegung nachvollziehen und das neue Bild anhand des alten rekonstruieren [Schmidt05, S. 155]. Schließlich müssen nur noch jene Informationen zusätzlich übertragen werden, die völlig neu hinzugekommen sind. Um diese herauszufinden, wird das kodierte Bild im Encoder gleich wieder dekodiert und mit dem Originalbild verglichen. Das dabei entstandene DPCM-Differenzbild ist nun viel kleiner, als es ohne Bewegungskompensation wäre.

Die Interframe-Kodierung unterscheidet zwischen drei verschiedenen Typen von Bildern [Shi00, S. 334], die in bestimmter Regelmäßigkeit aufeinander folgen (Abb. 9) und je nach Codec in der Bezeichnung variieren. Im Folgenden werden die bei MPEG verwendeten Namen verwendet. I-Frames (Intraframe oder Keyframe) sind nur in sich selbst kodiert und dienen anderen Bildtypen als Referenz. P-Frames (Predictive Frame) benötigen zur Kodierung Informationen bezüglich vorangegangener I- oder P-Frames. B-Frames (Bidirectionally Predictive Frames) können sich im Gegensatz zu P-Frames auch auf nachfolgende I- oder P-Frames beziehen, dafür aber nicht als Referenz für andere Bildtypen dienen.

2.2.5 Entropiekodierung

Nach der Intra- und Interframe-Kodierung wird versucht, durch geschickte Codewortzuordnung den Datenstrom weiter zu verringern. In der Informationstheorie ist die Entropie ein Maß für die Menge an Zufallsinformation, die sich in einem System oder einer Informationsfolge befindet. Bei der Entropiekodierung wird versucht, diese Entropie zu verringern und Ordnung in den Bits zu schaffen.

Häufig vorkommenden Bitfolgen werden kurze Zeichen zugewiesen, selten vorkommenden längere. Man nennt dies Variable Längen-Codierung (VLC) [Schmidt05, S. 132]. Der Huffman-Code [Shi00, S. 338] sortiert die Auftrittswahrscheinlichkeiten aller Zeichen nach ihrer Häufigkeit, addiert die Einzelwahrscheinlichkeiten der beiden am seltensten auftretenden Zeichen zu einer gemeinsamen Wahrscheinlichkeit und ordnet diese Summe mit den restlichen Zeichen erneut nach ihrer Häufigkeit. Dieser Vorgang wird so lange wiederholt, bis nur noch zwei Werte übrig bleiben, denen die Codeworte 0 und 1 vergeben werden. Danach wird der Weg Stufe für Stufe zurückverfolgt, wobei in jeder Stufe das Codewort länger wird, bis am Ende das Zeichen mit der geringsten Auftrittswahrscheinlichkeit das längste Codewort zugewiesen bekommt. Mittels einer Huffman-Tabelle, die auch dem Empfänger bekannt sein muss, können die Ausgangsdaten anschließend verlustfrei rekonstruiert werden.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 10: Beispiel für eine Huffman-Kodierung. Das linke Rechteck beinhaltet vier Auftritts-Wahrscheinlichkeiten. Im mittleren Rechteck werden die Wahrscheinlichkeiten sortiert und von oben nach unten zusammengefasst. Rechts wird schließlich von unten nach oben der Code erzeugt.

2.2.6 Audiokompression

Die Prinzipien der Audiokompression sind mit denen der Videokompression verwandt [Heyna03, S. 107]. Einfache Verfahren wenden die DPCM oder die verwandte Delta-Modulation (DM) an, welche nur die Differenzen zweier zeitlich benachbarter Abtastwerte kodieren. Beide Verfahren gibt es in adaptiven Formen, die mit Differenzvorhersage arbeiten. Doch genau wie bei der Videokompression bringt erst die Bearbeitung der Signale im Frequenzbereich die erforderliche Effizienz. Zunächst wird das kontinuierliche Audiosignal in Blöcke bzw. Rahmen unterteilt, die eine Länge von 2 bis 50 ms aufweisen. Anschließend wird per Fast Fourier Transformation (FFT) jeder Rahmen in zwei bis zu über 500 Koeffizienten bzw. Frequenzbänder unterteilt [Waggoner02, S. 45]. Statt der bei Video üblichen festen Quantisierungstabelle werden die Bänder auf psychoakustische Effekte hin untersucht und je nach Audiosignal quantisiert. Der Maskierungseffekt (Abb. 2) des menschlichen Ohrs lässt ein Auslassen bzw. eine gröbere Quantisierung von Frequenzbändern in der Nähe lauter Frequenzen zu. Auch die ebenfalls in Kapitel 2.1 besprochene zeitliche Maskierung (Abb. 3) findet Berücksichtigung.

Die einzelnen Audiocodecs unterscheiden sich bezüglich der Anzahl an Kanälen, der Samplerate, der Anzahl an Frequenzbändern, der Komplexität des psychoakustischen Modells und Störgeräusch- bzw. Rauschunterdrückungsmethoden. In diese Gruppe gehören z.B. die MPEG-Audiocodecs, AC-3, WMA, RealAudio und das bei MiniDisc und SDDS-Kinoton angewendete ATRAC. Daneben gibt es auch Codecs, die auf Sprache bzw. Telefonie spezialisiert sind (z.B. μ-Law, A-Law, RealAudio Voice und Qualcomm PureVoice) oder auf synthetische Klangerzeugung zurückgreifen (z.B. MPEG-4 AAC).

2.3 Codecs, Dateiformate und Multimediaarchitekturen

2.3.1 Codecs

Abbildung in dieser Leseprobe nicht enthalten

Kompressionsverfahren kommen selten einzeln, sondern kombiniert in so genannten Codecs zur Anwendung. Ein Codec ist eine in das Betriebssystem eingebundene Programm-Bibliothek [Beuchler02, S. 46], die das Kodieren und Dekodieren innerhalb einer Multimediadatei ermöglicht. Die Effizienz eines Codecs wird als Bits-pro-Pixel-Wert (bpp) angegeben (siehe Gleichung 3) [Zota05, S. 147].

bpp = Bitrate [Bit/s]/(Auflösungx x Auflösungy x Bildrate [Bilder/s])

Da jedem Pixel eines komprimierten Videos nur Bruchteile eines Bits zur Verfügung stehen, ist dieser Wert oft deutlich kleiner als Eins. Dieser Wert ist rein theoretischer Natur, praktisch ließe sich mit einem halben Bit kein Bildpunkt beschreiben. Stattdessen wenden moderne Kompressionsverfahren Techniken an, bei denen mehrere Pixel zusammengefasst beschrieben werden (Intraframe-Kodierung) bzw. ein über mehrere Bilder gleich bleibender Bildbereich nur einmal gespeichert wird (Interframe-Kodierung).

2.3.2 Bitratenverteilung

Einem Codec obliegt auch die Aufgabe, die ihm zur Verfügung stehende Datenmenge sinnvoll auf die unterschiedlich komplexen Inhalte eines Films zu verteilen. Die Zielbitrate (in Bit/s) ergibt sich aus der Teilung der Dateigröße (in Bit) mit der Gesamtdauer (in s). Geschieht die Kodierung mit konstanter Bitrate („constant bit rate“ - CBR), steht jedem Bild die gleiche Menge an Bits zur Verfügung. Innerhalb eines solchen Bildes sollte der Codec die Bits so verteilen, dass die Qualität in allen Bildteilen vergleichbar ist. Da jedoch die Komplexität nicht nur innerhalb eines Bildes unterschiedlich verteilt ist, sondern auch von Bild zu Bild, kann es bei einer konstanten Bitrate vorkommen, dass die Qualität während des Abspielens schwankt. Hierfür sehen manche Codecs variable Bitraten vor (VBR), die für eine konstante Bildqualität sorgen, jedoch den Nachteil haben, nicht für jeden Einsatzzweck geeignet zu sein. Gerade beim Internetstreaming können variable Datenraten Schwierigkeiten in der Übertragung bereiten, weshalb hier die Möglichkeit entwickelt wurde, hohe Datenaufkommen eines einzelnen Bildes auf die Rahmen benachbarter Bilder zu verteilen. Beim Dekodieren müssen erst einige Rahmen gespeichert („gepuffert“) werden, bevor mit der Wiedergabe begonnen werden kann. Daher muss bei diesem Verfahren eine Verzögerung in Kauf genommen werden. Sowohl bei konstanten als auch bei variablen Bitraten sehen manche Codecs einen zusätzlichen Analysedurchgang vor, der zu dem so genannten 2-pass-Verfahren führt. Hier wird das Video erst auf seine gesamte Komplexität hin untersucht, bevor die Bits verteilt werden. Gerade bei DVDs, wo die Bitrate nicht konstant sein muss, dürfen die Datenraten hier über weite Strecken schwanken. Der explosiven Eröffnungssequenz eines Films können hier viele Bits zugewiesen werden, den dialogintensiven Szenen hingegen weniger. Nachteil dieses Verfahrens mit zwei Durchgängen ist seine doppelte Kodierungsdauer, welche es ungeeignet macht für Echtzeit-Streaming. Tab. 6 listet kurz die Vor- und Nachteile genannter Verfahren auf.

Abbildung in dieser Leseprobe nicht enthalten

Tab. 6: Vor- und Nachteile der Bitratenmodi

Qualität, Kodierdauer und eine kleine bzw. genaue Dateigröße stehen im Widerspruch. Dieser Zusammenhang lässt sich auch in einem Dreieck darstellen:

Abbildung in dieser Leseprobe nicht enthalten

Abb. 11: Beziehung zwischen Qualität, Geschwindigkeit und Dateigröße bei der Kodierung

Aus diesem Dreieck lassen sich immer nur zwei Kriterien auswählen. Möchte man Qualität bei einer genauen Bitrate (oder Dateigröße), muss man auf Geschwindigkeit verzichten (VBR 2-pass). Muss die Kodierung schnell gehen, ist entweder auf Qualität (CBR) oder eine vorhersagbare Bitrate (VBR) zu verzichten. Am besten lässt ein Encoder dem Anwender die Wahl und stellt alle Bitraten-Modi bereit. Bei DVD-Produktionen steht meistens zunächst fest, wie lang ein Video ist und wie viel Platz auf einer DVD zur Verfügung steht. Aus diesen Werten lässt sich die Bitrate berechnen. Qualität und Geschwindigkeit sind dann miteinander abzuwägen. Idealerweise würden sich die Möglichkeiten wie in folgendem Diagramm präsentieren:

Abbildung in dieser Leseprobe nicht enthalten

Diagramm 1: Theoretisches Verhalten von CBR, VBR und VBR 2-pass

CBR und VBR 2-pass legen bei konstanter Dateigröße unterschiedliche Prioritäten, ersteres Verfahren auf Geschwindigkeit, letzteres auf Qualität. Um sowohl eine hohe Qualität als auch eine hohe Geschwindigkeit zu erzielen, wird VBR eine höhere Dateigröße produzieren. In der Praxis sind solche extreme Unterschiede nicht der Fall, hier nähern sich die drei Verfahren einander an. Einige Codecs lassen dem Anwender zusätzlich die Wahl, die Qualität zwischen zwei Polen einzustellen: Bildqualität und Bewegungsqualität. Für erstere werden größere Keyframes (bzw. I-Frames, siehe auch Abb. 9) kodiert, dafür aber weniger Differenzbilder (P- und/oder B-Frames), für Bewegungsqualität werden hingegen mehr Bilder bei geringerer Qualität jedes einzelnen Bildes garantiert.

2.3.3 Dateiformate und Multimediaarchitekturen

Die beim Kodieren entstehenden Daten werden in einer bestimmten Form abgespeichert, die als Dateiformat bezeichnet wird. Multimedia zeichnet sich durch eine Kombination verschiedener Inhalte aus, die in einer speziellen Form des Dateiformats gespeichert werden: dem Container, dessen Inhalt mehrere andere Dateiformate enthält. So kann eine AVI-Datei als Container für eine Videospur und zwei Audiospuren verstanden werden, die Spuren sind jeweils mit einem speziellen Codec komprimiert [Heyna03, S. 193]. Moderne Codecs enthalten neben den Algorithmen für Kodierung und Dekodierung auch Filter, die beispielsweise für Postprocessing zuständig sind. Um ein Dateiformat erzeugen bzw. abspielen zu können, ist eine Multimediaarchitektur nötig, welche für die En- und Dekodierung, die Anwendung der Filter und die Verbindung von Soft- und Hardware zuständig ist. Unter Windows gibt es hierfür DirectShow (DS), einen Nachfolger der Architekturen Video for Windows (VfW) und Active Movie [Heyna03, S. 192]. Zu den von Microsoft entwickelten Dateiformaten gehören das immer noch verwendete, weil simple Audio Video Interleaved (AVI), des weiteren Windows Media Video (WMV) für audiovisuelle und Windows Media Audio (WMA) für reine Audio-Inhalte sowie ASF[10], ein speziell auf Streaming ausgelegtes Container-Format, welches auch WMV- und WMA-Inhalte verwalten kann [Waggoner02, S. 154]. Bei Apple ist der Sachverhalt einfacher. Hier heißen sowohl Plattform als auch Dateiformat QuickTime, als Dateiendung wird .mov verwendet, seltener auch .qt. Die genannten Dateiformate von Apple und Microsoft sind auf beiden Betriebssystemen abspielbar. Sie können auf eine große Schnittmenge von Codecs zurückgreifen. Daneben gibt es noch andere Multimediaarchitekturen wie jene von RealMedia.

2.3.4 Auswahlkriterien

Wann ein Codec bzw. ein Dateiformat für einen bestimmten Einsatzzweck geeignet ist, wird von verschiedenen Kriterien bestimmt [Waggoner02, S. 46]:

Kompressionseffizienz: Bei diesem Kriterium entscheidet die Fähigkeit, den zu komprimierenden Inhalt mit möglichst wenigen Bits zu beschreiben. Die Effizienz ist nicht konstant, sondern abhängig von der Art des Inhalts. Animationscodecs sorgen bei computergenerierten Bildern für höhere Effizienz als bei natürlichen Bildinhalten.

Maximale Qualität: Bei Schnitt und Archivierung sind Bild- und Tonqualität oft wichtiger als geringste Datenrate. Einige Codecs wie Cinepak oder Sorenson Video 1 und 2 sind überhaupt nicht in der Lage, bei hohen Datenraten hohe Qualität zu gewährleisten [Waggoner02, S. 47]. Manche Codecs ermöglichen artefaktfreie Bilder, etwas bessere Codecs audiovisuell nicht bemerkbare Qualitätsunterschiede, und einige schließlich mathematisch verlustlose Komprimierungen. Einige Codecs verwenden höhere Farbauflösungen wie 4:2:2, einige unterstützen auch Halbbildmaterial.

Encodierungsleistung: Steht nur eine begrenzte Zeit zur Verfügung, wie z.B. bei der Echtzeit-Komprimierung, ist dieses Kriterium einzuplanen. Zu beachten ist auch die verwendete Rechnerplattform – Sorenson-Codecs ziehen z.B. Power-Mac-Prozessoren denen von Intel vor [Waggoner02, S. 47]. Einige Codecs bieten verschiedene Geschwindigkeits- und damit Leistungsstufen.

Dekodierungsleistung gibt an, wie gut die Wiedergabe einer Datei läuft. Sie ist ebenso wie die Enkodierungsleistung abhängig von Bildgröße, Bildrate, Datenrate und Rechnerarchitektur.

Post-Processing: Diese Fähigkeit, bei der Wiedergabe Komprimierungsfehler zu unterdrücken (Deblocking, Deringing) und bei genügender Rechnerleistung die Qualität im Nachhinein zu steigern, kann Einschränkungen bei Kompressionseffizienz und Encodierungsleistung ausgleichen. RealVideo 8 und 9 sind beispielsweise in der Lage, mittels Post-Processing die Bildrate zu steigern.

Bitratenverteilung zielt zum einen auf kalkulierbare Dateigrößen ab, wie es bei der Speicherung auf DVDs von Nutzen ist, zum anderen ist sie ein Thema bei Streaming, (Super) Video-CD und DVD, wo die momentane Bitrate eine gewisse Grenze nicht übersteigen darf.

Progressiver Download ermöglicht es dem Anwender, mit der Wiedergabe eines Videos zu beginnen, bevor es vollständig heruntergeladen ist.

Streaming bietet gegenüber „herkömmlichem“ und progressivem Download den Vorteil, dass Mediendateien nicht auf der Festplatte des Anwenders gespeichert werden müssen bzw. können [Wierzbicki06]. Die Technik hängt eng mit den Möglichkeiten der Bitratenverteilung zusammen und verwendet idealerweise einen gepufferten Bitraten-Modus und Streaming-Techniken, die eine Erkennung und Anpassung der Bitrate an eine bestehende Bandbreite sowie einen Umgang mit fehlenden Bildern ermöglichen.

Kompatibilität: Gute Codecs sind oft neueren Datums und noch nicht weit verbreitet. Plattformunabhängige Formate wie MPEG-1 stoßen auf die geringsten Probleme. Auf der anderen Seite gibt es proprietäre (geschlossene) Formate wie RealMedia, welche nachträglich installiert werden müssen, was in einigen Firmen nur von Administratoren ausgeführt werden kann, und von manchen Betriebssystemen überhaupt nicht unterstützt wird. Einige Formate wie MPEG z.B. sind standardisiert und können mehrfach implementiert werden. Offene Formate wie XviD hingegen bieten den Vorteil, transparent und kostenlos zu sein, in einigen Fällen sind diese allerdings wenig dokumentiert und gewöhnungsbedürftig.

Kosten: Sowohl für En- als auch Decoding kann spezielle Hard- und Software nötig sein, sollte es sich um einen aufwendigen Codec handeln. Auch Lizenzkosten können eine Rolle spielen. Bei MPEG-2 muss für jeden En- und Decoder eine Abgabe geleistet werden, bei MPEG-4 sind sogar ständige Nutzungsgebühren im Gespräch.

Rechtemanagement: Wenn Inhalte geschützt werden sollen, sind besondere Mechanismen nötig, die nicht von jedem Codec unterstützt werden. Windows Media bietet z.B. ein Digital Rights Management an, Sorenson Video ermöglicht das Setzen eines Passwortes.

Im Folgenden werden jene Codecs und Formate vorgestellt, die zum Test der in dieser Arbeit behandelten Programme herangezogen werden. Außen vor bleiben folgende Formate:

- Individuelle Formate, die nicht von allen drei Multiformat-Encodern beherrscht werden, wie MPEG-2 mit 4:2:2-Subsampling, MPEG-4 (ISMA, 3GPP), SWF, FLV, On2 etc.
- AVI inklusive der Vielzahl an verwendeten Codecs wie DV oder DivX, da im Produktionsumfeld AVI meist nur im Zusammenhang mit un- oder nur leicht komprimierten Videos verwendet wird.
- Bildsequenzen. Auch hier werden maximal nur schwache Komprimierungen verwendet, die für einen Vergleich der Programme nur wenig Unterschiede erwarten lassen.
- Audioformate. Diese werden in dieser Arbeit nur am Rande in den Vergleich einbezogen. Siehe hierfür Abschnitt 5.7.

2.3.5 MPEG-1

MPEG-1 wurde im Oktober 1992 von der gleichnamigen „Motion Picture Experts Group“ veröffentlicht [Chiarglion05], einer Gruppe internationaler Experten der ISO[11] [ISO04]. Es beinhaltet einen Video- und zwei Audiocodecs (Layer 1 und 2). Ein dritter Audio-Layer wird selten unterstützt, erlangte jedoch als eigenständiges Audioformat unter der Bezeichnung „mp3“ große Popularität [Heyna03, S. 106]. Entwickelt wurde MPEG-1 für die Video-CD, auf der es bei einer Datenrate von 1150 kbps VHS-Qualität ermöglicht, was zur damaligen Zeit auf dem Gebiet der Heimcomputer revolutionär war [Waggoner02, S. 172].

Der Codec verwendet einen 4:2:0-Farbraum und eine hybride Transformationskodierung mit I-, P- und B-Frames. Das Bild wird in 8x8-Blöcke und 16x16-Makroblöcke unterteilt, die nicht teilbar sind - die Auflösung muss an beiden Achsen durch 16 teilbar sein [Waggoner02, S. 172]. Der Videocodec bietet nur eine niedrige Kompressionseffizienz, bei höheren Datenraten allerdings eine gute Bildqualität. En- und Dekodierung sind anspruchslos. Möglichkeiten zum Post-Processing gibt es keine, was sich gerade beim Echtzeit-Streaming bemerkbar macht: Bei niedrigen Bitraten kommt es zu starken Blockbildungen, einen gepufferten VBR-Modus gibt es nicht, Streaming-Server können bei Bandbreiten-Engpässen lediglich B- und P-Frames auslassen, die nachträglich nicht interpoliert werden. MPEG-1 ist gut dokumentiert, frei von Lizenzgebühren und unter allen Videoformaten das kompatibelste, ein Decoder ist auf annähernd jedem Rechner installiert.

2.3.6 MPEG-2

1994 veröffentlicht, bildet MPEG-2 eine Weiterentwicklung zu MPEG-1 mit verbesserter Kodiereffizienz, Unterstützung für Videos mit Halbbildern [Waggoner02, S. 180] und Fehlerschutzfunktionen, die im Transport Stream zur Anwendung kommen: Diese Version des MPEG-2-Formats wird beim digitalen Fernsehen eingesetzt. Program Streams findet man hingegen auf dateibasierten Medien wie der 1996 eingeführten Video-DVD. Anwendungsfelder für MPEG-2 umfassen des weiteren Videoformate wie IMX und HDV, Studioumgebungen mit höheren Datenraten und Farbauflösungen, sowie HTDV-Medien [Heyna03, S. 73]. Die Vielzahl an Anwendungen führte zu einer Reihe von Teilstandards, die in Profilen und Layern kategorisiert sind. Die drei Audio-Layer, von denen der zweite der gebräuchlichste ist, wurden um zusätzliche Kanäle und Sampleraten ergänzt. Oft werden jedoch entweder das unkomprimierte PCM oder das effizientere AC-3 bzw. Dolby Digital vorgezogen [Waggoner02, S. 180]. Seltener kommen DTS und AAC vor.

[...]


[1] Abkürzung von „binary digit“ – engl. für „binäres Zeichen“

[2] Abk. für „picture element“ – engl. für Bildpunkt.

[3] Symbol für Gibibyte (veraltet in diesem Zusammenhang: GB bzw. Gigabyte). Siehe Glossar.

[4] zur näheren Erklärung der Zahlen siehe Glossar

[5] engl. für „Entflechter“, konv. Bilder eines im Zeilensprungverfahren vorliegenden Videosignals in Vollbilder

[6] Abk. für direct current, engl. für Gleichspannung

[7] Abk. für alternating current, engl. für Wechselstrom

[8] Abk. für End of Block, markiert das Ende eines DCT-Blocks

[9] typischer DCT-Bildfehler, der bei niedrigen Bitraten in Bildregionen mit wenig Details auftritt

[10] Der zunächst als Active Streaming Format bezeichnete Dateityp wurde während seiner Entwicklungen in Advanced Streaming Format und schließlich Advanced Systems Format umbenannt [Heyna03, S. 198]

[11] „International Organization for Standardization“, internationale Vereinigung der Standardisierungsgremien

Details

Seiten
Erscheinungsform
Originalausgabe
Jahr
2006
ISBN (eBook)
9783832497019
ISBN (Paperback)
9783838697017
DOI
10.3239/9783832497019
Dateigröße
3.6 MB
Sprache
Deutsch
Institution / Hochschule
Hochschule Mittweida (FH) – Medien, Medientechnik
Erscheinungsdatum
2006 (Juli)
Note
1,0
Schlagworte
cleaner procoder squeeze analyse ssim
Zurück

Titel: Vergleich softwarebasierter Multiformat-Encoder
book preview page numper 1
book preview page numper 2
book preview page numper 3
book preview page numper 4
book preview page numper 5
book preview page numper 6
book preview page numper 7
book preview page numper 8
book preview page numper 9
book preview page numper 10
book preview page numper 11
book preview page numper 12
book preview page numper 13
book preview page numper 14
book preview page numper 15
book preview page numper 16
book preview page numper 17
book preview page numper 18
book preview page numper 19
book preview page numper 20
book preview page numper 21
book preview page numper 22
book preview page numper 23
book preview page numper 24
book preview page numper 25
book preview page numper 26
book preview page numper 27
book preview page numper 28
book preview page numper 29
book preview page numper 30
book preview page numper 31
book preview page numper 32
155 Seiten
Cookie-Einstellungen