termin 1: add sample rate vs bit depth explanation, expand content
- add comprehensive slide explaining sample rate (horizontal) vs bit depth (vertical) - change "Achtung" to "Hinweis" for magic number note (fixes contradiction) - add new images: spectogram-chet-baker, hex-code variants, ascii table, rgb variants - expand speaker notes with detailed explanations and teaching prompts 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@@ -40,7 +40,6 @@ Hochschule der Medien Stuttgart
|
||||
# Termin 1 – 19.12.2025
|
||||
## Grundlagen, Text & Audio
|
||||
|
||||
|
||||
---
|
||||
|
||||

|
||||
@@ -53,13 +52,12 @@ Hochschule der Medien Stuttgart
|
||||
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."
|
||||
|
||||
"Ich schaue in viele fragende Gesichte ..."
|
||||
|
||||
"Doch vertraut mir, am Ende der heutigen Veranstaltung werdet ihr mir genau sagen können was hier steht"
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
@@ -86,7 +84,11 @@ Demonstration: Glühbirne AN/AUS = 1 Bit
|
||||
|
||||
<!--
|
||||
BIT = Binary Digit (Binärziffer) – 1948 von Claude Shannon geprägt
|
||||
|
||||
"Bit warum somit ein Neologismus, bis dato gab es das Wort in dieser Bedeutung überhaupt nicht"
|
||||
|
||||
Shannon war Mathematiker bei Bell Labs – begründete die Informationstheorie
|
||||
|
||||
Warum binär? Elektronische Schaltungen haben nur 2 Zustände: Strom/kein Strom
|
||||
Das ist physikalisch am stabilsten (weniger Fehler als 3 oder 10 Zustände)
|
||||
Alles Digitale basiert auf dieser simplen Idee: AN oder AUS
|
||||
@@ -97,24 +99,79 @@ Transistoren in modernen CPUs: Milliarden davon, schalten Milliarden Mal pro Sek
|
||||
|
||||
# Das Byte
|
||||
|
||||
**8 Bits = 1 Byte**
|
||||
<!--
|
||||
"Ein Bit allein macht nicht glücklich, die Welt ist nunmal nicht schwarz oder weiß"
|
||||
|
||||
"Und um noch weitere (nennen wir es Schattierungen, ganz literarisch) der Welt abbilden zu können, benötigen wir eine weiter Messgröße oder Einheit"
|
||||
|
||||
BYTE = Wortspiel aus "Bit" + "Bite" (Bissen) – ein "Bissen" Information
|
||||
|
||||
"Doch warum hat man nicht einfach »Bite« genommen?" Fangfrage -> Bit und Bite sind sich zu nahe ... Verwechslungsgefahr!
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Das Byte
|
||||
|
||||
**1 Byte = 8 Bits**
|
||||
|
||||
```
|
||||
0 1 0 0 1 1 0 1
|
||||
```
|
||||
|
||||
<!--
|
||||
|
||||
"Und das sieht dann so aus"
|
||||
|
||||
"Aber warum genau 8 Bits?" -> "Das versteht man leider erst so richtig wenn man sich das Ergebnis anschaut, wie viele Möglichkeiten hieraus entstehen"
|
||||
|
||||
"Menschen neigen dazu, exponentielles Wachstum zu unterschätzen"
|
||||
|
||||
Rätsel: "Wenn sich das Wachstum einer Seerose auf einem Teich jeden Tag verdoppelt · und nach *zehn Tagen* der ganze Teich bedeckt ist, wann ist er zur Hälfte zugewachsen?"
|
||||
|
||||
Frage: "Weiß jemand wieviele Zustände wir mit 8 Bit beschreiben können?"
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Das Byte
|
||||
|
||||
**1 Byte = 8 Bits**
|
||||
|
||||
```
|
||||
0 1 0 0 1 1 0 1
|
||||
```
|
||||
|
||||
**Wie viele Kombinationen?**
|
||||
2⁸ = **256 Möglichkeiten** (0-255)
|
||||
|
||||
<!--
|
||||
BYTE = Wortspiel aus "Bit" + "Bite" (Bissen) – ein "Bissen" Information
|
||||
Warum genau 8 Bits?
|
||||
|
||||
Historie: "Es gab durchaus einen »Machtkampf« und es war überhaupt nicht klar welche Länge sich durchsetzen wird."
|
||||
|
||||
- 1964: IBM System/360 setzte diesen Standard (vorher: 6-Bit, 7-Bit Systeme)
|
||||
- ASCII (1963) brauchte 7 Bit für 128 Zeichen
|
||||
|
||||
ASCII = American Standard Code for Information Interchange
|
||||
|
||||
Praktikabilität:
|
||||
- 8 Bit = praktisch für Hardware (Zweierpotenz: 2³ = 8)
|
||||
- 8 Bit = 2 Hexadezimalziffern (elegante Darstellung)
|
||||
Eselsbrücke: 1 Byte = 1 Buchstabe (in ASCII/UTF-8 für einfache Zeichen)
|
||||
|
||||
1 Bit = 2 Zustände
|
||||
2 Bit = 4 Zustände
|
||||
3 Bit = 8 Zustände
|
||||
4 Bit = 16 Zustände
|
||||
5 Bit = 32 Zustände
|
||||
6 Bit = 64 Zustände
|
||||
7 Bit = 128 Zustände
|
||||
8 Bit = 256 Zustände
|
||||
|
||||
Rechnung: 2×2×2×2×2×2×2×2 = 256 mögliche Kombinationen
|
||||
|
||||
von griech. hexa „sechs“ und lat. decem „zehn“
|
||||
|
||||
Eselsbrücke: 1 Byte = 1 Buchstabe/Symbol (in ASCII/UTF-8 für einfache Zeichen)
|
||||
-->
|
||||
|
||||
---
|
||||
@@ -122,9 +179,33 @@ Rechnung: 2×2×2×2×2×2×2×2 = 256 mögliche Kombinationen
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
|
||||
US-ASCII (1967) Code Chart
|
||||
|
||||
"Ich möchte, dass ihr das mit mir jetzt gemeinsam lesen lernt; stellt euch vor ihr seid ArchäologInnen."
|
||||
|
||||
"Wie würdet ihr vorgehen?"
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||
»256 Shades of Gray«
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
|
||||
»256 Shades of Gray«
|
||||
|
||||
|
||||
256 Graustufen: 0 = Schwarz, 255 = Weiß
|
||||
-->
|
||||
|
||||
@@ -133,10 +214,12 @@ Rechnung: 2×2×2×2×2×2×2×2 = 256 mögliche Kombinationen
|
||||
# Was kann man mit 256 Zuständen machen?
|
||||
|
||||
* **256 Zeichen** (Buchstaben, Zahlen, Symbole)
|
||||
* **256 Graustufen** (0 = Schwarz, 255 = Weiß)
|
||||
* **256 Helligkeit bzw. Luminanz** (0 = Schwarz/Dunkel, 255 = Weiß/Hell)
|
||||
* **256 Lautstärkestufen**
|
||||
* **Zahlen 0-255** (oder -128 bis +127)
|
||||
|
||||
* *Fällt Euch noch mehr ein?*
|
||||
|
||||
<!--
|
||||
256 = die "magische Zahl" bei 8 Bit
|
||||
Alltagsbeispiele:
|
||||
@@ -149,7 +232,6 @@ Jeder Kanal 0-255 → 256³ = 16.777.216 Farben ("True Color")
|
||||
Das menschliche Auge kann etwa 10 Millionen Farben unterscheiden
|
||||
→ 24 Bit reicht für fotorealistische Bilder
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
@@ -157,12 +239,28 @@ Das menschliche Auge kann etwa 10 Millionen Farben unterscheiden
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Welche Farben für ein volles Spektrum bieten sich nach unserer gelernten Sparsamkeit hier am besten an?
|
||||
|
||||
1. CMYK bzw. in diesem Fall CMYW
|
||||
2. RGB
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
RGB = Additive Farbmischung (Bildschirme)
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
# Farben: RGB-Modell
|
||||
|
||||
**1 Pixel = 3 Bytes**
|
||||
@@ -176,6 +274,9 @@ RGB = Additive Farbmischung (Bildschirme)
|
||||
`00 00 00` = Schwarz | `FF FF FF` = Weiß
|
||||
|
||||
<!--
|
||||
"Weiß jemand oder möchte jemand raten, wofür das "s" bei "sRGB" steht?"
|
||||
|
||||
sRGB = Standard RGB
|
||||
CMYK = Subtraktive Farbmischung (Druck)
|
||||
Hex-Notation: FF = 255 in Dezimal
|
||||
CSS-Farben nutzen Hex: #FF0000 = Rot
|
||||
@@ -295,7 +396,13 @@ Jede Hex-Ziffer = 4 Bits
|
||||
**Jede Hex-Ziffer = 4 Bits (ein "Nibble")**
|
||||
0-9, A-F (10=A, 11=B, ..., 15=F)
|
||||
|
||||
**ASCII Character Chart:**
|
||||
[https://www.eso.org/~ndelmott/ascii.html](https://www.eso.org/~ndelmott/ascii.html)
|
||||
|
||||
<!--
|
||||
|
||||
"Gerne vorab auf den Link gehen"
|
||||
|
||||
Warum Hexadezimal statt Dezimal?
|
||||
- Binär ist zu lang: 01001101 (8 Zeichen für 1 Byte)
|
||||
- Dezimal passt nicht: 77 (unregelmäßig, manchmal 2, manchmal 3 Ziffern)
|
||||
@@ -311,6 +418,39 @@ Umrechnung üben:
|
||||
- 0xFF = 15×16 + 15 = 255 (Maximum für 1 Byte)
|
||||
|
||||
Hex-Editor = Standard-Tool für Dateianalyse und Reverse Engineering
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
<!-- _backgroundColor: #000 -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
|
||||
"Zurück zu Frage am Anfang: Was steht hier nun?"
|
||||
|
||||
"Versucht es kurz selbst zu entschlüsseln"
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
<!-- _backgroundColor: #000 -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
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)
|
||||
-->
|
||||
|
||||
---
|
||||
@@ -326,7 +466,7 @@ Hex-Editor = Standard-Tool für Dateianalyse und Reverse Engineering
|
||||
| PDF | `25 50 44 46` | `%PDF` |
|
||||
| ZIP/DOCX/ODT | `50 4B 03 04` | `PK` |
|
||||
|
||||
**Achtung:** TXT, HTML, CSS haben **keine** Magic Number!
|
||||
**Hinweis:** TXT, HTML, CSS haben **keine** Magic Number!
|
||||
|
||||
<!--
|
||||
Magic Number = Signatur/Fingerabdruck am Dateianfang
|
||||
@@ -348,22 +488,6 @@ Windows vertraut der Endung, aber Tools wie "file" (Linux) lesen Magic Number
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
<!-- _backgroundColor: #000 -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
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: WTF Files
|
||||
|
||||
**Aufgabe (30 Min):**
|
||||
@@ -455,6 +579,97 @@ Streaming? Unmöglich.
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
|
||||
"Wenn CDs eine Sample Rate von 44kHz haben, was fällt dann hier auf?"
|
||||
|
||||
Fangfrage: "Wie hoch ist die Sample Rate von Vinyls?" -> *Vinyl has no sample rate. It's analog!*
|
||||
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Was ist Sample Rate?
|
||||
**Analog → Digital ≙ Kontinuierlich → Diskret**
|
||||
```
|
||||
Analog (Vinyl): Digital (CD):
|
||||
~~~~~~~~~~~~~~~ • • • • • • • •
|
||||
Kontinuierliche 44.100 Messpunkte
|
||||
Wellenform pro Sekunde
|
||||
```
|
||||
**Nyquist-Theorem:**
|
||||
|
||||
> Um eine Frequenz zu rekonstruieren, braucht man mindestens **2× so viele Samples**.
|
||||
44.100 Hz ÷ 2 = **22.050 Hz** max. darstellbare Frequenz
|
||||
(Mensch hört: ~20 Hz bis ~20.000 Hz → passt!)
|
||||
|
||||
<!--
|
||||
SAMPLE RATE = Wie oft "fotografieren" wir die Schallwelle?
|
||||
Stellt euch vor: Schallwelle = fahrendes Auto
|
||||
- Analog: Videokamera läuft durchgehend
|
||||
- Digital: Fotokamera macht 44.100 Fotos pro Sekunde
|
||||
|
||||
VINYL hat KEINE Sample Rate:
|
||||
- Rille ist physische Kopie der Welle
|
||||
- "Unendliche Auflösung" in der Theorie
|
||||
- ABER: Rauschen, Kratzer, Nadelmasse = eigene Limits
|
||||
- Praktisch: ~20 Hz bis ~20 kHz, 60-70 dB Dynamik
|
||||
|
||||
WARUM genau 44.100 Hz?
|
||||
- Nyquist: 2× höchste hörbare Frequenz nötig
|
||||
- 20.000 Hz × 2 = 40.000 Hz Minimum
|
||||
- 44.100 = etwas Puffer + passte zu Video-Equipment der 80er
|
||||
|
||||
DAS SPEKTROGRAMM zeigt es:
|
||||
- Alles über ~22 kHz ist abgeschnitten
|
||||
- Das ist kein Bug, das ist das Design!
|
||||
- Vinyl hätte dort noch Obertöne (die wir eh nicht hören)
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Sample Rate vs. Bit Depth
|
||||
|
||||
**Zwei Dimensionen der Digitalisierung:**
|
||||
|
||||
| Dimension | Was bedeutet es? | CD-Qualität |
|
||||
|-----------|------------------|-------------|
|
||||
| **Sample Rate** | Messungen pro Sekunde (horizontal) | 44.100 Hz |
|
||||
| **Bit Depth** | Genauigkeit pro Messung (vertikal) | 16 Bit |
|
||||
|
||||
**16 Bit = 2¹⁶ = 65.536 Lautstärkestufen**
|
||||
(von absoluter Stille bis maximaler Lautstärke)
|
||||
|
||||
<!--
|
||||
Analogie: Digitalisierung = Raster über Schallwelle legen
|
||||
|
||||
HORIZONTAL (Sample Rate):
|
||||
- Wie oft messen wir pro Sekunde?
|
||||
- 44.100 Hz = 44.100 Messpunkte pro Sekunde
|
||||
- Bestimmt, welche FREQUENZEN wir erfassen können
|
||||
- Nyquist-Theorem: Sample Rate ≥ 2× höchste Frequenz
|
||||
- 44.100 Hz → max. ~22.050 Hz (Mensch hört bis ~20.000 Hz)
|
||||
|
||||
VERTIKAL (Bit Depth):
|
||||
- Wie genau messen wir jeden Punkt?
|
||||
- 16 Bit = 65.536 mögliche Werte (-32.768 bis +32.767)
|
||||
- Bestimmt den DYNAMIKUMFANG (leise bis laut)
|
||||
- 16 Bit ≈ 96 dB Dynamik (Flüstern bis Rockkonzert)
|
||||
- Mehr Bits = feinere Abstufungen = weniger Quantisierungsrauschen
|
||||
|
||||
KOMPRESSION nutzt beide Achsen:
|
||||
- Sample Rate reduzieren = weniger Punkte horizontal (spart Daten, verliert hohe Frequenzen)
|
||||
- Bit Depth reduzieren = gröbere Stufen vertikal (spart Daten, mehr Rauschen)
|
||||
- MP3: Wirft unhörbare Frequenzen weg + quantisiert grober wo es nicht auffällt
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
@@ -515,11 +730,7 @@ Schlecht für chaotische Daten (Fotos, Audio)
|
||||
**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**
|
||||
* **→ Psychovisuell**
|
||||
|
||||
<!--
|
||||
Auditory Masking: Lauter 1000 Hz-Ton → leise 950 Hz unhörbar
|
||||
@@ -529,16 +740,38 @@ Kompression = Modell der menschlichen Wahrnehmung
|
||||
|
||||
---
|
||||
|
||||

