Videokompression am Beispiel H.264

Ähnliche Dokumente
Videokompression am Beispiel H.264

Analyse und Vergleich aktueller Videokompressionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Multimediale Werkzeuge, Audio: Formate, Tools. -Sound/Audio Objekte. Formate, Beispiele:

Bildrekonstruktion & Multiresolution

In konstanten Modellen wird davon ausgegangen, dass die zu prognostizierende Größe sich über die Zeit hinweg nicht verändert.

Anmerkungen zur Übergangsprüfung

XONTRO Newsletter. Kreditinstitute. Nr. 18

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Simulink: Einführende Beispiele

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Plotten von Linien ( nach Jack Bresenham, 1962 )

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Praktikum Physik. Protokoll zum Versuch: Geometrische Optik. Durchgeführt am

Run Length Coding und Variable Length Coding

Versuch 3. Frequenzgang eines Verstärkers

Teaser-Bilder erstellen mit GIMP. Bildbearbeitung mit GIMP 1

Korrelation (II) Korrelation und Kausalität

Histogramm Mit dem Histogramm zu besseren Bildern?!

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

Effiziente Erzeugung qualitativ hochwertiger Bilder anhand punktbasierter Geometriedaten

C++ Tutorial: Timer 1

Professionelle Seminare im Bereich MS-Office

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Vorab per . Oberste Finanzbehörden der Länder

R ist freie Software und kann von der Website.

Statistische Auswertung:

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

CTI SYSTEMS S.A. CTI SYSTEMS S.A. 12, op der Sang. Fax: +352/ L Lentzweiler. G.D.

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Algorithmen zur Integer-Multiplikation

6.2 Scan-Konvertierung (Scan Conversion)

Die Statistiken von SiMedia

Corporate Actions in epoca

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

XONTRO Newsletter. Makler. Nr. 16

Mikroökonomik 9. Vorlesungswoche

Advanced Rendering Interior Szene

Produkte Info Touchscreen-Panel

Von Bearbeiter Telefon-Durchwahl Telefax-Durchwahl DC-IA/SPF75

Gesundheits-Coaching I Akut-Programme bei Erschöpfung I Gesunder Schlaf I Ernährungs-Umstellung I Mentale Stärke I Gutes Körpergefühl

Grundlagen der Videotechnik. Redundanz

Rentenreform ab 1. Januar Am 16. November 2000 hat der Deutsche. Bundestag die Streichung der bisherigen Berufsund

Der -Online- Ausbilderkurs

1 Darstellen von Daten

Verkettungen von optimalen algebraischen und sphärischen Codes bei Coderate 1/2

Vorsorge in der Schweiz Die Sicht der Lebensversicherer. Andreas Zingg Vorsitzender der Kommission für Soziale Fragen des SVV

PVS Grobkonzept: Strukturelle und funktionale Erweiterungen bei der Verwaltung der Arbeitszeit und der organisatorischen Zuordnung

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Woraus besteht ein Bild? (c) Winfried Heinkele

PICALIKE API DOKUMENTATION

7. Bewegtbilder. 7.1! Bewegungswahrnehmung! 7.2! Videokompression!!!! insbesondere MPEG-1 und MPEG-2! 7.3! Videodatenformate. Literatur:!

Quadratische Gleichungen

Bildbearbeitung mit dem Programm REGISTAX 5.1 bei Planeten

Modellierung und Programmierung 1

Tarife und Allgemeine Geschäftsbedingungen

Dokumentation. estat Version 2.0

Geltende Regelungen Änderungsentwurf ( )

7 Rechnen mit Polynomen

1. Kennlinien. 2. Stabilisierung der Emitterschaltung. Schaltungstechnik 2 Übung 4

TECHNISCHE DOKUMENTATION ZUM TURBO-FREEZER XL 3 & XE 1

RF-Explorer Handheld Spektrum Analyser und Handheld Signal Generator

Grundlagen der Informatik I Informationsdarstellung

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

Alles zu seiner Zeit Projektplanung heute

Vorlesung Text und Data Mining S9 Text Clustering. Hans Hermann Weber Univ. Erlangen, Informatik

Warum OPTOPAD? OMI-App

Grundlagen der Theoretischen Informatik, SoSe 2008

Konzepte der Informatik

6. Aktien. Aktien sind Wertpapiere, in denen das Anteilsrecht an einer Aktiengesellschaft verbrieft ist. Rechtsgrundlage: Aktiengesetz

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

Algorithmen II Vorlesung am

15 Optimales Kodieren

