AV1 vs. h265 (HEVC) vs. VP9: Was ist der Unterschied zwischen diesen Komprimierungsstandards?

AV1 vs. h265 (HEVC) vs. VP9: Was ist der Unterschied zwischen diesen Komprimierungsstandards?

Streaming in 4K ist die neue Norm, aber mit Informationen für mehr als 8,2 Millionen Pixel, die alle 16 Millisekunden übertragen werden, ist das Speichern und Übertragen von 4K-Videos im Internet keine leichte Aufgabe.

Ein zweistündiger Film würde unkomprimiert über 1,7 Terabyte Speicherplatz beanspruchen. Wie schaffen es Streaming-Giganten wie YouTube und Netflix also, Videos zu speichern und zu streamen, die so viel Platz beanspruchen?

Nun, sie tun es nicht, weil sie Video-Codecs verwenden, um die Größe von Filmen zu reduzieren, aber was ist ein Video-Codec und welcher ist der beste?

Was ist ein Video-Codec?

Bevor Sie tief in die Komplexität von Video-Codecs eintauchen, ist es wichtig zu verstehen, wie ein Video erstellt wird. Einfach ausgedrückt, ist ein Video nichts anderes als eine Reihe von Standbildern, die sich schnell gegenseitig ersetzen.

Videobearbeitungssoftware, die auf einem Computer ausgeführt wird

Aufgrund dieser hohen Änderungsgeschwindigkeit denkt das menschliche Gehirn, dass sich die Bilder bewegen, wodurch die Illusion entsteht, ein Video zu sehen. Wenn Sie sich ein Video in 4K ansehen, sehen Sie sich daher nur eine Reihe von Bildern mit einer Auflösung von 2160 × 3840 an. Diese hohe Bildauflösung ermöglicht ein in 4K aufgenommenes Video, um ein großartiges Videoerlebnis zu bieten. Allerdings erhöht diese hohe Bildauflösung die Größe des Videos und macht es unmöglich, über Kanäle mit begrenzter Bandbreite, wie z. B. das Internet, zu streamen.

Um dieses Problem zu lösen, haben wir Video-Codecs. Kurz für Coder/Decoder oder Komprimierung/Dekomprimierung, ein Video-Codec komprimiert den Bildstrom in Datenbits. Diese Komprimierung kann aufgrund der verwendeten Komprimierungsalgorithmen entweder die Qualität des Videos verringern oder keine Auswirkung darauf haben.

Wie der Name schon sagt, reduziert das Komprimierungsbit in einem Codec die Größe jedes Bildes. Um dasselbe zu tun, nutzt der Komprimierungsalgorithmus die Nuancen des menschlichen Auges aus und verhindert, dass die Menschen wissen, dass die Videos, die sie sich ansehen, komprimiert sind.

Die Dekomprimierung hingegen arbeitet entgegengesetzt und rendert das Video unter Verwendung der komprimierten Informationen.

Obwohl Codecs beim Komprimieren von Informationen hervorragende Arbeit leisten, kann dies für Ihre CPU anstrengend sein. Aus diesem Grund ist es normal, Schwankungen in der Systemleistung zu sehen, wenn Sie Videokomprimierungsalgorithmen auf Ihrem System ausführen.

Videobearbeitungsanwendung, die auf einem iPad ausgeführt wird

Um dieses Problem zu lösen, sind CPUs und GPUs mit spezieller Hardware ausgestattet, die diese Komprimierungsalgorithmen ausführen kann. Ermöglicht der CPU, die anstehenden Aufgaben auszuführen, während die dedizierte Hardware die Video-Codecs verarbeitet, wodurch die Effizienz verbessert wird.

Wie funktioniert ein Video-Codec?

Nachdem wir nun ein grundlegendes Verständnis davon haben, was ein Video-Codec tut, können wir uns ansehen, wie ein Codec funktioniert.

Chroma-Subsampling

