--- marp: true theme: gaia paginate: true backgroundColor: #fff header: "Dateiformate, Schnittstellen, Speichermedien & Distributionswege (223015b)" footer: "Michael Czechowski – HdM Stuttgart" title: Dateiformate, Schnittstellen, Speichermedien & Distributionswege - Teil 2 --- ![bg cover opacity:0.2](./assets/radek-grzybowski-eBRTYyjwpRY-unsplash.jpg) # Dateiformate, Schnittstellen, Speichermedien & Distributionswege **223015b** · Modul "Technik 1" · 1. Semester Digital- und Medienwirtschaft Hochschule der Medien Stuttgart [https://librete.ch/hdm/223015b/](https://librete.ch/hdm/223015b/) --- ![bg fit](./assets/qr/slides-223015b.png) --- # Teil 2: Bild- & Videoformate --- # Rückblick: Physisch → Analog → Digital **Bei Bildern:** - **Physisch**: Lichtwellen (elektromagnetisches Spektrum, 380-750 nm) - **Analog**: Film (Silberhalogenide reagieren auf Licht, kontinuierlich) - **Digital**: Kamera-Sensor (Photodioden → A/D-Wandler, diskret) → **Moderne Kameras überspringen analog komplett!** --- # I. Grundlagen Digitaler Bilder --- # Was ist ein digitales Bild? **Rastergrafik (Bitmap):** Matrix aus Pixeln Jedes Pixel = 1 Farbwert (z.B. RGB) **Beispiel 4×4 Pixel Bild:** ``` R G B W G B W R B W R G W R G B ``` **Auflösung:** Pixel-Anzahl bestimmt Detailgrad **1920×1080 (Full HD):** 2.073.600 Pixel **3840×2160 (4K):** 8.294.400 Pixel (4× mehr!) --- # Rastergrafiken: Das Problem der Skalierung **Problem:** Pixelbilder verlieren Qualität beim Vergrößern **Beispiel:** 100×100 Pixel Logo - Anzeige in 100×100: perfekt - Anzeige in 1000×1000: **verpixelt** (Interpolation kann nicht Details erfinden) → **Lösung:** Für verschiedene Größen verschiedene Versionen speichern Oder: Vektorgrafiken nutzen --- # Vektorgrafiken **Prinzip:** Mathematische Beschreibung statt Pixel **Beispiel Kreis:** Raster: 1000×1000 Pixel gespeichert Vektor: "Kreis bei (500,500), Radius 200, Farbe Rot" **Vorteile:** - Unbegrenzt skalierbar (verlustfrei) - Kleine Dateigröße (nur Gleichungen) **Nachteile:** - Nur für geometrische Formen geeignet - Fotos unmöglich als Vektor --- # Raster- und Vektorgrafiken: Vergleich | Eigenschaft | Rastergrafik | Vektorgrafik | |-------------|--------------|--------------| | **Speicherung** | Pixel-Matrix | Mathematische Formeln | | **Skalierung** | Verlustbehaftet (Interpolation) | Verlustfrei (neu berechnet) | | **Dateigröße** | Groß (abhängig von Auflösung) | Klein (nur Gleichungen) | | **Anwendung** | Fotos, Screenshots | Logos, Icons, Illustrationen | | **Formate** | PNG, JPEG, GIF | SVG, AI, EPS, PDF (Vektor-Modus) | --- # II. Psychovisuelle Kompression ## Die Schwächen des Auges nutzen --- # Die Schwächen des Auges **Menschliches Sehen ist nicht gleichmäßig:** 1. **Helligkeitsempfindlichkeit > Farbempfindlichkeit** Wir sehen Graustufen schärfer als Farbnuancen 2. **Räumliche Frequenzen:** Grobe Strukturen wichtiger als feine Details 3. **Foveales Sehen:** Nur Zentrum des Blickfelds ist scharf (peripher unscharf) → **Chroma Subsampling, DCT, Quantisierung** nutzen das aus --- # Chroma Subsampling **Prinzip:** Farbe mit niedrigerer Auflösung speichern als Helligkeit **Notation:** 4:2:0, 4:2:2, 4:4:4 **4:4:4** – Volle Auflösung (keine Subsampling) **4:2:2** – Horizontale Halbierung der Chroma **4:2:0** – Horizontale **und** vertikale Halbierung **Beispiel 4:2:0:** 4 Pixel Helligkeit → 1 Pixel Farbe = **75% weniger Farbdaten, kaum sichtbar!** --- # III. JPEG: Der Bildkompressionsstandard --- # JPEG: Sechs Schritte der Kompression **JPEG = Joint Photographic Experts Group (1992)** **Verlustbehaftete Kompression in 6 Schritten:** 1. **Farbraum-Konvertierung** (RGB → YCbCr) 2. **Chroma Subsampling** (4:2:0) 3. **DCT** (Discrete Cosine Transform) 4. **Quantisierung** (Hier entsteht Verlust!) 5. **Zigzag-Scan & RLE** 6. **Huffman-Coding** --- # JPEG: Schritt 1 – Farbraum wechseln **RGB → YCbCr** - **Y** = Luma (Helligkeit) - **Cb** = Blau-Differenz - **Cr** = Rot-Differenz **Warum?** Erlaubt Chroma Subsampling (Farbe weniger auflösen) --- # JPEG: Schritt 2 – Chroma Subsampling **4:2:0 Standard:** Aus 4 Pixeln wird: - 4 Luma-Werte (Y) - 1 Cb-Wert - 1 Cr-Wert **Resultat:** 50% Datenreduktion, kaum sichtbar --- # JPEG: Schritt 3 – DCT **Discrete Cosine Transform:** Bild in 8×8 Pixel Blöcke teilen Jeder Block → Frequenzbereich transformieren **Ergebnis:** Niedrige Frequenzen (große Flächen) → hohe Werte Hohe Frequenzen (feine Details) → niedrige Werte → **Vorbereitung für Quantisierung** --- # JPEG: Schritt 4 – Quantisierung **Hier entsteht der Verlust!** **Prinzip:** Hohe Frequenzen stark reduzieren Quantisierungstabelle teilt DCT-Koeffizienten: - Niedrige Frequenzen: Division durch kleine Zahl (wenig Verlust) - Hohe Frequenzen: Division durch große Zahl (starker Verlust) **JPEG-Qualität (0-100):** 100 = sanfte Quantisierung (große Datei, hohe Qualität) 10 = aggressive Quantisierung (kleine Datei, Artefakte) --- # JPEG: Schritt 5 – Zigzag & RLE **Zigzag-Scan:** 8×8 Block in 1D-Array umwandeln (niedrige Frequenzen zuerst) **Run-Length Encoding (RLE):** Viele Nullen (hohe Frequenzen wurden stark quantisiert) → `0 0 0 0 0 0 0 5` wird zu `7×0, 5` --- # JPEG: Schritt 6 – Huffman-Coding **Verlustfreie Kompression** (wie ZIP) H�ufige Werte → kurze Codes Seltene Werte → lange Codes **Beispiel:** `0` (sehr häufig) → `1` (1 Bit) `127` (selten) → `11001111` (8 Bit) --- # Grenzen der Kompression: JPEG-Artefakte **Bei zu hoher Kompression (niedrige Qualität):** 1. **Blocking:** 8×8 Pixel Blöcke sichtbar 2. **Color Bleeding:** Farbränder verschwimmen 3. **Ringing:** Halos um scharfe Kanten 4. **Mosquito Noise:** Flimmern um Kanten in Video **Faustregel:** JPEG-Qualität < 70: Artefakte sichtbar JPEG-Qualität 85-95: Sweet Spot (kaum Verlust, gute Kompression) --- # IV. Andere Bildformate --- # PNG: Verlustfrei mit Transparenz **PNG = Portable Network Graphics (1996)** **Eigenschaften:** - Verlustfreie Kompression (Deflate-Algorithmus, wie ZIP) - **Alpha-Kanal:** Transparenz (0 = durchsichtig, 255 = undurchsichtig) - Paletten-Modus (8-bit, 256 Farben) oder True Color (24/32-bit) **Anwendung:** Logos, Screenshots, Grafiken mit Text, Transparenz **Nachteil:** Größer als JPEG für Fotos (keine Psychovisuelle Kompression) --- # GIF: Der Meme-Veteran **GIF = Graphics Interchange Format (1987)** **Eigenschaften:** - **256 Farben** (8-bit Palette) - **Animation** (Frame-basiert) - LZW-Kompression (verlustfrei) **Anwendung:** Memes, einfache Animationen **Nachteil:** Nur 256 Farben → Fotos sehen schlecht aus Ineffizient für Video (besser: MP4, WebM) --- # WebP & AVIF: Moderne Alternativen **WebP (Google, 2010):** - Verlustfrei **und** verlustbehaftet - ~30% kleiner als JPEG bei gleicher Qualität - Transparenz + Animation **AVIF (AOMedia, 2019):** - Basiert auf AV1-Video-Codec - ~50% kleiner als JPEG - Bessere Qualität, aber langsamer zu encodieren **Problem:** Browser-Support WebP: >95% (gut) AVIF: ~85% (wachsend) --- # Formatwahl in der Praxis | Anwendung | Format | Warum? | |-----------|--------|--------| | **Foto (Web)** | JPEG/WebP | Verlustbehaftet OK, kleine Datei | | **Logo** | SVG/PNG | Vektor (SVG) oder Transparenz (PNG) | | **Screenshot** | PNG | Verlustfrei, Text lesbar | | **Meme/Animation** | GIF/MP4 | GIF für Kompatibilität, MP4 für Effizienz | | **Druck (CMYK)** | TIFF/PDF | Verlustfrei, CMYK-Farbraum | | **Archivierung** | TIFF/DNG | Unkomprimiert oder verlustfrei | --- # V. Warum Instagram eure Fotos "ruiniert" --- # Social Media & Re-Kompression **Problem:** Instagram, Facebook, Twitter re-encodieren **alle** Uploads **Warum?** - Speicherkosten (Milliarden Bilder) - Bandbreite (schnellere Ladezeiten) - Einheitlichkeit (verschiedene Geräte) **Konsequenz:** Upload PNG/JPEG → Instagram konvertiert zu JPEG (Qualität ~85%) → **Generationsverlust** bei mehrfachem Re-Upload --- # VI. Video: Bilder + Zeit + Audio --- # Das Größenproblem bei Video **Recap: 1 Min 4K = ~45 GB unkomprimiert** Ein 2-Stunden-Film: **5,4 Terabyte** **Streaming unmöglich ohne Kompression:** - Netflix 4K: ~15 Mbit/s (~7 GB/Stunde) - YouTube 4K: ~20-40 Mbit/s (~10-20 GB/Stunde) → **Faktor 100-200× Kompression nötig!** --- # Container und Codec **Wichtige Unterscheidung:** **Container (Wrapper):** Datei-Format, das Video, Audio, Untertitel, Metadaten enthält Beispiele: MP4, MKV, AVI, MOV, WebM **Codec (Compressor/Decompressor):** Algorithmus zur Kompression/Dekompression Beispiele: H.264, H.265, VP9, AV1 **Container ≠ Codec!** MP4 kann H.264, H.265, AV1, oder andere Codecs enthalten --- # Gängige Container | Container | Endung | Codecs | Anwendung | |-----------|--------|--------|-----------| | **MP4** | .mp4, .m4v | H.264, H.265, AV1 | Web, Smartphones, universal | | **MKV** | .mkv | Alle | Flexibel, Open-Source, Filme | | **WebM** | .webm | VP8, VP9, AV1 | Web (HTML5), YouTube | | **AVI** | .avi | Viele (alt) | Legacy (90er), veraltet | | **MOV** | .mov | H.264, ProRes | Apple-Ökosystem, Editing | --- # Video-Codecs | Codec | Jahr | Effizienz | Status | |-------|------|-----------|--------| | **H.264 (AVC)** | 2003 | Basis | Standard, universell kompatibel | | **H.265 (HEVC)** | 2013 | ~50% besser | Patente, teuer, langsame Adoption | | **VP9** | 2013 | ~H.265 | Google, YouTube, patent-frei | | **AV1** | 2018 | ~30% besser als H.265 | Zukunft, Netflix/YouTube, patent-frei | --- # VII. Video-Kompression im Detail --- # Drei Kompressionsprinzipien **1. Spatial Compression (Intra-Frame):** Kompression **innerhalb** eines Frames (wie JPEG) **2. Temporal Compression (Inter-Frame):** Differenzen **zwischen** Frames (nur Änderungen speichern) **3. Motion Compensation:** Bewegungsvektoren statt volle Frames → **Kombination ermöglicht Faktor 100-200× Kompression** --- # 1. Spatial Compression (Intra-Frame) **Prinzip:** Wie JPEG für Video-Frames **I-Frames (Intra-coded):** Vollständige Bilder, unabhängig von anderen Frames → Größer, aber notwendig für Schnitte, Wiedereinstiegspunkte **Anwendung:** Jedes N-te Frame ist I-Frame (z.B. alle 2 Sekunden) --- # 2. Temporal Compression (Inter-Frame) **Prinzip:** Speichere nur Änderungen zum vorherigen Frame **P-Frames (Predicted):** Referenzieren vorheriges Frame, speichern nur Differenzen → Viel kleiner als I-Frames **B-Frames (Bi-directional):** Referenzieren vorheriges **und** nächstes Frame → Noch kleiner, aber komplexer zu dekodieren --- # 3. Motion Compensation **Prinzip:** Bewegungsvektoren statt volle Blöcke **Beispiel:** Ball bewegt sich von (100,100) zu (150,100) → Statt neuen Ball speichern: "Kopiere Block von (100,100), verschiebe um (50,0)" **Resultat:** Bewegung wird mit wenigen Bytes kodiert statt komplettem Block --- # H.264 / AVC **H.264 = MPEG-4 Part 10 / AVC (Advanced Video Coding)** **Status:** De-facto Standard (seit 2003) **Vorteile:** - Universelle Hardware-Unterstützung (jedes Gerät kann dekodieren) - Gute Qualität bei moderaten Bitraten - Mature, stable **Nachteile:** - Patente (MPEG LA) → Lizenzgebühren - Nicht so effizient wie H.265/AV1 --- # Das Patent-Problem **H.264 Patente:** MPEG LA Pool (viele Unternehmen) Lizenzgebühren für Encoder/Decoder → Bremste Open-Source-Adoption **H.265 noch schlimmer:** Mehrere Patent-Pools, unklar wer zahlen muss → Viele Firmen verweigerten Adoption **Reaktion:** AOMedia (Google, Netflix, Amazon, Apple) → AV1 (patent-frei) --- # VP9: Googles Antwort **VP9 (2013):** Googles patent-freie Alternative zu H.265 **Status:** - YouTube Standard (>90% der Videos) - Android, Chrome unterstützen - Ähnliche Effizienz wie H.265 **Problem:** Wenig Hardware-Support (Software-Dekodierung → Batterie) --- # AV1: Die offene Zukunft **AV1 (2018):** AOMedia Video Codec 1 **Vorteile:** - ~30% effizienter als H.265 - Patent-frei (Royalty-free) - Netflix, YouTube nutzen es **Nachteile:** - Langsam zu encodieren (CPU-intensiv) - Hardware-Support wächst erst jetzt **Ausblick:** Wird H.265 langfristig ersetzen --- # Adaptive Bitrate Streaming **Problem:** Nutzer haben verschiedene Bandbreiten **Lösung:** Video in mehreren Qualitätsstufen encodieren **Beispiel:** - 360p @ 1 Mbit/s - 720p @ 3 Mbit/s - 1080p @ 6 Mbit/s - 4K @ 15 Mbit/s **Client wählt dynamisch** je nach Bandbreite **Technologien:** MPEG-DASH (Standard), HLS (Apple) --- # VIII. Kritische Perspektive: Deepfakes & Manipulation --- # Wenn Codecs lügen **Deepfakes nutzen Codec-Schwächen:** Moderne ML-Modelle (GANs) erzeugen synthetische Videos → Müssen nur "gut genug für H.264" sein, nicht pixel-perfekt **Compression Artifacts als Forensik:** Echte Kamera-Footage hat charakteristische Muster Synthetische Videos zeigen andere Artefakte → Forensische Tools nutzen das zur Erkennung **Ethische Dimension:** Als Medienschaffende: Verantwortung, nicht zu täuschen Technisches Wissen befähigt, Manipulationen zu erkennen --- # IX. Abschluss --- # Fragen & Diskussion **Was wir heute gelernt haben:** 1. **Digitale Bilder:** Raster vs. Vektor, Skalierungsprobleme 2. **Psychovisuell:** Chroma Subsampling, Schwächen des Auges 3. **JPEG:** 6-Schritte-Kompression, Artefakte 4. **Formate:** PNG, GIF, WebP, AVIF 5. **Instagram-Problem:** Re-Kompression, Generationsverlust 6. **Video:** Container vs. Codec, Spatial/Temporal Compression 7. **Codecs:** H.264, H.265, VP9, AV1, Patent-Probleme 8. **Deepfakes:** Ethische Verantwortung **Fragen?** --- # Selbstlernen: Bildkompression experimentieren **Aufgabe:** Exportiert ein Foto in verschiedenen JPEG-Qualitätsstufen **Tools:** - GIMP (kostenlos, Open-Source) - Photopea (Browser-basiert, kostenlos) **Experiment:** 1. Exportiere mit Qualität 100, 85, 70, 50, 10 2. Vergleiche Dateigröße und visuelle Qualität 3. Wo werden Artefakte sichtbar? **Link:** [https://www.photopea.com/](https://www.photopea.com/) --- # Selbstlernen: Video analysieren **Aufgabe:** Analysiert eine Video-Datei mit MediaInfo **Tool:** MediaInfo (kostenlos) [https://mediaarea.net/en/MediaInfo](https://mediaarea.net/en/MediaInfo) **Fragen:** - Welcher Container? - Welcher Video-Codec? - Welche Bitrate? - I-Frame-Abstand? **Bonus:** Vergleicht YouTube-Video (Download mit yt-dlp) vs. eigene Aufnahme --- # Lizenz & Attribution **Dieses Foliendeck:** © 2025 Michael Czechowski Lizenz: CC BY-SA 4.0 **Quellen:** - Wallace, G. K. (1992). "The JPEG Still Picture Compression Standard." *IEEE Transactions on Consumer Electronics*. - Sullivan, G. J., et al. (2012). "Overview of the High Efficiency Video Coding (HEVC) Standard." *IEEE Transactions on Circuits and Systems for Video Technology*. - AOMedia (2018). AV1 Bitstream & Decoding Process Specification. **Kontakt:** [https://librete.ch/hdm/223015b/](https://librete.ch/hdm/223015b/)