Digitale Audioformate Referent Stephan Lehmann
Digitale Audioformate Wozu das Ganze ? Speicherung und Archivierung von Audiodaten Übertragung (ISDN, Internet ) Digitale Audioformate
Digitale Audioformate Was braucht man dafür ? Eine digitale Repräsentation für die Audio-Daten Möglichkeiten zur Datenreduktion Digitale Audioformate
Digitale Audioformate Digitalisierung Abtasten Quantisieren Kodieren Digitale Audioformate
Digitale Audioformate Abtastung Signalstärke wird regelmäßig gemessen Digitale Audioformate
Digitale Audioformate Quantisierung Umwandlung Spannungswerte > Zahlenwerte Digitale Audioformate
Digitale Audioformate Kodierung Zahlenwerte werden binär kodiert Digitale Audioformate
Digitale Audioformate Qualität abhängig von Anzahl der Quantisierungsstufen Abtastrate Je mehr Quantisierungsstufen ( bessere Auflösung 8/16 Bit etc) und je höher die Abtastrate (8,16,41 kHz) desto besser wird die Qualität der Ausgabe sein. Digitale Audioformate
Digitale Audioformate Platzbedarf Bitrate/s = Abtastrate/Hz * Bits/Abtastwert Beispiel Audio-CD 44,1kHz * 2 * 16bit = 1,4 MBit/s Speicherbedarf bei 60 min : 635 MB *2 wegen Stereo Digitale Audioformate
Digitale Audioformate Datenmengen 44,1 kHz 22 kHz 11 kHz 16 Bit 1408 kBit 704 kBit 352 kBit 12 Bit 1056 kBit 528 kBit 264 kBit 8 Bit 176 kBit Zwar nicht solche Größenordnungen wie bei Video, aber Wie man sieht sind die Datenmengen selbst bei geringer Qualität nicht für die Übertragung durchs Internet geeignet Digitale Audioformate
Digitale Audioformate Übliche Abtastraten 8 kHz für Videokonferenz 32 kHz für Rundfunk 44,1 kHz für Audio-CD 48 kHz für DVD Digitale Audioformate
Übliche Quantisierungen 8-16 Bit PC 16 Bit Audio-CD 24 Bit Tonstudio Digitale Audioformate
Digitale Audioformate Realisierung PCM (Pulse Code Modulation) Telefonsystem CD/DVD digitaler Rundfunk etc… Digitale Audioformate
Digitale Audioformate Lineares PCM gleichmäßige Verteilung der Quantisierungsstufen Das Verhältnis der Abstufungen zueinander ist immer gleich. Steigt das Eingangssignal zb. um 10, dann wird auch das Digitale Signal um 10 erhöht. Steigt es nur um 5 wird auch das Digitale Signal nur um 5 erhöht. Digitale Audioformate
Kompressionsmöglichkeiten verlustfrei Run-Length-Encoding Pattern Matching Statistische Verfahren verlustbehaftet Redundanz- / Irrelevanzreduktion Will man die Menge der Daten verringern ohne die Qualität zu verschlechtern muss man über Kompressionsmöglichkeiten nachdenken. Run Length Encoding ersetzt gleiche Werte durch einen dieser Werte+Anzahl LZW, Huffman etc nicht so gut keine konstante Komprimierung -> schlecht für Internet Ausserdem alles schlecht zu bearbeiten Digitale Audioformate
Digitale Audioformate Psychoakustik Informationen, die vom Gehör unter bestimmten Umständen nicht wahrgenommen werden, können weggelassen werden. begrenzter Frequenzbereich Maskierung / Verdeckung frequenzabhängiges Lautstärkeempfinden Digitale Audioformate
Digitale Audioformate Frequenzbereich Schallbereich Frequenz Infraschall <16 Hz Hörbarer Schall 16 Hz bis 16 kHz Ultraschall 16 kHz bis 10 Mhz Hyperschall >10 MHz Digitale Audioformate
Digitale Audioformate Maskierung 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 Beispiel Digitale Audioformate
Digitale Audioformate Verdeckung wenn nach einem lauten Ton ein leiser folgt ist er am Anfang schlecht zu hören Beispiel Digitale Audioformate
Frequenzabhängiges Lautstärkeempfinden Mit höherer Frequenz erscheinen Töne lauter (bis zu einem best. Punkt) Beispiel Digitale Audioformate
Weber-Fechnersches Grundgesetz der Psychophysik Ein Reiz (Rx) muß gegenüber einem Schwellenreiz (Ro) logarithmisch wachsen, wenn er als stärker empfunden werden soll Wenn es schon sehr sehr laut ist, dann macht es keinen Unterschied ob es noch ein bisschen lauter wird Digitale Audioformate
Anwendung der Psychoakustik bei Dynamischem PCM leise Geräusche werden vom Mensch differenzierter wahrgenommen als Laute also müssen leise Werte genauer quantisiert werden als laute Digitale Audioformate
Digitale Audioformate Dynamisches PCM Logarithmische Verteilung der Quantisierungsstufen Digitale Audioformate
Digitale Audioformate Dynamisches PCM Umrechnen der linearen Samplewerte in Logarithmische nennt man Kompandierung µ-Law Kompander (Amerika/Japan) A-Law Kompander (Europa) Entwickelt für Telefonsysteme Digitale Audioformate
Digitale Audioformate µ-Law Kompander Sµ=Log(1+255*S)/log(256) S – Linearer Samplewert zwischen 0 und 1 Sµ - Logarithmischer Samplewert Bei 16Bit ist S durch 32768 zu teilen Zurück : S=(256Sµ -1) / 255 Digitale Audioformate
Digitale Audioformate A-Law Kompander SA = A · S/(1 + ln A) wenn S ≤ 1/A SA = (1 + ln (A · S))/(1 + ln A) wenn 1/A ≤ S ≤ 1 A = 87,6 Digitale Audioformate
Digitale Audioformate Dynamisches PCM gleiche Datenrate wie lineares PCM, aber bessere Qualität Digitale Audioformate
Differential PCM (DPCM) Bei hoher Abtastfrequenz sind die Unterschiede zwischen 2 Samples klein Statt Samplewerten werden deshalb Sampleänderungen erfasst Digitale Audioformate
Differential PCM (DPCM) Digitale Audioformate
Differential PCM (DPCM) Folge : man benötigt weniger Bits zum Kodieren der Samplewerte Problem bei schnellen großen Änderungen Digitale Audioformate
Differential PCM (DPCM) 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 1 2 3 4 5 6 7 Änderung Fibonacci -34 -21 -13 -0 8 13 21 Exponential -128 -64 -32 -16 16 32 64 Digitale Audioformate
Differential PCM (DPCM) feste Menge von möglichen Änderungswerten. zu ungenau ! Digitale Audioformate
Adaptive Differential PCM (ADPCM) Ä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
Adaptive Differential PCM (ADPCM) bei großen Signaländerungen braucht man große Änderungswerte bei kleinen Signaländerungen braucht man kleine Änderungswerte Anpassung mittels Faktor (Schrittweite) Digitale Audioformate
Adaptive Differential PCM (ADPCM) Man betrachtet die vorherigen Samplewerte Differenzen werden größer -> großer Faktor Differenzen werden kleiner -> kleiner Faktor Digitale Audioformate
Digitale Audioformate IMA ADPCM Standard für ADPCM-Dateien IMA – Interactive Multimedia Association Kleinere Kompression als MPEG aber sehr schnell Industrieorganisation zur Standardisierung von Multimedia-Formaten Digitale Audioformate
Digitale Audioformate Funktionsweise IMA ADPCM benutzt 4 Bits je Sample Nach jedem Sample wird die Schrittweite neu berechnet Der 4Bit-Wert mal der aktuellen Schrittweite entspricht dem Unterschied zwischen zwei Originalsamples Digitale Audioformate
Berechnung der Schrittweite Jeder 4Bit-Wert besteht aus Vorzeichenbit und 3 Wertebits Wertebereich -7 bis +7 zugeordnet folgender Tabelle 2er Komplement wäre besser Digitale Audioformate
Berechnung der Schrittweite 4Bit- -7 -6 -5 -4 -3 -2 -1 -0 1 2 3 4 5 6 7 Index-änderung 8 Die Indexänderung bezieht sich auf eine 2. Tabelle in der Schrittweiten gespeichert sind Ändert sich der 4Bit-Wert wenig, dann ändert sich auch die Schrittweite wenig Digitale Audioformate
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
Kodierung / Dekodierung 4Bit-Wert=Unterschied geteilt durch die aktuelle Schrittweite Dekodierung Änderung=4Bit-Wert mal der aktuellen Schrittweite Digitale Audioformate
Digitale Audioformate Beispiel Kodierung Letzter Samplewert = 12368 Schrittweite = 1878 Nächster Samplewert = 10000 Differenz = -2368 Gespeichert wird -2368/1878 = -1 Schrittweitenindex-1 Nächste Schrittweite = 1707 Digitale Audioformate
Digitale Audioformate Beispiel Dekodierung 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
Digitale Audioformate Problem ! Woher bekommt der Decoder die aktuelle Schrittweite den aktuellen Samplewert wenn die Audio-Wiedergabe mittendrin starten soll ? Dort wäre ja normalerweise nur eine Differenz, aber der Encoder kennt nicht den vorherigen Verlauf Digitale Audioformate
Digitale Audioformate Lösung Audiostream wird in Pakete aufgeteilt Am Anfang jeden Paketes steht der letzte Samplewert und die aktuelle Schrittweite Digitale Audioformate
Digitale Audioformate Struktur Pakete bestehen aus Kopf (2-8 Bytes) Sampledaten (n*4 Bit) Digitale Audioformate
Digitale Audioformate Implementierungen Keine genauere Spezifizierung durch die IMA -> verschiedene Implementierungen MS-ADPCM (Microsoft) AIFF-C / Quicktime (Apple) Weder Stereo noch Kopf definiert Digitale Audioformate
Digitale Audioformate Microsoft Paketkopf (32 Bit) Startsample (8/16 Bit) Aktuelle Schrittweite (8 Bit) 0-Byte Paketdaten Unterschieden nach Mono/Stereo 0-Byte zur Synchronisation Digitale Audioformate
Digitale Audioformate Microsoft Mono Paket Format Kopf Sample 1 Sample 2 Sample 3 Sample 4 Sample 5 … Stereo Paket Format Kopf links Kopf rechts Sample 1 links Sample 1 rechts Sample 2 links Sample 2 rechts … Digitale Audioformate
Digitale Audioformate Apple Paketkopf (16 Bit) Startsample (obere 9 Bit) Aktuelle Schrittweite (7 Bit) Paketdaten Immer 64 Samples Extra Pakete für Rechts/Links Digitale Audioformate
Digitale Audioformate Vergleich MS-ADPCM beliebige Paketgröße weniger Overhead bei großen Paketen AIFF-C einfacher da nur eine Form von Paketen Digitale Audioformate
Digitale Audioformate WAVE - FORMAT Implementation der RIFF-Spezifikation Ressource Interchange File Format Entwickelt von Microsoft (übernommen von Electronic Arts AIFF) Weit verbreitet auf PC-Systemen Digitale Audioformate
Digitale Audioformate RIFF - Format Allgemeines Format für Multimediadaten Bilder Videos Sound etc Digitale Audioformate
Digitale Audioformate RIFF Aufbau Besteht aus Teilpaketen (Chunks) z.B. WAVE,AVI Jeder Chunk kann aus Subchunks zusammengesetzt sein hierarchische Struktur Digitale Audioformate
Digitale Audioformate Chunks bei WAVE Besteht aus einem Chunk „WAVE“ Dieser besteht aus 2 Subchunks fmt-Chunk (Format) data-Chunk (Daten) Digitale Audioformate
Digitale Audioformate Aufbau WAVE Digitale Audioformate
Digitale Audioformate Aufbau WAVE ChunkID enthält die Zeichen "RIFF" ChunkSize 36 + SubChunk2Size Format enthält die Zeichen "WAVE„ Subchunk1ID enthält die Zeichen "fmt „ Subchunk1Size 16 für PCM, das ist die Größe des Subchunk1, ab hier gezählt Digitale Audioformate
Digitale Audioformate Aufbau WAVE AudioFormat Lineares PCM = 1, andere Werte bedeuten Kompression NumChannels Mono = 1, Stereo = 2, etc. SampleRate 8000, 44100, etc. ByteRate = SampleRate * NumChannels * BitsPerSample/8 BlockAlign = NumChannels * BitsPerSample/8 Digitale Audioformate
Digitale Audioformate Aufbau WAVE BitsPerSample 8 bits = 8, 16 bits = 16, etc. Subchunk2ID enthält die Zeichen "data" Subchunk2Size = NumSamples * NumChannels * BitsPerSample/8 Digitale Audioformate
Digitale Audioformate Beispieldatei WAVE Digitale Audioformate
Digitale Audioformate Literatur Telematik-Vorlesung A programmers guide to sound 1998 Addison Wesley Das PC-Tonstudio: von der Aufnahme und Verarbeitung mit dem PC bis zur Master-CD 1998 Franzis www.rasip.fer.hr/research/compress www.physio.mu-luebeck.de/vorlesung/_private/sinne/sinnesphysiologie.pdf Digitale Audioformate