C.M.I. Control and Monitoring Interface. Zusatzanleitung: Datentransfer mit CAN over Ethernet (COE) Version 1.08

Mathematik. UND/ODER Verknüpfung. Ungleichungen. Betrag. Intervall. Umgebung

A2.3: Sinusförmige Kennlinie

Ideenskizze für die Nutzung einer IPv6-Infrastruktur zur Vitaldatenüberwachung von Menschen:

Konzentration auf das. Wesentliche.

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

Trainingsplan 16-wöchiger Trainingsplan für einen Triathlon (Volkstriathlon), Einsteiger

Lineare Gleichungssysteme I (Matrixgleichungen)

Binär Codierte Dezimalzahlen (BCD-Code)

Algorithmische Kryptographie

Physik & Musik. Stimmgabeln. 1 Auftrag

Installation OMNIKEY 3121 USB

Empfindlichkeit und Rauschmaß eines DVB T Sticks

Advance Steel Nachverfolgung von Änderungen während der Revisionsphasen im Projekt

Warum Sie dieses Buch lesen sollten

Lineare Gleichungssysteme

Einführung in die Programmierung

Trainingsplan 21-wöchiger Trainingsplan für einen Langdistanz-Schwimm- Wettkampf

Institut für Leistungselektronik und Elektrische Antriebe. Übungen Regelungstechnik 2

computer graphics & visualization

Transkript:

Videokompression am Beispiel H.264 Medieninformatik IL Andreas Unterweger Vertiefung Medieninformatik Studiengang ITS FH Salzburg Wintersemester 2013/14 Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 1 / 30

Menschliche Bewegtbildwahrnehmung Gehirn interpretiert Bewegungen durch Helligkeitsänderungen Bewegung eines Objektes bewirkt Bewegung der dazugehörigen (vom Objekt reflektierten) Photonen auf der Netzhaut (den Rezeptoren) Rezeptoren können ca. 10 Änderungen pro Sekunde wahrnehmen Mehr als ca. 16 Änderungen pro Sekunde bewirken Eindruck von Bewegung (schwer von tatsächlicher Bewegung unterscheidbar) Aufeinander folgende Bilder können Bewegtbildeindruck hervorrufen Zusätzlich: Nachbildwirkung (nicht Ursache für Bewegtbildeindruck) Rezeptoren leuchten ca. 40 ms nach (Reizamplitude klingt ab) Neue und alte Reize überlagern einander Glättung (Tiefpassfilter) Eindruck (teilweise) flüssiger Bewegung Verschiedene Voraussetzungen für tatsächlich flüssige Bewegtbilder: http://www.red.com/learn/red-101/high-frame-rate-video Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 2 / 30

Grundbegriffe Einzelbild (Frame) Auflösung: Bilddimensionen in Pixel Farbraum: Farbkanäle und -zusammensetzung Unterabtastung (vgl. Unterlagen zu YCbCr-Farbraum) Farbtiefe: Mögliche Werte pro Pixel (meist pro Farbkanal) Anzahl Teilbilder (z.b. 2 (links, rechts) bei stereoskopischem 3-D)... Video (Bewegtbild): Sequenz von Bildern Bildwiederholrate (Framerate): Anzahl Bilder pro Sekunde Zeilenabtastung: Progressive oder Interlaced (ohne Details)... Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 3 / 30

Zeitliche Korrelation in Bewegtbildern Aufeinander folgende Bilder korrelieren meist stark Ausnutzen durch spezielle Differenzkodierung Quelle: http://www.labdv.com/images/library/dv_basics/mpeg_explained/tempcompress.jpg Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 4 / 30

Motion Estimation I Bewegungen zwischen Bildern betreffen nicht alle Pixel gleichermaßen Pixelweise Bewegungssuche ist zu aufwändig Blockbasierte Bewegungssuche (englisch Motion Estimation, ME) Vorgehensweise: Passenden Block suchen (englisch Block Matching) Bewegungsvektor (englisch Motion Vector): Versatz zwischen Ausgangs- und gefundenem Block (X- und Y-Versatz) Parameter: Suchradius (Fenstergröße) Vergleichsmetrik notwendig (implementierungsabhängig) Speicherung: Statt komplettem Block Ein Bewegungsvektor (mit zwei Komponenten) Pixelweise Differenz zwischen Ausgangs- und gefundenem Block (englisch Block Motion Compensation, kurz BMC oder MC) Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 5 / 30

Motion Estimation II Quelle: http://www-sipl.technion.ac.il/uploadedfiles/blockbasedmotionestimation.jpg Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 6 / 30

