Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung
Jan G. Wieners // jan.wieners@uni-koeln.d...
Video
 Container
 Matroska
 MP4
 Codecs
 DivX
 Xvid
 H.264
 Verfahren der Videokompression
 Intra-coding
 Vektor...
Video
Container und Codecs
Bildnachweis: „Kill Bill“ (2003)
Bildnachweis: „Kill Bill“ (2003)
Bitraten (37 sec.):
◦ 1 Mbps (~5 MB)
◦ 500 Kbps (~3 MB)
◦ 100 Kbps (~1,6 MB)
Konstante Bi...
 ~25 Bilder pro Sekunde  25 fps (frames per second)
 Auflösung
 Farbtiefe (Quantisierung) z.B. 24 Bit pro Pixel
 Rech...
DVD & Co.
Quelle: http://www.bluray-disc.de/faq/was-ist-der-unterschied-zwischen-blu-ray-und-der-dvd
Container
Codecs  Von den Begriffen Compressor und Decompressor
• Codecs: Mathematische Algorithmen, mit deren Hilfe Vide...
MKV: Matroska Media Container
http://matroska.org/technical/whatis/index.html
Matroska Media Container
Matroska
• Unterstützt Videocodecs:
• MPEG-1, MPEG-2, MPEG-4
• H.264
• RealVideo, WMV, Theora, Di...
Container: mp4
Mp4
 Von der Moving Picture Expert Group (MPEG) (gegründet 1988) beschränkt auf
folgende Formate:
 Video:...
MPEG: Standards
Codec: DivX
DivX
 <= DivX ;-) 3.11 (1999): Veränderter MS MPEG 4 Codec:
 u.a.: Erhöhung der maximalen Bitrate
 MS MPEG ...
Coded: Xvid
Xvid
 Freie MPEG-4 Implementierung (GNU General
Public License), basierend auf OpenDivX
Quelltext
 Techniken...
Codec: H.264
H.264
• 2003 als Standard verabschiedet: MPEG-4 Part 10
oder auch AVC (Advanced Video Coding)
 Zehnter Teil ...
