Digitale Audioformate Referent Stephan Lehmann Digitale Audioformate Wozu

  • Slides: 61
Download presentation
Digitale Audioformate Referent Stephan Lehmann Digitale Audioformate

Digitale Audioformate Referent Stephan Lehmann Digitale Audioformate

Wozu das Ganze ? l l Speicherung und Archivierung von Audiodaten Übertragung (ISDN, Internet

Wozu das Ganze ? l l Speicherung und Archivierung von Audiodaten Übertragung (ISDN, Internet ) Digitale Audioformate 2

Was braucht man dafür ? l l Eine digitale Repräsentation für die Audio-Daten Möglichkeiten

Was braucht man dafür ? l l Eine digitale Repräsentation für die Audio-Daten Möglichkeiten zur Datenreduktion Digitale Audioformate 3

Digitalisierung l l l Abtasten Quantisieren Kodieren Digitale Audioformate 4

Digitalisierung l l l Abtasten Quantisieren Kodieren Digitale Audioformate 4

Abtastung l Signalstärke wird regelmäßig gemessen Digitale Audioformate 5

Abtastung l Signalstärke wird regelmäßig gemessen Digitale Audioformate 5

Quantisierung l Umwandlung Spannungswerte > Zahlenwerte Digitale Audioformate 6

Quantisierung l Umwandlung Spannungswerte > Zahlenwerte Digitale Audioformate 6

Kodierung l Zahlenwerte werden binär kodiert Digitale Audioformate 7

Kodierung l Zahlenwerte werden binär kodiert Digitale Audioformate 7

Qualität l abhängig von l Anzahl der Quantisierungsstufen l Abtastrate Digitale Audioformate 8

Qualität l abhängig von l Anzahl der Quantisierungsstufen l Abtastrate Digitale Audioformate 8

Platzbedarf l l Bitrate/s = Abtastrate/Hz * Bits/Abtastwert Beispiel Audio-CD l 44, 1 k.

Platzbedarf l l Bitrate/s = Abtastrate/Hz * Bits/Abtastwert Beispiel Audio-CD l 44, 1 k. Hz * 2 * 16 bit = 1, 4 MBit/s l Speicherbedarf bei 60 min : 635 MB Digitale Audioformate 9

Datenmengen 44, 1 k. Hz 22 k. Hz 11 k. Hz 16 Bit 1408

Datenmengen 44, 1 k. Hz 22 k. Hz 11 k. Hz 16 Bit 1408 k. Bit 704 k. Bit 352 k. Bit 12 Bit 1056 k. Bit 528 k. Bit 264 k. Bit 8 Bit 704 k. Bit 352 k. Bit 176 k. Bit Digitale Audioformate 10

Übliche Abtastraten l l 8 k. Hz für Videokonferenz 32 k. Hz für Rundfunk

Übliche Abtastraten l l 8 k. Hz für Videokonferenz 32 k. Hz für Rundfunk 44, 1 k. Hz für Audio-CD 48 k. Hz für DVD Digitale Audioformate 11

Übliche Quantisierungen l l l 8 -16 Bit PC 16 Bit Audio-CD 24 Bit

Übliche Quantisierungen l l l 8 -16 Bit PC 16 Bit Audio-CD 24 Bit Tonstudio Digitale Audioformate 12

Realisierung l PCM (Pulse Code Modulation) l Telefonsystem l CD/DVD l digitaler Rundfunk l

Realisierung l PCM (Pulse Code Modulation) l Telefonsystem l CD/DVD l digitaler Rundfunk l etc… Digitale Audioformate 13

Lineares PCM l gleichmäßige Verteilung der Quantisierungsstufen Digitale Audioformate 14

Lineares PCM l gleichmäßige Verteilung der Quantisierungsstufen Digitale Audioformate 14

Kompressionsmöglichkeiten l l verlustfrei l Run-Length-Encoding l Pattern Matching l Statistische Verfahren verlustbehaftet l

Kompressionsmöglichkeiten l l verlustfrei l Run-Length-Encoding l Pattern Matching l Statistische Verfahren verlustbehaftet l Redundanz- / Irrelevanzreduktion Digitale Audioformate 15

Psychoakustik l Informationen, die vom Gehör unter bestimmten Umständen nicht wahrgenommen werden, können weggelassen

Psychoakustik l Informationen, die vom Gehör unter bestimmten Umständen nicht wahrgenommen werden, können weggelassen werden. l begrenzter Frequenzbereich l Maskierung / Verdeckung l frequenzabhängiges Lautstärkeempfinden Digitale Audioformate 16

Frequenzbereich Schallbereich Frequenz Infraschall <16 Hz Hörbarer Schall 16 Hz bis 16 k. Hz

Frequenzbereich Schallbereich Frequenz Infraschall <16 Hz Hörbarer Schall 16 Hz bis 16 k. Hz Ultraschall 16 k. Hz bis 10 Mhz Hyperschall >10 MHz Digitale Audioformate 17

Maskierung l l l 2 Personen unterhalten sich ein Flugzeug fliegt vorbei wenn sie

Maskierung l l l 2 Personen unterhalten sich ein Flugzeug fliegt vorbei wenn sie sich in der gleichen Lautstärke sprechen würden, könnten sie sich nicht mehr verstehen Digitale Audioformate 18

Verdeckung l wenn nach einem lauten Ton ein leiser folgt ist er am Anfang

Verdeckung l wenn nach einem lauten Ton ein leiser folgt ist er am Anfang schlecht zu hören Digitale Audioformate 19

Frequenzabhängiges Lautstärkeempfinden l Mit höherer Frequenz erscheinen Töne lauter (bis zu einem best. Punkt)

Frequenzabhängiges Lautstärkeempfinden l Mit höherer Frequenz erscheinen Töne lauter (bis zu einem best. Punkt) Digitale Audioformate 20

Weber-Fechnersches Grundgesetz der Psychophysik l Ein Reiz (Rx) muß gegenüber einem Schwellenreiz (Ro) logarithmisch

Weber-Fechnersches Grundgesetz der Psychophysik l Ein Reiz (Rx) muß gegenüber einem Schwellenreiz (Ro) logarithmisch wachsen, wenn er als stärker empfunden werden soll Digitale Audioformate 21

Anwendung der Psychoakustik bei Dynamischem PCM l l leise Geräusche werden vom Mensch differenzierter

Anwendung der Psychoakustik bei Dynamischem PCM l l leise Geräusche werden vom Mensch differenzierter wahrgenommen als Laute also müssen leise Werte genauer quantisiert werden als laute Digitale Audioformate 22

Dynamisches PCM l Logarithmische Verteilung der Quantisierungsstufen Digitale Audioformate 23

Dynamisches PCM l Logarithmische Verteilung der Quantisierungsstufen Digitale Audioformate 23

Dynamisches PCM l Umrechnen der linearen Samplewerte in Logarithmische nennt man Kompandierung l l

Dynamisches PCM l Umrechnen der linearen Samplewerte in Logarithmische nennt man Kompandierung l l µ-Law Kompander (Amerika/Japan) A-Law Kompander (Europa) Digitale Audioformate 24

µ-Law Kompander l Sµ=Log(1+255*S)/log(256) l l S – Linearer Samplewert § zwischen 0 und

µ-Law Kompander l Sµ=Log(1+255*S)/log(256) l l S – Linearer Samplewert § zwischen 0 und 1 Sµ - Logarithmischer Samplewert Digitale Audioformate 25

A-Law Kompander l l SA = A · S/(1 + ln A) l wenn

A-Law Kompander l l SA = A · S/(1 + ln A) l wenn S ≤ 1/A SA = (1 + ln (A · S))/(1 + ln A) l wenn 1/A ≤ S ≤ 1 A = 87, 6 Digitale Audioformate 26

Dynamisches PCM l gleiche Datenrate wie lineares PCM, aber bessere Qualität Digitale Audioformate 27

Dynamisches PCM l gleiche Datenrate wie lineares PCM, aber bessere Qualität Digitale Audioformate 27

Differential PCM (DPCM) l l Bei hoher Abtastfrequenz sind die Unterschiede zwischen 2 Samples

Differential PCM (DPCM) l l Bei hoher Abtastfrequenz sind die Unterschiede zwischen 2 Samples klein Statt Samplewerten werden deshalb Sampleänderungen erfasst Digitale Audioformate 28

Differential PCM (DPCM) Digitale Audioformate 29

Differential PCM (DPCM) Digitale Audioformate 29

Differential PCM (DPCM) l l Folge : man benötigt weniger Bits zum Kodieren der

Differential PCM (DPCM) l l Folge : man benötigt weniger Bits zum Kodieren der Samplewerte Problem bei schnellen großen Änderungen Digitale Audioformate 30

Differential PCM (DPCM) l l es sollen viele kleine und wenige große Änderungen in

Differential PCM (DPCM) l l es sollen viele kleine und wenige große Änderungen in möglichst wenig Bits kodiert werden eine Lösung : Kodierungstabellen Bitwert -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 Änderung Fibonacci -34 -21 -13 -8 -5 -3 -2 -1 -0 1 2 3 5 8 13 21 Änderung Exponential -128 -64 -32 -16 -8 -4 -2 -1 0 1 2 4 8 16 32 64 Digitale Audioformate 31

Differential PCM (DPCM) l l feste Menge von möglichen Änderungswerten. zu ungenau ! Digitale

Differential PCM (DPCM) l l feste Menge von möglichen Änderungswerten. zu ungenau ! Digitale Audioformate 32

Adaptive Differential PCM (ADPCM) l l Änderungswerte werden deshalb an die Signalform angepasst andere

Adaptive Differential PCM (ADPCM) l l Änderungswerte werden deshalb an die Signalform angepasst andere Möglichkeit ist die Einführung eines Vorhersagewertes wobei immer die Differenz zwischen diesem und dem echten Wert gespeichert wird Digitale Audioformate 33

Adaptive Differential PCM (ADPCM) l l l bei großen Signaländerungen braucht man große Änderungswerte

Adaptive Differential PCM (ADPCM) l l l bei großen Signaländerungen braucht man große Änderungswerte bei kleinen Signaländerungen braucht man kleine Änderungswerte Anpassung mittels Faktor (Schrittweite) Digitale Audioformate 34

Adaptive Differential PCM (ADPCM) l Man betrachtet die vorherigen Samplewerte l Differenzen werden größer

Adaptive Differential PCM (ADPCM) l Man betrachtet die vorherigen Samplewerte l Differenzen werden größer -> großer Faktor l Differenzen werden kleiner -> kleiner Faktor Digitale Audioformate 35

IMA ADPCM l l l Standard für ADPCM-Dateien IMA – Interactive Multimedia Association Kleinere

IMA ADPCM l l l Standard für ADPCM-Dateien IMA – Interactive Multimedia Association Kleinere Kompression als MPEG aber sehr schnell Digitale Audioformate 36

Funktionsweise l l l IMA ADPCM benutzt 4 Bits je Sample Nach jedem Sample

Funktionsweise l l l IMA ADPCM benutzt 4 Bits je Sample Nach jedem Sample wird die Schrittweite neu berechnet Der 4 Bit-Wert mal der aktuellen Schrittweite entspricht dem Unterschied zwischen zwei Originalsamples Digitale Audioformate 37

Berechnung der Schrittweite l l Jeder 4 Bit-Wert besteht aus Vorzeichenbit und 3 Wertebits

Berechnung der Schrittweite l l Jeder 4 Bit-Wert besteht aus Vorzeichenbit und 3 Wertebits Wertebereich -7 bis +7 zugeordnet folgender Tabelle Digitale Audioformate 38

Berechnung der Schrittweite 4 Bit- -7 -6 -5 -4 -3 -2 -1 -0 0

Berechnung der Schrittweite 4 Bit- -7 -6 -5 -4 -3 -2 -1 -0 0 Indexänderung 8 l l 6 4 2 1 2 3 4 5 6 7 -1 -1 2 4 6 8 Die Indexänderung bezieht sich auf eine 2. Tabelle in der Schrittweiten gespeichert sind Ändert sich der 4 Bit-Wert wenig, dann ändert sich auch die Schrittweite wenig Digitale Audioformate 39

Berechnung der Schrittweite IMA ADPCM Schrittweiten-Tabelle (7 Bits) 7 8 9 10 11 12

Berechnung der Schrittweite IMA ADPCM Schrittweiten-Tabelle (7 Bits) 7 8 9 10 11 12 13 14 16 17 19 21 23 25 28 31 34 37 41 45 50 55 60 66 73 80 88 97 107 118 130 143 157 173 190 209 230 253 279 307 337 371 408 449 494 544 598 658 724 796 876 963 1060 1166 1282 1411 1552 1707 1878 2066 2272 2499 2749 3024 3327 3660 4026 4428 4871 5358 5894 6484 7132 7845 8630 9493 10442 11487 12635 13899 15289 16818 18500 20350 22385 24623 27086 29794 32767 Digitale Audioformate 40

Kodierung / Dekodierung l l Kodierung l 4 Bit-Wert=Unterschied geteilt durch die aktuelle Schrittweite

Kodierung / Dekodierung l l Kodierung l 4 Bit-Wert=Unterschied geteilt durch die aktuelle Schrittweite Dekodierung l Änderung=4 Bit-Wert mal der aktuellen Schrittweite Digitale Audioformate 41

Beispiel Kodierung l l l l Letzter Samplewert = 12368 Schrittweite = 1878 Nächster

Beispiel Kodierung l l l l Letzter Samplewert = 12368 Schrittweite = 1878 Nächster Samplewert = 10000 Differenz = -2368 Gespeichert wird -2368/1878 = -1 Schrittweitenindex-1 Nächste Schrittweite = 1707 Digitale Audioformate 42

Beispiel Dekodierung l l l l Letzter Samplewert = 12368 Schrittweite = 1878 Eingelesen

Beispiel Dekodierung l l l l Letzter Samplewert = 12368 Schrittweite = 1878 Eingelesen wird eine -1 -1*1878=-1878 Also Samplewert=12368 -1878=10490 Schrittweitenindex-1 Nächste Schrittweite = 1707 Digitale Audioformate 43

Problem ! l Woher bekommt der Decoder § § die aktuelle Schrittweite den aktuellen

Problem ! l Woher bekommt der Decoder § § die aktuelle Schrittweite den aktuellen Samplewert wenn die Audio-Wiedergabe mittendrin starten soll ? Digitale Audioformate 44

Lösung l l Audiostream wird in Pakete aufgeteilt Am Anfang jeden Paketes steht der

Lösung l l Audiostream wird in Pakete aufgeteilt Am Anfang jeden Paketes steht der letzte Samplewert und die aktuelle Schrittweite Digitale Audioformate 45

Struktur l Pakete bestehen aus l Kopf (2 -8 Bytes) l Sampledaten (n*4 Bit)

Struktur l Pakete bestehen aus l Kopf (2 -8 Bytes) l Sampledaten (n*4 Bit) Digitale Audioformate 46

Implementierungen l l Keine genauere Spezifizierung durch die IMA -> verschiedene Implementierungen MS-ADPCM (Microsoft)

Implementierungen l l Keine genauere Spezifizierung durch die IMA -> verschiedene Implementierungen MS-ADPCM (Microsoft) AIFF-C / Quicktime (Apple) Digitale Audioformate 47

Microsoft l l Paketkopf (32 Bit) l Startsample (8/16 Bit) l Aktuelle Schrittweite (8

Microsoft l l Paketkopf (32 Bit) l Startsample (8/16 Bit) l Aktuelle Schrittweite (8 Bit) l 0 -Byte Paketdaten l Unterschieden nach Mono/Stereo Digitale Audioformate 48

Microsoft l Mono Paket Format Kopf l Sample 1 Sample 2 Sample 3 Sample

Microsoft l Mono Paket Format Kopf l Sample 1 Sample 2 Sample 3 Sample 4 Sample 5 … Sample 2 links Sample 2 rechts … Stereo Paket Format Kopf links Kopf rechts Sample 1 links Digitale Audioformate Sample 1 rechts 49

Apple l l Paketkopf (16 Bit) l Startsample (obere 9 Bit) l Aktuelle Schrittweite

Apple l l Paketkopf (16 Bit) l Startsample (obere 9 Bit) l Aktuelle Schrittweite (7 Bit) Paketdaten l Immer 64 Samples l Extra Pakete für Rechts/Links Digitale Audioformate 50

Vergleich l l MS-ADPCM l beliebige Paketgröße l weniger Overhead bei großen Paketen AIFF-C

Vergleich l l MS-ADPCM l beliebige Paketgröße l weniger Overhead bei großen Paketen AIFF-C l einfacher da nur eine Form von Paketen Digitale Audioformate 51

WAVE - FORMAT l l l Implementation der RIFF-Spezifikation l Ressource Interchange File Format

WAVE - FORMAT l l l Implementation der RIFF-Spezifikation l Ressource Interchange File Format Entwickelt von Microsoft (übernommen von Electronic Arts AIFF) Weit verbreitet auf PC-Systemen Digitale Audioformate 52

RIFF - Format l Allgemeines Format für Multimediadaten l Bilder l Videos l Sound

RIFF - Format l Allgemeines Format für Multimediadaten l Bilder l Videos l Sound l etc Digitale Audioformate 53

RIFF Aufbau l l l Besteht aus Teilpaketen (Chunks) l z. B. WAVE, AVI

RIFF Aufbau l l l Besteht aus Teilpaketen (Chunks) l z. B. WAVE, AVI Jeder Chunk kann aus Subchunks zusammengesetzt sein hierarchische Struktur Digitale Audioformate 54

Chunks bei WAVE l l Besteht aus einem Chunk „WAVE“ Dieser besteht aus 2

Chunks bei WAVE l l Besteht aus einem Chunk „WAVE“ Dieser besteht aus 2 Subchunks l fmt-Chunk (Format) l data-Chunk (Daten) Digitale Audioformate 55

Aufbau WAVE Digitale Audioformate 56

Aufbau WAVE Digitale Audioformate 56

Aufbau WAVE l l l Chunk. ID enthält die Zeichen "RIFF" Chunk. Size 36

Aufbau WAVE l l l Chunk. ID enthält die Zeichen "RIFF" Chunk. Size 36 + Sub. Chunk 2 Size Format enthält die Zeichen "WAVE„ Subchunk 1 ID enthält die Zeichen "fmt „ Subchunk 1 Size 16 für PCM, das ist die Größe des Subchunk 1, ab hier gezählt Digitale Audioformate 57

Aufbau WAVE l l l Audio. Format Lineares PCM = 1, andere Werte bedeuten

Aufbau WAVE l l l Audio. Format Lineares PCM = 1, andere Werte bedeuten Kompression Num. Channels Mono = 1, Stereo = 2, etc. Sample. Rate 8000, 44100, etc. Byte. Rate = Sample. Rate * Num. Channels * Bits. Per. Sample/8 Block. Align = Num. Channels * Bits. Per. Sample/8 Digitale Audioformate 58

Aufbau WAVE l l l Bits. Per. Sample 8 bits = 8, 16 bits

Aufbau WAVE l l l Bits. Per. Sample 8 bits = 8, 16 bits = 16, etc. Subchunk 2 ID enthält die Zeichen "data" Subchunk 2 Size = Num. Samples * Num. Channels * Bits. Per. Sample/8 Digitale Audioformate 59

Beispieldatei WAVE Digitale Audioformate 60

Beispieldatei WAVE Digitale Audioformate 60

Literatur l l l Telematik-Vorlesung A programmers guide to sound l 1998 Addison Wesley

Literatur l l l Telematik-Vorlesung A programmers guide to sound l 1998 Addison Wesley Das PC-Tonstudio: von der Aufnahme und Verarbeitung mit dem PC bis zur Master-CD l 1998 Franzis www. rasip. fer. hr/research/compress www. physio. muluebeck. de/vorlesung/_private/sinnesphysiologie. pdf Digitale Audioformate 61