Beispiel Motion Compensation I Geringe Objektbewegung Minimale Kamerabewegung Quelle: http://www.compression.ru/video/motion_estimation/index_en.html Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 7 / 30

Beispiel Motion Compensation II Differenzbilder mit und ohne Motion Compensation Verschobener Wertebereich zur Darstellung negativer Differenzen Quelle: http://www.compression.ru/video/motion_estimation/index_en.html Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 8 / 30

Blockvergleichsmetriken I Summe von Pixeldifferenzen ist keine brauchbare Metrik Vorzeichenverschiedene Differenzen heben sich auf Weißes Rauschen ist quasi immer so gut wie ein perfekter Treffer Andere Blockvergleichsmetriken notwendig Notation: M, N N + : Blockdimensionen in Pixel m {x N 0 x M 1}, n {x N 0 x N 1} X m,n : Pixel des Ausgangsblocks X m,n: Pixel des Vergleichsblocks x max : Maximal möglicher Pixelwert (z.b. 255 bei 8 Bit) d Metrik : Differenzwert (Metrikausgabewert) Praktische Einschränkung: Nur Pixel des Y-Kanals werden betrachtet X m,n und X m,n sind Zahlen und keine Vektoren Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 9 / 30

Blockvergleichsmetriken II Sum of Absolute Differences (SAD): d SAD = M 1 N 1 m=0 n=0 Sum of Squared Differences (SSD): d SSD = M 1 Mean Squared Error (MSE): N 1 m=0 n=0 d MSE = d SSD MN = 1 MN X m,n X m,n ( X m,n X m,n ) 2 M 1 N 1 m=0 n=0 ( X m,n X m,n ) 2 Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 10 / 30

Blockvergleichsmetriken III Peak Signal-to-Noise Ratio (PSNR): ( ) x 2 d PSNR = 10log max = 20log d MSE = 20log 1 MN M 1 N 1 m=0 n=0 x max [d PSNR ] = db ( ) xmax dmse ( ) X 2 m,n X m,n Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 11 / 30

Praktische Motion Estimation I Weiterer Parameter: Anzahl zu durchsuchender Vorgängerbilder Vorteil: Höhere Effizienz durch möglicherweise bessere Treffer Nachteil: Speicherung der Referenzbildnummer notwendig Weiterer Nachteil: Lineare Erhöhung der Suchdauer Volle Suche ist aufwändig (quadratische Komplexität!) Nicht alle Möglichkeiten ausprobieren Nachteil: Findet eventuell ein lokales Minimum (nicht das globale) Dutzende ME-Algorithmen in der Literatur Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 12 / 30

Praktische Motion Estimation II Beispiel: Three-step Search (konstante Komplexität) (Neun) Äquidistante Punkte: Verfeinerte Suche um Minimum Abbruch bei drittem Minimum Quelle: http://commons.wikimedia.org/wiki/file:three_step_search.png Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 13 / 30

Überblick: Typischer H.264-Encoder Input Video Signal Split into Macroblocks 16x16 pixels - Basic Coding Structure Intra/Inter Decoder Coder Control Transform/ Scal./Quant. Intra-frame Prediction Motion- Compensation Scaling & Inv. Transform Deblocking Filter Control Data Quant. Transf. coeffs Output Video Signal Entropy Coding Motion Estimation Motion Data Quelle: Wiegand, T. and Sullivan, G. J.: The H.264 MPEG-4 AVC Video Coding Standard. T. Wiegand and G. J. Sullivan: The H.264 MPEG-4 AVC Video Coding Standard 15 http://ip.hhi.de/imagecom_g1/assets/pdfs/h264_03.pdf. 2004. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 14 / 30

Übersicht Bildtypen Vereinfacht: Drei Bildtypen (nach Kodierungsabhängigkeit) Intra: Unabhängig von anderen Bildern Prädiziert: Verwendet nur vorangegangene 1 Bilder (MC) Bidirektional: Verwendet vorangegangene und folgende Bilder (MC) Kodierungsentscheidung pro (Makro-)Block (16 16 Y-Pixel): I-Block: In I-, P- und B-Bildern erlaubt P-Block: In P- und B-Bildern erlaubt B-Block: In B-Bildern erlaubt Encoder darf Blocktypen (mit diesen Einschränkungen) frei wählen Quelle: http://en.academic.ru/dic.nsf/enwiki/386020f 1 Theoretisch möglich (unüblich): auch folgende Bilder Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 15 / 30