Wie bereits erläutert, bestehen Videos aus Bildern, und Chroma-Subsampling reduziert die Informationen in jedem Bild. Dazu reduziert es die in jedem Bild enthaltenen Farbinformationen, aber wie wird diese Reduzierung der Farbinformationen vom menschlichen Auge erkannt?

Nun, Sie sehen, das menschliche Auge kann Helligkeitsänderungen hervorragend erkennen, aber das Gleiche kann nicht über Farben gesagt werden. Dies liegt daran, dass das menschliche Auge im Vergleich zu Zapfen (Fotorezeptorzellen, die für die Unterscheidung von Farben verantwortlich sind) mehr Stäbchen (Fotorezeptorzellen, die für die Erkennung von Helligkeitsänderungen verantwortlich sind) hat. Der Unterschied in Stäbchen und Zapfen verhindert, dass die Augen beim Vergleich von komprimierten und unkomprimierten Bildern Farbänderungen erkennen.

Unterschiedliche Stufen der Videokomprimierung mit Chroma-Subsampling
Bildnachweis: Janke bei Wikipedia/Wikimedia Commons auf Englisch

Um Chroma-Subsampling durchzuführen, wandelt der Videokomprimierungsalgorithmus die Pixelinformationen in RGB in Helligkeits- und Farbdaten um. Danach reduziert der Algorithmus die Farbmenge im Bild basierend auf den Komprimierungsstufen.

Entfernen redundanter Rahmeninformationen

Videos bestehen aus mehreren Frames von Bildern, und in den meisten Fällen enthalten alle diese Frames die gleichen Informationen. Stellen Sie sich zum Beispiel ein Video vor, in dem eine Person vor einem festen Hintergrund spricht. In einem solchen Fall haben alle Frames im Video eine ähnliche Zusammensetzung. Daher werden nicht alle Bilder benötigt, um das Video zu rendern. Alles, was wir brauchen, ist ein Basisbild, das alle Informationen und Daten enthält, die sich auf Änderungen beim Übergang von einem Frame zum anderen beziehen.

Daher teilt der Komprimierungsalgorithmus die Videoframes in I- und P-Frames (vorhergesagte Frames) auf, um die Videogröße zu reduzieren. Hier sind I-Frames die Grundwahrheit und werden verwendet, um P-Frames zu erstellen. Die P-Frames werden dann unter Verwendung der Informationen in den I-Frames und der Änderungsinformationen für diesen bestimmten Frame gerendert. Mit dieser Methode wird ein Video in eine Reihe von I-Frames zerlegt, die in P-Frames verschachtelt sind, wodurch das Video weiter komprimiert wird.

Bewegungskomprimierung

Nachdem wir das Video nun in I- und P-Frames aufgeteilt haben, müssen wir uns mit der Bewegungskomprimierung befassen. Ein Teil des Videokomprimierungsalgorithmus, der dabei hilft, die P-Frames unter Verwendung der I-Frames zu erstellen. Dazu zerlegt der Komprimierungsalgorithmus den I-Frame in Blöcke, die als Makroblöcke bekannt sind. Diese Blöcke erhalten dann Bewegungsvektoren, die die Richtung definieren, in der sich diese Blöcke bewegen, wenn sie von einem Rahmen zu einem anderen übergehen.

Bewegungsvektoren auf einem Gameplay-Bild
Bildnachweis: Blender Foundation/ Wikimedia

Diese Bewegungsinformationen für jeden Block helfen dem Videokomprimierungsalgorithmus, die Position jedes Blocks in einem kommenden Frame vorherzusagen.

Entfernen von hochfrequenten Bilddaten

Genau wie Änderungen in Farbdaten kann das menschliche Auge keine subtilen Änderungen in Hochfrequenzelementen in einem Bild erkennen, aber was sind Hochfrequenzelemente? Nun, sehen Sie, das auf Ihrem Bildschirm gerenderte Bild besteht aus mehreren Pixeln, und die Werte dieser Pixel ändern sich je nach angezeigtem Bild.

