Infos zu H.265 / HEVC

Geschichte von H.265 / HEVC

High Efficiency Video Coding (HEVC) ist ein am Fraunhofer Heinrich-Hertz-Institut (HHI) entwickeltes Verfahren zur Codierung von Videodaten. HEVC ist ein Nachfolgeprojekt zum mittlerweile weithin genutzten H.264 Standard zur Codierung von Videodaten. Das Verfahren soll als H.265 später vom ITU-T standardisiert werden.

Die Entwicklung des Verfahrens begann im Jahre 2004 mit einer Untersuchung der ITU-T Video Coding Experts Group (VCEG), welche darauf abzielte die Komprimierung von Videos im Vergleich zu H.264 noch weiter zu verbessern. Seither wurden verschiedene Kompressionstechniken getestet und evaluiert. Zum jetzigen Zeitpunkt (06/2013) befindet sich der Standard weiterhin in Entwicklung, es existieren jedoch bereits die ersten Studien zu den Verbesserungen und Vorteilen des neuen Videocodecs.

Grundlegende Informationen zu HEVC / H.265

Die Entwickler des H.265 / HEVC Codecs strebten im Vergleich zum Vorgänger H.264 - bei gleichbleibender Bildqualität - eine Verbesserung der Kompression um den Faktor 2 an. Mit anderen Worten sollte die Dateigröße eines in H.265 codierten Videos nur die Hälfte dessen betragen, was dasselbe Video, bei gleicher Bildqualität und Auflösung, in H.264 codiert auf der Festplatte einnimmt. Dies erröffnet eine Vielzahl an Möglichkeiten etwa zum Streaming über das Internet von hochqualitativen HD Inhalten bei akzeptable Datenraten.

h265 table1

 

Erste Benchmarks bestätigten den Erfolg der Entwickler. In einer unabhängigen Studie, welche die Kompressionseffizienz verschiedener Codecs auf Basis des Maßstabs PSNR verglich, konnten Einsparungen im Durchschnitt in Höhe von 35,5% zur Dateigröße eines H.264-kodierten Videos gleicher Wiedergabequalität nachgewiesen werden. Noch besser jedoch schnitt H.265 in derselben Studie im subjektiven Test ab, wo ganze 49,3% an Einsparungen nachgewiesen wurden. Zu beachten ist dabei auch dass der subjektive Testdurchlauf auf eine frühere Version des H.265 Codecs basiert wurde als der PSNR Testdurchlauf. Beachten Sie hierzu auch die Tabelle. Einsicht in die vollständige Studie erhalten Sie hier: http://iphome.hhi.de/wiegand/assets/pdfs/2012_12_IEEE-HEVC-Performance.pdf

Besonders effizient scheint H.265 bei hochauflösenden Inhalten zu arbeiten. Ein aktueller Benchmark vom April 2013 anhand von Videosequenzen der Auflösung 3840x2160px bescheinigt dem Codec, basierend auf PSNR Messungen, Einsparungen in Höhe von 45% im Vergleich zu H.264. Einsicht in diese Studie erhalten Sie hier http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=7417

Kodierung von HEVC / H.265

Wie seine Vorgänger, beginnend bei H.261, nutzt H.265 einen hybriden Ansatz zur Kodierung der Bilddaten. Dieser kombiniert Inter-Frame-Prädiktion (= Prädiktion von Pixelwerten aus vorherigen / folgenden Bildern) mit Intra-Frame-Prädiktion (= Prädiktion aus umliegenden Pixeln). Im Gegensatz zu seinen Vorgängern wird der Interlaced-Modus, welcher Frames jeweils als zwei Halbframes überträgt, in H.265 nicht mehr unterstützt. Video wird stattdessen grundsätzlich progressiv gespeichert. Eine Interlaced-Ausgabe ist durch zusätzliche Metadaten auch aus diesen progressiv gespeicherten Daten möglich.

Coding Tree Units (CTU) ersetzen in H.265 die zuvor genutzten Makroblöcke. CTUs verfügen über eine variable Größe von 64x64px, 32x32px oder 16x16px und unterteilen das Bild in kleine zu kodierende Einheiten. Die Größen werden dabei adaptiv dem Bildinhalt angepasst: Für einfarbige Flächen und weiche Farbverläufe werden große CTUs verwendet, für kleine Details kleine CTUs.

Als Entropiekodierung nutzt H.265 eine verbesserte Variante des bereits im Vorgänger eingesetzten CABAC (“context-adaptive binary arithmetic coding”) Verfahrens. Verbessert im Vergleich zu H.264 wurde Geschwindkeit und Leistung des Verfahrens.

Die Intra-Prädiktion (Prädiktion aus umliegenden Pixeln im selben Frame) wurde dahingehend verbessert, daß nun adaptive Prädiktion aus 33 verschiedenen Richtungen anstatt nur 8 Richtungen wie beim Vorgänger möglich sind.

H.265 nutzt 16bit Bewegungsvektoren mit einer Präzision von einem Viertel Pixel. Möglich sind für die Luminanz alle Werte (in Schritten von je 0.25) von -8192 bis +8191,95, für die Chrominanz die Werte zwischen -2048 bis +2047,75. Es sind somit Bewegungsvektoren von deutlich größerer Länge als zuvor möglich.

Als Bildtransformation kommt eine integerbasierte Variante der DCT-Transformation zum Einsatz. Diese wird auf sogenannte Transformation Units (TU) angewandt. TUs sind kleine Einheiten, welche die CTUs (s.o.) weiter unterteilen. Eine adaptive Anpassung der Blockgrößen der TUs ist möglich, erlaubt sind Größen von 4x4px, 8x8px, 16x16px und 32x32px.

Profile von HEVC / H.265

Der H.265 / HEVC Standard definiert momentan drei Profile: Main, Main 10 und Main Still Picture. Der Standard lässt die Möglichkeit später weitere Profile hinzuzufügen offen, wodurch zu einem späteren Zeitpunkt etwa höhere Bittiefen, andere Farbunterabtastungen oder die Kodierung von stereoskopischem (3D) Video ermöglicht wird.

Das Main Profil schreibt eine Bittiefe von 8 Bit je Farbkomponente und die 4:2:0 Farbunterabtastung vor. Das Main 10 Profil ist identisch mit dem Main Profil, erlaubt jedoch eine Bittiefe bis 10 Bit je Farbkomponente.

Eine echte Neuerung ist das Main Still Picture Profil. Dieses dient speziell dazu, ein einziges Standbild (statt einer Bewegtbildsequenz) mit geringem Speicherbedarf wiederzugeben. Wie das Main Profil schreibt das Main Still Picture Profil eine Bittiefe von 8 Bit je Farbkomponente und eine Farbunterabtastung von 4:2:0 vor.

h265 table2

Als Standbildformat im Main Still Picture Profil ist H.265 vergleichbar mit Formaten wie JPEG und JPEG-2000. Eine durch die finnische Firma Nokia durchgeführte Prüfung von Kompression und Darstellungsqualität auf Basis von PSNR und subjektektiven EInschätzungen (MOS, Mean Opinion Score) zeigt bei H.265 Einsparungen der Datenrate bei gleichbleibender Bildqualität in Höhe von etwa 60% (PSNR) / 40% (MOS) im Vergleich zu JPEG und in etwa 20% (PSNR) / 30% (MOS) im Vergleich zu JPEG-2000.