Besonderheiten bei der Verwendung von B-Frames MC aus folgenden ( zukünftigen ) Bildern ist unpraktikabel Zum Kodieren Bilder umsortieren Abweichende Kodierreihenfolge (englisch Coding Order); Beispiel: IBBbPBBbP Für MC verwendete Bilder müssen zuerst kodiert werden Wichtig: Darstellungsreihenfolge (englisch Display Order) muss beibehalten werden Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 16 / 30

Interprädikation (englisch Inter Prediction) I Makroblöcke (16 16 Y-Pixel) können partitioniert werden 8 8 Makroblockpartitionen können subpartitioniert werden Jede Partition kann auf unterschiedliche Referenzbilder verweisen Jede (Sub-)Partition kann unterschiedliche Bewegungsvektoren haben Quelle: Kwon, S., Tamhankar, A. and Rao, K.R.: Overview of H.264 / MPEG-4 Part10. http://www.powershow.com/view/19bc9-ndqym/overview_of_h_264_mpeg4_part10_powerpoint_ppt_presentation. 2004. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 17 / 30

Interprädikation (englisch Inter Prediction) II Subpixelgenauigkeit bei Bewegungsvektoren möglich Interpolation notwendig Realisierung: Interpolationsfilter (ohne Details) 1. Schritt: Pixel an halben Positionen aus Pixeln interpolieren 2. Schritt: Pixel an Viertel-Positionen aus halben interpolieren Auflösung: Viertelpixel bzw. Achtelpixel (bei 4:2:0-Unterabtastung) Weiterer ME-Parameter Komplexitätserhöhung Praktische Maßnahmen: Schnelle ME-Algorithmen (z.b. Three-step Search) Kleinerer ME-Radius Geringe Anzahl Referenzbilder Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 18 / 30

Interprädikation (englisch Inter Prediction) III B-Blöcke: Mittelung der Treffer (50:50) vor MC Verallgemeinerung: Gewichtete Prädiktion (englisch Weighted Prediction bzw. Weighted Bidirectional Prediction) Explizite Angabe von Gewichten (Sonderfall 50:50) Erlaubt effiziente Kodierung von Szenenübergängen Theoretisch auch bei P-Frames möglich (ohne Details) = 3 Multiple Reference Frames and Generalized Bi-Predictive Frames = 1 4 Prior Decoded Pictures as Reference = 0 Current Picture Quelle: Wiegand, T. and Sullivan, G. J.: The H.264 MPEG-4 AVC Video Coding Standard. http://ip.hhi.de/imagecom_g1/assets/pdfs/h264_03.pdf. 2004. 1. Extend motion vector by reference picture index 2. Provide reference pictures at decoder side 3. In case of bi-predictiv pictures: decode 2 se of motion parameters Can jointly exploit scene cuts, aliasing, uncovered Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 19 / 30

Intraprädikation (englisch Intra Prediction) I I-Block-Kodierung ähnlich wie in JPEG (mit Verbesserungen) Wahl: 1 16 16-Block oder 16 4 4-Blöcke (später 8 8 ergänzt) Blöcke werden aus Nachbarblöcken extrapoliert Differenzkodierung Extrapolationsrichtung pro Block wählbar (neun Modi bei 4 4) Quelle: Richardson, I. E. G.: H.264 / MPEG-4 Part 10: Intra Prediction. http://www.vcodex.com/h264.html. 2003. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 20 / 30

Intraprädikation (englisch Intra Prediction) II Quelle: Richardson, I. E. G.: H.264 / MPEG-4 Part 10: Intra Prediction. http://www.vcodex.com/h264.html. 2003. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 21 / 30

Intraprädikation (englisch Intra Prediction) III Bei 16 16-Blöcken: Vier Richtungen (drei ident zu 4 4) Quelle: Richardson, I. E. G.: H.264 / MPEG-4 Part 10: Intra Prediction. http://www.vcodex.com/h264.html. 2003. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 22 / 30

Integer-Transformation I Nachteile der DCT durch Fließkommaarithmetik: Fließkommaoperationen oft sehr langsam Rundungsfehler durch begrenzte Genauigkeit DCT-Approximation in Integerarithmetik (Integer-Transformation) Faktoren auf Ganzzahlen gerundet Integerarithmetik Faktoren auf Zweierpotenzen gerundet Multiplikationen als binäre Shift-Operationen darstellbar (sehr schnell auf vielen Architekturen) Nachteil: Approximation liefert nicht mehr (exakten) Frequenzbereich Umsetzung (Vermeidung von zu großen Ungenauigkeiten): Skalierung der Koeffizienten um mehrere Zweierpotenzen (Shift) Darstellung der Transformation als Matrizenmultiplikation (ohne Details) Runden von Matrizenelementen möglich Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 23 / 30

