Files
223015b/slides/2025-12-19-termin-1-grundlagen-text-audio.md
T
libretech 32a8efb92d split index.md into modular slide files
- extract _frontmatter.md, _intro.md, _outro.md as shared components
- create separate files per termin with date-topic naming convention:
  2025-12-19-termin-1-grundlagen-text-audio.md
  2026-01-09-termin-2-bild-audio-video.md
  2026-01-23-termin-3-speichermedien-schnittstellen.md
  2026-01-30-termin-4-distribution-apis-zukunft.md
  2026-xx-xx-termin-5-vertiefung-offene-fragen.md
- keep index.md.bak as backup (gitignored)
2025-12-14 20:34:20 +01:00

635 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
<!-- _class: lead -->
# Termin 1 – 19.12.2025
## Grundlagen, Text & Audio
---
![bg right:40%](./assets/matrix-code.jpg)
# Mysterium
```
89 50 4E 47 0D 0A 1A 0A
00 00 00 0D 49 48 44 52
00 00 01 90 00 00 01 2C
```
**Was ist das?**
<!--
Hex-Dump ohne Erklärung auf Bildschirm werfen
Fragen in den Raum: "Was seht ihr?"
"Ist das Text? Ein Bild? Code?"
Überleitung: "Alles digital ist nur Zahlen. Heute lernen wir, sie zu lesen."
-->
---
# Das Bit
**Kleinste Informationseinheit**
- **0 oder 1**
- AN oder AUS
- Strom fließt oder nicht
![bg right:50%](./assets/lightbulb-onoff.jpg)
<!--
Bit = Binary Digit
Demonstration: Glühbirne AN/AUS = 1 Bit
Alles Digitale basiert darauf
Transistoren in CPUs: Milliarden Bits schalten Millionen Mal pro Sekunde
-->
---
# Das Byte
**8 Bits = 1 Byte**
```
0 1 0 0 1 1 0 1
```
**Wie viele Kombinationen?**
2⁸ = **256 Möglichkeiten** (0-255)
<!--
Rechnung gemeinsam: 2×2×2×2×2×2×2×2 = 256
Jedes Bit kann 0 oder 1 sein
256 verschiedene Werte mit 8 Bits darstellbar
-->
---
# Was kann man mit 256 Zuständen machen?
- **256 Zeichen** (Buchstaben, Zahlen, Symbole)
- **256 Graustufen** (0 = Schwarz, 255 = Weiß)
- **256 Lautstärkestufen**
- **Zahlen 0-255** (oder -128 bis +127)
![bg left:40%](./assets/grayscale-gradient.jpg)
<!--
1 Byte ist extrem limitiert
Für Farbbild: 3 Bytes pro Pixel (RGB)
R=0-255, G=0-255, B=0-255 → 256³ = 16,7 Millionen Farben
-->
---
# Farben: RGB-Modell
**1 Pixel = 3 Bytes**
- **Rot:** 0-255
- **Grün:** 0-255
- **Blau:** 0-255
**Beispiel:**
`FF 00 00` = Rot
`00 FF 00` = Grün
`FF FF FF` = Weiß
![bg right:40%](./assets/rgb-color-model.jpg)
<!--
RGB = Additive Farbmischung (Bildschirme)
CMYK = Subtraktive Farbmischung (Druck)
Hex-Notation: FF = 255 in Dezimal
CSS-Farben nutzen Hex: #FF0000 = Rot
-->
---
# Das Problem: Sprachen
**Die Welt hat mehr als 256 Zeichen!**
- Englisches Alphabet: 52 (A-Z, a-z)
- + Ziffern: 10 (0-9)
- + Sonderzeichen: ~30
**≈ 90 Zeichen → passt in 1 Byte**
**Aber:** ä, ö, ü, ß, é, à, ç, α, β, 中, 日, 😀
→ **1 Byte reicht nicht!**
<!--
Problem der Zeichenkodierung
ASCII (1963): 7 Bit = 128 Zeichen (nur Englisch)
ISO-8859-1 (Latin-1): 8 Bit = 256 Zeichen (Westeuropa)
Chaos: Verschiedene Standards für verschiedene Sprachen
-->
---
![bg](./assets/ascii-table.png)
<!--
ASCII-Tabelle (1963)
7 Bit = 128 Zeichen
Erste 32: Steuerzeichen (nicht druckbar)
Zeichen 32-126: Druckbar (Buchstaben, Ziffern, Satzzeichen)
Keine Umlaute, kein ñ, kein é
"American Standard" → Rest der Welt ausgeschlossen
-->
---
# Unicode: Ein Standard für alle
**Unicode (1991):**
Jedes Schriftsystem der Welt
**>150.000 Zeichen:**
- Latein, Kyrillisch, Arabisch, Chinesisch, Japanisch...
- Mathematische Symbole, Emoji, historische Schriften
**UTF-8:** Variable Länge (1-4 Bytes pro Zeichen)
<!--
Unicode Consortium: Non-Profit seit 1991
Aktuell: Unicode 16.0 (2024)
UTF-8 = Unicode Transformation Format, 8-bit
ASCII-kompatibel: "A" = 1 Byte (rückwärtskompatibel)
Umlaute: "ä" = 2 Bytes, Chinesisch: 3 Bytes, Emoji: 4 Bytes
-->
---
# Beispiel: Bytes zählen
**Text:** `"Why the fuck braucht 💩 4 Bytes?!"`
```
W h y → je 1 Byte (4 Bytes)
t h e → je 1 Byte (4 Bytes)
f u c k → je 1 Byte (4 Bytes)
→ 1 Byte (Leerzeichen)
b r a u c h t → je 1 Byte (7 Bytes)
→ 1 Byte
💩 → 4 Bytes! (0xF0 9F 92 A9)
→ 1 Byte
4 B y t e s ? ! → je 1 Byte (9 Bytes)
```
**Gesamt: 37 Bytes**
<!--
Buchstaben = 1 Byte (ASCII/UTF-8-kompatibel)
Emoji = 4 Bytes (Unicode-Bereich U+1F4A9)
Haufen-Emoji: "Pile of Poo" (offizieller Name!)
UTF-8-Kodierung: Variable Länge spart Speicher bei ASCII
-->
---
# Hexadezimal: Lesbarkeit
**Binär ist unleserlich:**
`01001101 01010000 00110011`
**Hexadezimal (Base 16):**
`4D 50 33` (= "MP3" in ASCII)
**Jede Hex-Ziffer = 4 Bits**
0-9, A-F (10=A, 11=B, ..., 15=F)
![bg right:40%](./assets/hex-binary-table.jpg)
<!--
Hex = Shortcut für Menschen, nicht für Computer
Computer denken binär, wir lesen hex
1 Byte = 2 Hex-Ziffern (00-FF)
Hex-Editor: Standard-Tool für Dateianalyse
-->
---
# Magic Numbers
**Dateityp-Identifikation durch erste Bytes**
| Format | Magic Number (Hex) | ASCII |
|--------|-------------------|-------|
| PNG | `89 50 4E 47 0D 0A 1A 0A` | `.PNG` |
| JPEG | `FF D8 FF` | `ÿØÿ` |
| PDF | `25 50 44 46` | `%PDF` |
| ZIP | `50 4B 03 04` | `PK` |
<!--
Magic Number = Signature am Dateianfang
Computer schauen in erste Bytes (nicht auf .jpg/.png)
"PK" = Phil Katz (Erfinder von PKZip)
Dateiendungen können lügen, Magic Numbers nicht
-->
---
![bg](./assets/hexeditor-screenshot.png)
<!--
Hex-Editor-Screenshot mit PNG-Datei
Erste Bytes: 89 50 4E 47 = PNG-Signatur
IHDR = Image Header (Breite, Höhe, Farbtiefe)
Zeigen, wie man Magic Number liest
Tool: HxD (Windows), Hex Fiend (Mac), xxd (Linux)
-->
---
# Hands-On: Mystery Files
**Aufgabe (30 Min):**
1. Drei Dateien ohne Extension: `mystery1`, `mystery2`, `mystery3`
2. Öffne im Hex-Editor
3. Lies erste 16 Bytes
4. Identifiziere Format (Magic Number)
5. Benenne um und öffne
**Tools:** hexed.it (online), HxD, Hex Fiend, Bless
<!--
Praktische Phase: Studierende arbeiten selbst
Dateien: PNG, JPEG, TXT (vorbereitet)
Gruppenarbeit: 3-4 Personen
Ziel: Hex-Dump lesen lernen, Dateiformate verstehen
-->
---
# Aufgabe bis nächste Woche
**Finde eine Datei auf deinem Computer**
1. Öffne im Hex-Editor
2. Screenshot der ersten 16 Bytes
3. Identifiziere Magic Number
4. Poste im Forum: Format + kurze Beschreibung
**Bonus:** Finde Datei ohne Magic Number in Standard-Listen
<!--
Selbstständiges Arbeiten
Forum: Peer-Learning, gegenseitige Hilfe
Bonus: Spornt Neugierige an
-->
---
<!-- _class: lead -->
# Teil 2: Die MP3-Revolution
## Psychoakustik & Audio-Kompression
---
![bg](./assets/cassette-ipod.jpg)
<!--
Kassette neben iPod
Visueller Kontrast: Analog vs. Digital
1980er vs. 2000er
-->
---
# Das Problem (1990)
**1 Minute CD-Audio:**
- Sample Rate: 44.100 Hz
- Bit Depth: 16 Bit
- Stereo: 2 Kanäle
**Rechnung:**
44.100 × 16 × 2 = 1.411.200 Bits/Sekunde
≈ **10,6 MB/Minute**
≈ **635 MB für 60-Min-Album**
**1990:** Festplatten hatten 100-500 MB!
<!--
CD-Qualität = Standard seit 1982
Ein Album = ganze Festplatte
Download bei 56k-Modem = Tage!
Streaming? Unmöglich.
-->
---
# Zwei Philosophien
![bg right:50%](./assets/compression-types.jpg)
**Lossless (Verlustfrei):**
- Original exakt wiederherstellbar
- ZIP, PNG, FLAC
- 30-50% Ersparnis
**Lossy (Verlustbehaftet):**
- Daten irreversibel verändert
- JPEG, MP3, H.264
- 90%+ Ersparnis
<!--
Lossless: Findet Muster, beschreibt effizienter
Lossy: Wirft "Unwichtiges" weg (Psychoakustik/Psychovisuell)
Trade-off: Größe vs. Qualität
-->
---
# Lossless: Run-Length Encoding
**Original:**
```
AAAAABBBCCCCCCCC
```
**Komprimiert:**
```
5A 3B 8C
```
**Ersparnis:** 16 → 6 Zeichen (62% Reduktion)
<!--
RLE = Simplest Compression Algorithm
Gut für repetitive Daten (Fax, simple Grafiken)
Schlecht für chaotische Daten (Fotos, Audio)
-->
---
# Lossy: Der Trick
**Kernidee:** Wirf weg, was der Mensch eh nicht wahrnimmt
**JPEG:** Schwächen des Auges
- Helligkeit besser als Farbe wahrgenommen
- Große Flächen besser als feine Details
**MP3:** Schwächen des Ohrs
- Mittlere Frequenzen besser als hohe/tiefe
- Laute Töne "maskieren" leise Töne
→ **Psychoakustik / Psychovisuell**
<!--
Auditory Masking: Lauter 1000 Hz-Ton → leise 950 Hz unhörbar
Visuelle Masking: Starker Kontrast überstrahlt Details
Kompression = Modell der menschlichen Wahrnehmung
-->
---
![bg](./assets/karlheinz-brandenburg.jpg)
<!--
Foto: Karlheinz Brandenburg
Fraunhofer IIS Erlangen
"Vater der MP3"
-->
---
# Die Geburt der MP3
**1982:** Universität Erlangen-Nürnberg
Karlheinz Brandenburg, Diplom-Ingenieur
**1987:** Fraunhofer IIS entwickelt MPEG-1 Audio Layer III
**1988:** Patentanmeldung
**1992:** Erste Software-Implementierung
**1995:** .mp3 Dateiendung offiziell
<!--
MPEG = Moving Picture Experts Group
Layer III = Dritte Verfeinerungsstufe
Forschung dauerte 10 Jahre
Patent lief 2017 aus
-->
---
![bg](./assets/suzanne-vega.jpg)
<!--
Suzanne Vega – "Tom's Diner" (1987)
Der erste Song, der als MP3 kodiert wurde
Karlheinz Brandenburg hörte ihn tausende Male
-->
---
# "Tom's Diner"
**Warum dieser Song?**
- A cappella (keine Instrumente)
- Suzanne Vegas Stimme ist "schwierig"
- Klare, hohe Frequenzen → Stresstest
*"If I could code Suzanne Vega's voice well, I could code anything."*
— Karlheinz Brandenburg
<!--
Brandenburg hörte Song 10.000+ Mal
A cappella = einfacher zu analysieren (nur Stimme)
Hohe Frequenzen = Herausforderung für Kompression
Perfektionismus: Jeder Hörtest musste bestehen
-->
---
# Wie funktioniert MP3?
**1. Frequenz-Analyse (FFT)**
Audio → Frequenzspektrum
**2. Psychoakustisches Modell**
Welche Töne hört Mensch nicht?
**3. Quantisierung**
Unwichtige Frequenzen reduzieren
**4. Huffman-Coding**
Lossless-Kompression der Restdaten
<!--
FFT = Fast Fourier Transform
Psychoakustik = Modell des menschlichen Gehörs
Quantisierung = Wo passiert Datenverlust
Huffman = Finaler Effizienz-Boost (lossless)
MP3 ist KEIN einfaches "Kleiner machen" – es simuliert dein Gehirn
-->
---
# Bitrate: Der Qualitäts-Knopf
| Bitrate | Qualität | Kompression |
|---------|----------|-------------|
| **128 kbps** | Hörbar schlechter | ~11x |
| **192 kbps** | Akzeptabel | ~7x |
| **256 kbps** | Gut | ~5,5x |
| **320 kbps** | "CD-Qualität" | ~4,4x |
**Original CD:** 1.411 kbps (unkomprimiert)
<!--
kbps = Kilobit pro Sekunde
128 kbps = Standard in 2000ern (Napster-Ära)
320 kbps = Maximum für MP3
Höhere Bitrate = mehr Daten = bessere Qualität
Aber: Diminishing Returns ab 256 kbps
-->
---
![bg](./assets/audio-spectrogram.jpg)
<!--
Spektrogramm-Vergleich
Original vs. 320 kbps vs. 128 kbps
Hohe Frequenzen verschwinden bei niedriger Bitrate
Visuell: Dunkle Bereiche = fehlende Frequenzen
-->
---
# Der Patentkrieg
**1990er:** Fraunhofer + Thomson halten MP3-Patente
**Lizenzgebühren:**
- $0,75 pro Decoder
- $2,50 pro Encoder
**Problem:** Napster (1999) → unkontrollierte Verbreitung
**2017:** Patente laufen aus → MP3 ist frei
<!--
Fraunhofer verklagte Winamp, andere Tools
Millionen nutzten unlizenzierte Software
Das Pferd war aus dem Stall
2017: Fraunhofer selbst erklärte MP3 für "veraltet" (AAC besser)
-->
---
![bg](./assets/napster-interface.jpg)
<!--
Napster-Screenshot (1999)
P2P-Filesharing für MP3s
Shawn Fanning, 19 Jahre alt
80 Millionen User in 2 Jahren
-->
---
# Napster & Musikindustrie
**1999:** Napster startet
**2001:** 80 Millionen User
**Musikindustrie:**
- CDs kosten $15-20
- MP3s gratis (illegal, aber egal)
- Einzelne Songs statt Alben
**2001:** Napster verklagt, geschlossen
**Aber:** Pandora's Box offen
→ LimeWire, Kazaa, BitTorrent, später Spotify
<!--
RIAA (Recording Industry Association of America) verklagte Napster
Urteil: Napster muss schließen (2001)
Aber: Technologie nicht mehr aufzuhalten
iPod (2001): "1.000 songs in your pocket"
iTunes Store (2003): Legale Alternative
Spotify (2008): Streaming-Ära beginnt
-->
---
# Kulturelle Revolution
**MP3 veränderte:**
✓ Musik wurde portabel (Walkman → iPod)
✓ Alben wurden irrelevant (Playlists)
✓ Musikkonsum explodierte (kostenlos/billig)
✓ Künstler verloren Kontrolle
**Aber auch:**
❌ Künstler verdienen weniger pro Stream
❌ Audio-Qualität sank (Loudness War)
❌ Physische Medien starben
<!--
Walkman (1979): Kassetten
Discman (1984): CDs
iPod (2001): MP3s
Spotify (2008): Streaming
Künstler-Einkommen: Album-Verkauf → Streaming-Pennies
Loudness War: Alles wird lauter gemastert (Dynamik verloren)
Vinyl-Revival: 2020er Gegenbewegung
-->
---
# Hands-On: MP3 sezieren
**Aufgabe (30 Min):**
1. Lade Lied runter (eigenes oder CC)
2. Konvertiere in verschiedene Bitraten:
- 320 kbps, 128 kbps, 64 kbps
3. Tool: Audacity (kostenlos)
4. Höre Unterschiede (Kopfhörer!)
5. Vergleiche Dateigrößen
**Optional:** Spektrogramm-Ansicht
<!--
Audacity: FOSS Audio-Editor
Export: Datei → Exportieren → MP3 → Bitrate wählen
Spektrogramm: Analysieren → Spektrogramm
Hohe Frequenzen verschwinden bei niedriger Bitrate
-->
---
# Aufgabe bis nächste Woche
**Nimm ein Lied (eigenes oder CC)**
1. Exportiere: WAV, MP3 320 kbps, MP3 128 kbps
2. Notiere: Dateigrößen, Höreindrücke
3. Poste im Forum: Screenshot + Reflexion
**Bonus:** Niedrigste Bitrate finden, bei der du keinen Unterschied hörst
<!--
WAV = Unkomprimiert (Referenz)
Goldenes Ohr: Manche hören Unterschied, manche nicht
Psychoakustik in Aktion: Subjektive Wahrnehmung
-->