|
||||
# 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
|
||||
- **→ Psychovisuell**
|
||||
|
||||
**MP3:** Schwächen des Ohrs
|
||||
* Mittlere Frequenzen besser als hohe/tiefe
|
||||
* Laute Töne "maskieren" leise Töne
|
||||
* **→ Psychoakustik**
|
||||
|
||||
<!--
|
||||
Auditory Masking: Lauter 1000 Hz-Ton → leise 950 Hz unhörbar
|
||||
Visuelle Masking: Starker Kontrast überstrahlt Details
|
||||
Kompression = Modell der menschlichen Wahrnehmung
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
# Karlheinz Brandenburg
|
||||
|
||||
**"Vater der MP3"**
|
||||
|
||||
- Diplom-Ingenieur, Universität Erlangen-Nürnberg
|
||||
- Fraunhofer IIS (Institut für Integrierte Schaltungen)
|
||||
- Forschung ab 1982, Patent 1988
|
||||
- Hörte "Tom's Diner" über 10.000 Mal
|
||||
* Diplom-Ingenieur, Universität Erlangen-Nürnberg
|
||||
* Fraunhofer IIS (Institut für Integrierte Schaltungen)
|
||||
* Forschung ab 1982, Patent 1988
|
||||
* Hörte "Tom's Diner" über 10.000 Mal
|
||||
|
||||
<!--
|
||||
Fraunhofer IIS Erlangen
|
||||
@@ -598,7 +831,7 @@ Brandenburg hörte den Song über 10.000 Mal
|
||||
- Suzanne Vegas Stimme ist "schwierig"
|
||||
- Klare, hohe Frequenzen → Stresstest
|
||||
|
||||
*"If I could code Suzanne Vega's voice well, I could code anything."*
|
||||
> If I could code Suzanne Vega's voice well, I could code anything.
|
||||
— Karlheinz Brandenburg
|
||||
|
||||
<!--
|
||||
@@ -612,17 +845,19 @@ Perfektionismus: Jeder Hörtest musste bestehen
|
||||
|
||||
# Wie funktioniert MP3?
|
||||
|
||||
**1. Frequenz-Analyse (FFT)**
|
||||
Audio → Frequenzspektrum
|
||||
Ein Zusammenspiel aus vielen Faktoren:
|
||||
|
||||
**2. Psychoakustisches Modell**
|
||||
Welche Töne hört Mensch nicht?
|
||||
* **1. Frequenz-Analyse (FFT)**
|
||||
Audio → Frequenzspektrum
|
||||
|
||||
**3. Quantisierung**
|
||||
Unwichtige Frequenzen reduzieren
|
||||
* **2. Psychoakustisches Modell**
|
||||
Welche Töne hört Mensch nicht?
|
||||
|
||||
**4. Huffman-Coding**
|
||||
Lossless-Kompression der Restdaten
|
||||
* **3. Quantisierung**
|
||||
Unwichtige Frequenzen reduzieren
|
||||
|
||||
* **4. Huffman-Coding**
|
||||
Lossless-Kompression der Restdaten
|
||||
|
||||
<!--
|
||||
MP3-Kompression in 4 Schritten (vereinfacht):
|
||||
@@ -639,7 +874,7 @@ MP3-Kompression in 4 Schritten (vereinfacht):
|
||||
3. Quantisierung (hier passiert der Datenverlust!)
|
||||
- Unwichtige Frequenzen werden "grob" gespeichert
|
||||
- Wichtige Frequenzen bleiben genau
|
||||
- Wie JPEG: Details entfernen, wo es nicht auffällt
|
||||
- Wie JPEG: Details entfernen, wo es nicht auffällt (Kontrast/Helligkeit bleibt)
|
||||
|
||||
4. Huffman-Coding (verlustfrei)
|
||||
- Häufige Muster = kurze Codes
|
||||
@@ -793,7 +1028,7 @@ Vinyl-Revival: 2020er Gegenbewegung
|
||||
5. Vergleiche Dateigrößen
|
||||
|
||||
**Spektrogramm:** Klick auf Track-Name → Spektrogramm
|
||||
[manual.audacityteam.org/man/spectrogram_view.html](https://manual.audacityteam.org/man/spectrogram_view.html)
|
||||
[https://manual.audacityteam.org/man/spectrogram_view.html](https://manual.audacityteam.org/man/spectrogram_view.html)
|
||||
|
||||
<!--
|
||||
Audacity: FOSS Audio-Editor (audacityteam.org)
|
||||
|
||||
|
After Width: | Height: | Size: 574 KiB |
|
After Width: | Height: | Size: 408 KiB |
|
After Width: | Height: | Size: 484 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 5.3 MiB |
|
Before Width: | Height: | Size: 5.3 MiB After Width: | Height: | Size: 4.0 MiB |
|
After Width: | Height: | Size: 1.7 MiB |