Festplatten und Computersysteme bieten nur eingeschränkte Möglichkeiten diese Daten in der notwendigen Geschwindigkeit zu lesen und zu schreiben. Soll also eine Videodatei in einem Schnittprogramm in Echtzeit (Pal: 25 Frames/sec.) abgespielt werden können, so muss das verwendete Computersystem fähig sein, diesen Datenstrom ohne Unterbrechung von der Festplatte zu lesen, die Daten in Bilder umzurechnen und diese auf einem Monitor darzustellen.
Ein unkomprimiertes Videobild mit 720x 576 Pixel hat eine Dateigröße von ca. 1,2 MB - 25 Bilder ergeben also ca. 30 MB.
D.h. bei unkomprimiertem Video (RGB 4:4:4) entsteht ein Datenstrom von 30 MB/sec. (YCbCr 4:2:2 ca. 20 MB/sec.). Die höchste Datentransferrate bei Festplatten liegt zur Zeit zwar theoretisch bei 320 MB/sec. (SCSI U320), allerdings müssen die Daten im Computer noch weiterverarbeitet werden und diverse Schnittstellen und Prozesse durchlaufen und so werden z.Zt. in der Praxis mit einem High-End-Raidsystem maximal 200 MB/sec erreicht. Für Videodaten ist es zusätzlich notwendig, die Transferraten über lange Zeiträume, sowohl für das Lesen als auch für das Schreiben konstant zu halten, was ebenfalls auf Kosten des erreichbaren Datendurchsatzes geht. Standardcomputer mit schnellen IDE-Festplatten bewältigen kontinuierliche Datenraten von maximal 20-30 MB/sec.
10 Minuten unkomprimiertes Video ohne Ton benötigen einen Speicherplatz von 18 GB – für eine Stunde würde das also mehr als 100 Gigabyte bedeuten.
Da schon während der Videoaufnahme in der Farbraum-Umwandlung (RGB zu YUV, siehe Grundlagen Videosignal) eine Datenreduktion vorgenommen wird, gibt es eigentlich keine vollkommen unkomprimierten Videosignale.
Lediglich in High-End Produktionssystemen werden die digitalen Videodaten, die z.B. von einem Filmscanner direkt als RGB-Daten gewonnen werden, oder innerhalb von HDCAM bzw. HDTV Produktionssystemen, völlig unkomprimiert verarbeitet. Die Anforderungen an das Gesamtsystem sind dabei sehr hoch und die einzelnen Komponenten sind entsprechend teuer. Nur diese Systeme bieten die Möglichkeit die Videodaten völlig verlustfrei auch über mehrere Generationen hinweg zu bearbeiten.
Während für den Bearbeitungsprozess die Kompression eingesetzt wird, um die Datenströme auf ein technisch sinnvolles Maß zu reduzieren, ohne dabei die Videoinformationen und die Bildqualität wesentlich zu verändern, geht es bei der Kompression für Multimediaanwendungen, wie etwa CD-Roms oder DVDs, darum, die Bildinhalte soweit zu reduzieren, dass für die menschliche Wahrnehmung gerade noch genug Information übrig bleibt, um den Eindruck von klaren Bildern und flüssigen Bewegungen vorzutäuschen. Diese Formen der Kompression eignen sich nicht für die Bearbeitung des Materials, sondern sind lediglich für die Wiedergabe und das Betrachten der Videos konzipiert.
Die stärkste und verlustreichste Kompression wird für Streaming-Anwendungen eingesetzt. Hierbei geht es vorrangig darum, die Datenmengen soweit zu reduzieren, dass die bewegten Bilder und der Ton über Internetverbindungen übertragen und von mehreren Nutzern gleichzeitig geladen werden können.
Der Codec
Das Wort Codec leitet sich von den Begriffen Compressor und Decompressor ab.
Codecs sind mathematische Algorythmen, mit deren Hilfe Video- und Audiodaten reduziert werden. Für einige Codecs gibt es Hardwarebausteine, die die Kompression in Echtzeit durchführen (Hardware-Codec). Diese finden sich zum Beispiel auf sog. Videokarten, Echtzeit-Encodern, oder auch auf Grafikkarten. Nahezu alle Codecs lassen sich auch mit Hilfe von Software errechnen, einige gibt es nur in der Software-Variante (Software-Codec).
Kompressionsarten:
- Verlustfreie Kompression (Lossless): Hierbei werden die Datenmengen reduziert, ohne dabei die Inhalte zu verändern. Wie bei einer zip.-Datei werden dafür die Bildinformationen zusammengepackt und wiederhergestellt. Die entpackten Daten entsprechen dabei exakt dem Original. Diese Form der Kompression ist bei Bildmaterial nicht sehr effektiv und stark abhängig vom Bildaufbau, der Anzahl der Farben und der Komplexität der Bildstrukturen. Eine Datenreduktion ist nur dann möglich, wenn gleichmäßige Farbflächen mit sich wiederholenden Pixelstrukturen vorhanden sind. Am besten eignet sich diese Kompressionsart für Texte (z.B. Huffman-Kompression).
- Hybrid-Coding: Eine Mischform von verlustfreier Kompression und der auf dem DCT-Verfahren basierenden M-JPEG-Kompression.
Diese Form wird als Lossless M-JPEG Compression bezeichnet und in hochwertigen Videobearbeitungssystemen verwendet. Dabei wird die Quantisierung so exakt an die Bildstrukturen angepasst, dass die entpackten Daten dem Original fast hundertprozentig entsprechen. Der Datenstrom kann dabei auf etwa 15MB/sec. reduziert werden. Die Ansprüche an die Hardwareumgebung bleiben dennoch sehr hoch, da für das Packen und Entpacken sehr viel Prozessorleistung notwendig ist.
- Verlustbehaftete Kompression (Lossy): Bei der verlustbehafteten Kompression werden meist die Informationen jener Farbbereiche reduziert, die für das menschliche Auge nicht so wesentlich sind (Perceptual Coding), oder gleichbleibende Bildstrukturen in Bildfolgen zusammengefasst (Mpeg). Das dekomprimierte Bild entspricht nicht mehr genau dem Original. Um geringere Datenmengen zu realisieren, kann beim Komprimieren die Bildqualität reduziert werden. Das ist dann sinnvoll, wenn bei bestimmten Anwendungen kleine Datenmengen wichtiger sind als die Bildqualität (Web-Streaming, Multimedia-Anwendungen auf CD-Roms).
Intraframe und Interframe
Bei der Intraframe-Kompression wird jedes Einzelbild eines Videos unabhängig von den Folgebildern komprimiert (z.B. M-JPEG). Diese Art der Kompression eignet sich besonders für den Videoschnitt, da problemlos auf jeden einzelnen Frame zugegriffen werden kann.
Im Gegensatz dazu werden bei der Interframe-Kompression gleichbleibende Bildelemente in Bildfolgen zusammengefasst. Diese Form der bildübergreifenden Kompression wird z.B. bei MPEG-Codecs verwendet. Interframe Codecs eignen sich nicht für den Videoschnitt, da die einzelnen Frames mit Ausnahme der I-Frames immer in Abhängigkeit zu den vorangehenden oder nachfolgenden Frames stehen.
Codecs lassen sich weiters in folgende Anwendungsbereiche unterteilen:
- Codecs für Produktionsprozesse
- Codecs für Multimediaanwendungen und DVDs
- Codecs für Videostreaming und Webanwendungen