In einigen Bereichen des Bildes ändern sich die Pixelwerte allmählich, und solche Bereiche sollen eine niedrige Frequenz haben. Wenn sich andererseits die Pixeldaten schnell ändern, wird der Bereich als hochfrequente Daten aufweisend kategorisiert. Videokomprimierungsalgorithmen verwenden die diskrete Kosinustransformation, um die Hochfrequenzkomponente zu reduzieren.

So funktioniert es. Zuerst läuft der DCT-Algorithmus auf jedem Makroblock und erkennt dann die Bereiche, in denen die Änderung der Pixelintensität sehr schnell ist. Anschließend werden diese Datenpunkte aus dem Bild entfernt, wodurch die Größe des Videos reduziert wird.

Codierung

Nachdem alle redundanten Informationen im Video entfernt wurden, können wir die verbleibenden Datenbits speichern. Zu diesem Zweck verwendet der Videokomprimierungsalgorithmus ein Codierungsschema wie die Huffman-Codierung, das alle Datenbits in einem Frame mit der Häufigkeit ihres Auftretens im Video verknüpft und sie dann baumartig verbindet. Diese codierten Daten werden auf einem System gespeichert, sodass ein Video problemlos gerendert werden kann.

Huffman-Codierungsstruktur
Bildnachweis: Redor/ Wikimedia

AV1 vs. HEVC vs. VP9: Welcher Codec ist der beste?

Jetzt, da wir verstehen, wie Codecs funktionieren, können wir bestimmen, welches das Beste aus AV1, HEVC und VP9 ist.

Komprimierbarkeit und Qualität

Wenn Sie ein 4K-Video haben, das viel Platz auf Ihrem System einnimmt und es nicht auf Ihre bevorzugte Streaming-Plattform hochladen kann, suchen Sie möglicherweise nach einem Video-Codec, der das beste Komprimierungsverhältnis bietet. Sie müssen jedoch auch berücksichtigen, dass die gelieferte Qualität abnimmt, wenn Sie das Video weiter komprimieren. Daher ist es bei der Auswahl eines Komprimierungsalgorithmus wichtig, die Qualität zu betrachten, die er bei einer bestimmten Bitrate liefert, aber was ist die Bitrate eines Videos?

Einfach ausgedrückt ist die Bitrate eines Videos definiert als die Anzahl der Bits, die das Video benötigt, um eine Sekunde lang abzuspielen. Beispielsweise hat ein unkomprimiertes 24-Bit-4K-Video mit 60 Frames eine Bitrate von 11,9 Gb/s. Wenn Sie also ein unkomprimiertes 4K-Video im Internet streamen, muss Ihr WLAN jede Sekunde 11,9 Gigabit an Daten liefern – damit ist Ihr monatliches Datenkontingent in Minuten erschöpft.

Im Gegensatz dazu reduziert die Verwendung eines Komprimierungsalgorithmus die Bitrate auf einen sehr kleinen Betrag basierend auf der Bitrate Ihrer Wahl, ohne die Qualität zu beeinträchtigen.

Wenn es um Komprimierbarkeits-/Qualitätszahlen geht, ist AV1 führend und bietet eine um 28,1 Prozent bessere Komprimierung im Vergleich zu H.265 und eine Einsparung von 27,3 Prozent im Vergleich zu VP9 bei ähnlicher Qualität.

Wenn Sie also nach der besten Komprimierung ohne Qualitätseinbußen suchen, ist AV1 das Komprimierungsverhältnis für Sie. Aufgrund des hervorragenden Komprimierungs-Qualitäts-Verhältnisses des AV1-Codecs wird er von Google in seiner Videokonferenzanwendung Google Duo und von Netflix bei der Übertragung von Videos über eine Datenverbindung mit geringer Bandbreite verwendet.

Kompatibilität