Integer-Transformation II Transformationsgröße: 4 4 Pixel (später mit 8 8 ergänzt) Basisfunktionsvergleich mit DCT: Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 24 / 30

Quantisierung Quantisierungsmatrix (JPEG-ähnlich) mit Skalierung (AAC-ähnlich) Höhere Frequenzen werden durch Skalierung stärker quantisiert Koeffizientenskalierung automatisch (später einstellbar) Quantisiererschrittweite unabhängig von Skalierung (Parameter Q step ) Zusätzliche Skalierung um mehrere Zweierpotenzen (Shift) für Quantisierung ohne Fließkommaarithmetik notwendig Quantisierungsparameter QP Bestimmt Quantisiererschrittweite Q step (Divisor) Wertebereich 1 bis 51 (später: 0 bis 51) QP = 6 Q step = 1, 25 QP + 6 2Q step bzw. QP + 1 6 2Qstep QP 6 Qstep 2 bzw. QP 1 Qstep 6 2 Pro Makroblock einstellbar Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 25 / 30

Deblocking-Filter Adaptives Tiefpassfilter zur Glättung von Blockkanten Berücksichtigt Makroblockmodi und -kantenpixel Erhält hinreichend harte Kanten (Schärfe) Stärke zusätzlich pro Videosequenz einstellbar (auch deaktivierbar) Zumeist subjektive Qualitätsverbesserung Wird nach dem (De-)Kodieren jedes Bildes angewandt P- und B-Prädiktion auf gefilterten Bildern Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 26 / 30

Entropiekodierung Zickzack-Scan ähnlich JPEG (fortgeschrittenere Signalisierung) Wahl zwischen zwei Entropiekodierungsverfahren: Context-Adaptive Variable-Length Coding (CAVLC) Ähnlich einer adaptiven Huffman-Kodierung Zusätzlich Kontextberücksichtigung (siehe unten) Context-Adaptive Binary Arithmetic Coding (CABAC) Basiert auf Integer-Implementierung eines arithmetischen Kodierers Aufwändiger (langsamer), aber effizienter als CAVLC Gemeinsamkeiten: Kontext: Getrennte Symbolwahrscheinlichkeiten pro Datenelement (z.b. Koeffizientenbetrag, Intraprädiktionsmodus etc.) Adaptivität: Symbolwahrscheinlichkeiten werden an Daten angepasst Weitere (nicht einstellbare) Kodierungen mit variabler Länge für Framenummern, Bildgröße u.v.m. Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 27 / 30

Erweiterungen des ursprünglichen H.264-Standards Fidelity Range Extensions 8 8-Transformation und dazugehörige Intraprädiktionsmodi Höhere Bittiefen pro Farbkanal (ursprünglich max. 8) Verlustlose Kodierung mit QP 0 Unterstützung weiterer Farbräume (ursprünglich nur YCbCr 4:2:0) Einstellbare Quantisierungsmatrizen Scalable Video Coding (SVC) Kodierung mehrerer Auflösungen und Qualitätsstufen (Layer) Prädiktion zwischen Layern zur Redundanzminimierung Frameratenreduktionsmöglichkeit durch hierarchische B-Frames Multi-View Video Coding (MVC) Kodierung mehrerer Ansichten pro Einzelbild Prädiktion zwischen Ansichten zur Redundanzminimierung Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 28 / 30

Praktische H.264-Kodierung H.264 spezifiziert Bitstromformat The Scope Beschränkungen für Bitstrom- und andere Elemente Coding Standardization Decoder(-modell) Encoder kann beliebig arbeiten, solange er standardized: Formatkompatible Bitströme erzeugt Alle Permits Beschränkungen optimization beyond einhältthe obvious Scope of Picture and Video Only Restrictions on the Bitstream, Syntax, and Decoder are Permits complexity reduction for implementability Provides no guarantees of quality Vielfalt an Encodern für verschiedene Einsatzzwecke Source Pre-Processing Encoding Destination Post-Processing & Error Recovery Decoding Scope of Standard Quelle: Wiegand, T. and Sullivan, G. J.: The H.264 MPEG-4 AVC Video Coding Standard. T. Wiegand and http://ip.hhi.de/imagecom_g1/assets/pdfs/h264_03.pdf. G. J. Sullivan: The H.264 MPEG-4 AVC Video Coding Standard 2004. 5 Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 29 / 30

Danke für die Aufmerksamkeit! Fragen? Andreas Unterweger (FH Salzburg) Videokompression am Beispiel H.264 Wintersemester 2013/14 30 / 30