H.264
Variable block-size motion compensation (VBSMC) with block sizes as large as 16×16 a
as small as 4×4, enabling preci...
Videokompression: Möglichkeiten in der Beseitigung von Redundanzen
Videokompression
?
?
?
Wie ließe sich diese Videosequenz komprimieren?
http://skateboarding.ru/gallery/data/media/81/sequence_mini.jpg
Videokompression: Möglichkeiten in der Beseitigung von Redundanzen
Videokompression
Bild- bzw. Framedimensionen (Höhe und ...
Welche der beiden Videosequenzen lässt sich besser /
stärker komprimieren? Warum?
http://skateboarding.ru/gallery/data/med...
Unterscheidung:
 Intra-coding (auch: spatial coding): Redundanz aus
einem Frame entfernen (räumliche Redundanz),
Kompress...
Idee und Verfahrensweise:
 Aufteilung des Frames in Blöcke (4x4, 8x8, etc.)
 Suche nach ähnlichen Blöcken
 Ähnliche Blö...
Idee und Verfahrensweise:
 Trennung in Textur und Kontur
 Konturen beschreiben (z.B.) durch Bézier-Kurven
 Texturen kod...
Inter-coding
Bildnachweis: http://www.ipway.rs/h264/Doc/wp_h264_31669_en_0803_lo.pdf
t = 1 t = 2 t = 3
…Kompression…?
t = 1
Frame vollständig gespeichert
 I-Frame
t = 2
Aus dem vorhergehenden
Frame berechnetes Frame
 P-Frame
…Kompression!...
Speichern der Differenzen zwischen Start- und
Folgeframe, z.B. pixelweise
Differenzcodierung
Bildnachweis: Malaka, Butz, H...
Intra- vs. Predicted- vs. Bidirectional Frames:
 Das Intra-Frame (I-Frame, auch: Key Frame / Schlüsselbild)
wird nur unte...
Verfahrensweise
 Startframe und spätere I-Frames intracodiert
übertragen
 Unterschiede zum Folgeframe bestimmen, als Bil...
Verfahrensweise:
 Objektbewegungen zwischen Frames identifizieren
 Speicherung der Veränderungen als Bewegungsvektoren
(...
Blockbasierte Bewegungskompensation
 Verwendung u.a. im MPEG-2 Standard
Grob:
 Jedes Frame des Videomaterials wird in n*...
/
Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression
Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression
Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression
Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression
Nächste SlideShare
Wird geladen in …5
×

Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression

468 Aufrufe

Veröffentlicht am

Veröffentlicht in: Bildung
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
468
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
162
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Bit SoSem 2014 | Basisinformationstechnologie II - 09: Video - Kompression

  1. 1. Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners // jan.wieners@uni-koeln.de Basisinformationstechnologie II Sommersemester 2014 02. Juli 2014 – Video: Kompressionsverfahren
  2. 2. Video  Container  Matroska  MP4  Codecs  DivX  Xvid  H.264  Verfahren der Videokompression  Intra-coding  Vektorquantisierung  Konturbasierte Codierung  Inter-coding  Differenzcodierung  Bewegungskompensation Themenüberblick
  3. 3. Video Container und Codecs
  4. 4. Bildnachweis: „Kill Bill“ (2003)
  5. 5. Bildnachweis: „Kill Bill“ (2003) Bitraten (37 sec.): ◦ 1 Mbps (~5 MB) ◦ 500 Kbps (~3 MB) ◦ 100 Kbps (~1,6 MB) Konstante Bitrate (CBR) vs. Variable Bitrate (VBR)
  6. 6.  ~25 Bilder pro Sekunde  25 fps (frames per second)  Auflösung  Farbtiefe (Quantisierung) z.B. 24 Bit pro Pixel  Rechenexempel unkomprimiertes Video:  720 * 576 * 24 = 9.953.280 Bit pro Frame = ~1,2 MB / Frame (9.953.280 / 8 / 1024)  1,2 MB * 25 Frames = 30 MB/ sec.  30 MB * 60 sec. = 1.800 MB / min.  1,8 GB * 60 min. = 108 GB / std. Speicherplatzbedarf von Videomaterial
  7. 7. DVD & Co. Quelle: http://www.bluray-disc.de/faq/was-ist-der-unterschied-zwischen-blu-ray-und-der-dvd
  8. 8. Container Codecs  Von den Begriffen Compressor und Decompressor • Codecs: Mathematische Algorithmen, mit deren Hilfe Video- und Audiodaten reduziert werden. • Hardware-Codecs: Hardwarebausteine, die die Kompression in Echtzeit durchführen. • Software-Codecs
  9. 9. MKV: Matroska Media Container http://matroska.org/technical/whatis/index.html
  10. 10. Matroska Media Container Matroska • Unterstützt Videocodecs: • MPEG-1, MPEG-2, MPEG-4 • H.264 • RealVideo, WMV, Theora, Dirac • … • Unterstützt Audiocodecs: • MP3 • AAC, AC3, DTS, WAV, Vorbis, FLAC
  11. 11. Container: mp4 Mp4  Von der Moving Picture Expert Group (MPEG) (gegründet 1988) beschränkt auf folgende Formate:  Video: MPEG-4 (Part 2, Part 10 (AVC/H.264)), MPEG-2 und MPEG-1  Audio: AAC, MP3, MP2, MP1, AC-3  Bilder: JPEG, PNG  Grafik und Text: BIFS (z. B. können Untertitel in dieses Format umgewandelt werden)  Dateiendungen:  .m4v, .mp4v: Video (MPEG-4-Videoströme)  .m4a: nur für Audio  .m4b: (Audiobook): Hörbücher, in die Lesezeichen gesetzt werden können  .m4p: (Protected): DRM-geschützte AAC-Audiodateien  .m4r: (Ringtone): Klingeltöne für iPhone
  12. 12. MPEG: Standards
  13. 13. Codec: DivX DivX  <= DivX ;-) 3.11 (1999): Veränderter MS MPEG 4 Codec:  u.a.: Erhöhung der maximalen Bitrate  MS MPEG 4: 256 kbps  DivX: bis 6 mbps  Erzeugt kein ISO-konformes MPEG 4 Video  > DivX ;-) 3.11: Neuentwicklung, patentierter Codec  Unterstützt u.a.:  Multipass Encoding (variable Bitrate)  Komplexe Szenen erhalten eine höhere Bitrate zugewiesen, langsame Szenen eine niedrigere Bitrate  2000: Gründung der Firma DivXNetworks   Open Source Projekt OpenDivX, basierend auf der MPEG-4 Referenzimplementierung des EU- Projektes „MoMuSys“ (Mobile Multimedia Systems)  Nach Veröffentlichung von DivX 4.0 (August 2001): Fokus auf kommerzielle Interessen, die Entwicklungsarbeiten an OpenDivX werden eingestellt  Kodiereffizienz schlechter als bei DivX ;-)  DivX 5: Erstes kommerzielles Produkt  …DivX 9.1.2 (2013-05) Linktipp: http://www.heise.de/ct/artikel/DivX-im-Griff-288448.html
  14. 14. Coded: Xvid Xvid  Freie MPEG-4 Implementierung (GNU General Public License), basierend auf OpenDivX Quelltext  Techniken:  B-Frames  Quarter Pixel Compensation  …
  15. 15. Codec: H.264 H.264 • 2003 als Standard verabschiedet: MPEG-4 Part 10 oder auch AVC (Advanced Video Coding)  Zehnter Teil des MPEG-4 Standards (MPEG- 4/Part 10, ISO/IEC 14496-10) • Datei-/Containerformat: mp4 • Verwendung: • HDTV / Blu-Ray • Freier, quelloffener Encoder: x264 (http://www.videolan.org/developers/x264.html)
  16. 16. H.264 Variable block-size motion compensation (VBSMC) with block sizes as large as 16×16 a as small as 4×4, enabling precise segmentation of moving regions.
  17. 17. Videokompression: Möglichkeiten in der Beseitigung von Redundanzen Videokompression ? ? ?
  18. 18. Wie ließe sich diese Videosequenz komprimieren? http://skateboarding.ru/gallery/data/media/81/sequence_mini.jpg
  19. 19. Videokompression: Möglichkeiten in der Beseitigung von Redundanzen Videokompression Bild- bzw. Framedimensionen (Höhe und Breite) - Eigenschaften der Pixel (Helligkeit, Farbe) - Eigenschaften des jeweils betrachteten Frames Zeitliche Dimension
  20. 20. Welche der beiden Videosequenzen lässt sich besser / stärker komprimieren? Warum? http://skateboarding.ru/gallery/data/media/81/sequence_mini.jpg / http://mamboaustralia.com/isfucked/wp-content/uploads/2011/05/CHEADLE_CULBURRA_SEQUENCE1.jpg
  21. 21. Unterscheidung:  Intra-coding (auch: spatial coding): Redundanz aus einem Frame entfernen (räumliche Redundanz), Kompression teilweise analog zu JPEG  Vektorquantisierung  Konturbasierte Codierung vs.  Inter-coding (auch: temporal coding): Redundanz zwischen Frames entfernen (temporale Redundanz)  Differenzkodierung (frame differencing)  Bewegungskompensation Videokompression
  22. 22. Idee und Verfahrensweise:  Aufteilung des Frames in Blöcke (4x4, 8x8, etc.)  Suche nach ähnlichen Blöcken  Ähnliche Blöcke im Bild ersetzen durch „Durchschnittsblock“  Zwei Schritte:  Training: Erstellung der Tabelle (Codebuch) mit häufig vorkommenden Blöcken  Häufig verwendet: Linde–Buzo–Gray Algorithmus  Berücksichtigung der Ähnlichkeit der notierten Blöcke Dekoder muss über das gleiche Codebuch verfügen Vorteile:  Schnelle Decodierung  Gute Kompression bei vielen ähnlichen Blöcken Nachteile:  Codierung aufwändig, da ähnliche Blöcke gesucht werden müssen Praxis: Verwendung in Codecs: Indeo, Cinepak Intra-Coding: Vektorquantisierung
  23. 23. Idee und Verfahrensweise:  Trennung in Textur und Kontur  Konturen beschreiben (z.B.) durch Bézier-Kurven  Texturen kodieren (z.B. mit DCT) Praxis: Verwendung ansatzweise in MPEG-4 Knackpunkt: Objekterkennung Intra-Coding: Konturbasierte Codierung
  24. 24. Inter-coding
  25. 25. Bildnachweis: http://www.ipway.rs/h264/Doc/wp_h264_31669_en_0803_lo.pdf t = 1 t = 2 t = 3 …Kompression…?
  26. 26. t = 1 Frame vollständig gespeichert  I-Frame t = 2 Aus dem vorhergehenden Frame berechnetes Frame  P-Frame …Kompression! t = 3 Aus dem vorhergehenden Frame berechnetes Frame  P-Frame Bildnachweis: http://www.ipway.rs/h264/Doc/wp_h264_31669_en_0803_lo.pdf
  27. 27. Speichern der Differenzen zwischen Start- und Folgeframe, z.B. pixelweise Differenzcodierung Bildnachweis: Malaka, Butz, Hußmann: Medieninformatik. München: Pearson Studium, 2009. S. 180.
  28. 28. Intra- vs. Predicted- vs. Bidirectional Frames:  Das Intra-Frame (I-Frame, auch: Key Frame / Schlüsselbild) wird nur unter Berücksichtigung der eigenen Bildinformation kodiert  Predicted Frames (P-Frames) werden aus den vorhergehenden I-Frames berechnet.  Bidirectional Frames beziehen sich sowohl  auf die vorhergehenden I- und P-Frames als auch  auf die folgenden I- und P-Frames. Praxis  MPEG-1 / -2: Ein I-Frame pro ½ Sek.  MPEG-4: Ein I-Frame ~ alle 10 Sek. Unterscheidung I: Frame-Typen (in MPEG)
  29. 29. Verfahrensweise  Startframe und spätere I-Frames intracodiert übertragen  Unterschiede zum Folgeframe bestimmen, als Bild interpretieren und dieses Bild komprimieren Differenzcodierung Bildnachweis: Malaka, Butz, Hußmann: Medieninformatik. München: Pearson Studium, 2009. S. 180.
  30. 30. Verfahrensweise:  Objektbewegungen zwischen Frames identifizieren  Speicherung der Veränderungen als Bewegungsvektoren (motion vector)  Zu übertragen:  Differenzbild  Bewegungsvektoren Bewegungskompensation (Motion Compensation) Bildnachweis: Malaka, Butz, Hußmann: Medieninformatik. München: Pearson Studium, 2009. S. 182.
  31. 31. Blockbasierte Bewegungskompensation  Verwendung u.a. im MPEG-2 Standard Grob:  Jedes Frame des Videomaterials wird in n*m große Pixelblöcke unterteilt  Um die Bewegungskompensation zu leisten, werden die Pixelblöcke von Frame zu Frame miteinander verglichen  Ähneln sich die Pixelblöcke (z.B. Kreuzkorrelation), so wird nur der Verschiebungsvektor gespeichert, um den sich der Block verschiebt Bewegungskompensation
  32. 32. /

×