Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
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

640 Aufrufe

Veröffentlicht am

Veröffentlicht in: Bildung
  • Als Erste(r) kommentieren

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

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. /

×