Wie bereits erläutert, codiert ein Videokomprimierungsalgorithmus ein Video, sobald es komprimiert ist. Um dieses Video abzuspielen, muss Ihr Gerät dasselbe dekodieren. Wenn Ihr Gerät nicht über die Hardware-/Softwareunterstützung zum Dekomprimieren eines Videos verfügt, kann es daher nicht ausgeführt werden.

Daher ist es wichtig, den Kompatibilitätsaspekt eines Komprimierungsalgorithmus zu verstehen, denn was bringt es, Inhalte zu erstellen und zu komprimieren, die nicht auf vielen Geräten ausgeführt werden können?

Wenn Sie also nach Kompatibilität suchen, dann sollte VP9 der Codec für Sie sein, da er auf über zwei Milliarden Endpunkten unterstützt wird und auf jedem Browser, Smartphone und Smart-TV ausgeführt werden kann.

Dasselbe gilt nicht für AV1, da es neuere, komplexere Algorithmen verwendet, um die Dateigröße eines Videos zu reduzieren, und auf älteren Geräten nicht abgespielt werden kann. In Bezug auf die Browserunterstützung kann Safari AV1 nicht abspielen, aber Browser wie Firefox und Chrome können AV1-Videos ohne Probleme abspielen.

In Bezug auf die Hardwareunterstützung unterstützen neue SoCs und GPUs wie Snapdragon 8 Gen 2, Samsung Exynos 2200, MediaTek Dimensity 1000 5G, Google Tensor G2, Nvidias RTX 4000-Serie und Intel Xe- und Arc-GPUs eine beschleunigte Hardwaredecodierung für den AV1-Codec . Wenn Sie also Geräte besitzen, die mit diesen Chipsätzen betrieben werden, können Sie mit den AV1-Codecs komprimierte Inhalte streamen, ohne die Leistung Ihrer CPUs/GPUs zu erschöpfen.

Wenn es um den H.265-Codec geht, können die meisten gängigen Browser wie Safari, Firefox und Google Chrome problemlos Videos ausführen, die mit dem Komprimierungsalgorithmus codiert wurden. Allerdings ist H.265 im Vergleich zu AV1 und VP9 nicht Open Source, und für die Nutzung des H.265-Codecs müssen Lizenzen erworben werden. Aus diesem Grund können Apps wie Microsofts Movies & TV-Videoplayer, die mit dem Betriebssystem geliefert werden, standardmäßig keine mit H.265 codierten Videos ausführen. Stattdessen müssen Benutzer zusätzliche Add-Ons aus dem Windows Store installieren, um solche Videos auszuführen.

Kodierungsgeschwindigkeit

Video-Codecs reduzieren die Größe eines Videos erheblich, aber um die Größe eines Videos zu reduzieren, muss das unkomprimierte Video mithilfe von Software verarbeitet werden, was einige Zeit in Anspruch nimmt. Wenn Sie also die Größe eines Videos reduzieren möchten, müssen Sie sich die Zeit ansehen, die zum Komprimieren des Videos mit einem Komprimierungsalgorithmus benötigt wird.

In Bezug auf die Codierungseffizienz ist VP9 führend, und die Codierungszeit zum Komprimieren von Videos ist viel kürzer als bei H.265 und AV1. AV1 hingegen ist die langsamste Codierungszeit und kann im Vergleich zu H.265 dreimal mehr Zeit für die Codierung eines Videos benötigen.

Welchen Codec sollten Sie wählen?

Wenn es um Video-Codecs geht, ist es sehr subjektiv, den perfekten Codec zu finden, da jeder Codec unterschiedliche Funktionen bietet.

Wenn Sie nach der besten Videoqualität suchen, entscheiden Sie sich für AV1. Wenn Sie andererseits nach dem kompatibelsten Video-Codec suchen, wäre VP9 die beste Wahl für Sie.

Schließlich eignet sich der H.265-Codec hervorragend, wenn Sie eine gute Qualität und Komprimierung ohne Codierungsaufwand benötigen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert