Audiokom­pres­sion (Datenre­duk­tion)

Ein Überblick über ver­lust­be­haftete Audiokom­pres­sion, 1999 geschrieben für ein Sem­i­nar über Mul­ti­me­di­at­e­ch­nolo­gien an der Uni­ver­sität des Saar­lan­des.

Erra­ta:

  • Die DCC benutzt ein mod­i­fizierten MPEG-1 Lay­er I mit 2×192 kbit/s.
  • Sound VQ ist ein “Vek­torkom­pres­sionsver­fahren”

Audiokom­pres­sion
(Datenre­duk­tion)

Alexan­der Lei­dinger
Alexander@Leidinger.net


Herun­ter­laden dieser Sem­i­na­rausar­beitung als kom­prim­ierte Post­Script Datei.


Inhalt

  • Inhalt
  • 1. Warum Audiokom­pres­sion?
  • 2. Arten der Audiokom­pres­sion
  • 3. Datenre­duk­tionsver­fahren
    • 3.1 Vorar­beit
    • 3.2 Hörschwellen­mask­ierung
    • 3.3 Fre­quenz­mask­ierung
    • 3.4 Zeit­mask­ierung
    • 3.5 Stere­o­re­dun­danz
    • 3.6 Koef­fizien­ten­quan­tisierung
  • 4. Gängige Über­tra­gungs­for­mate und ihre Ein­sat­zorte
  • 5. Kom­pres­sion­srat­en
    • 5.1 Erre­ich­bare Werte
    • 5.2 Konkrete Zahlen bei MP3
  • 6. Qual­itätsver­gle­ich
  • 7. Faz­it
  • Lit­er­atur


1. Warum Audiokom­pres­sion?

Audio­dat­en haben ein gross­es Date­naufkom­men. Zur Archivierung von Audio­dat­en in CD-Qualität (44 kHz, 16 Bit, Stereo) benötigt man ca. 10 Megabyte pro Minute. Will man Audio­dat­en (CD-Qualität) in Echtzeit über­tra­gen, braucht man ca. 2,7 Megabit pro Sekunde. Wenn man statt eines Stere­osig­nales auch noch die Geräuschkulisse eines Kinofilmes über­tra­gen oder spe­ich­ern will, ver­dreifachen sich diese Werte sog­ar.

Anwen­dun­gen wie z.B. Video/Audio on Demand sind auf­grund der benötigten Band­bre­ite und des benötigten Spe­icher­platzes deshalb so nicht kostengün­stig real­isier­bar. Es muss also ein Weg gefun­den wer­den das Daten­vol­u­men zu reduzieren, ohne dabei die Qual­ität der Audio­dat­en hör­bar zu bee­in­flussen. Die momen­tane Tech­nik bietet dazu ver­schiedene Arten der Audiokom­pres­sion an.


2. Arten der Audiokom­pres­sion

Man kann die Audiokom­pres­sion in zwei grosse Teil­bere­iche unter­gliedern. Zum einen ist dies die ver­lust­lose Audiokom­pres­sion (Datenkom­prim­ierung), zum anderen die ver­lust­be­haftete Audiokom­pres­sion (Datenre­duk­tion).

Bei der Datenkom­prim­ierung benutzt man bekan­nte Ver­fahren wie z.B. die Huffman-Kodierung, das LZW-Verfahren oder ähn­liche. Diese Algo­rith­men wer­den auch von nor­malen Datenkom­prim­ierung­spro­gram­men wie z.B. (Win)zip, lha, oder gzip ver­wen­det. Da sie nicht speziell für Audio­dat­en opti­miert sind, wird auch keine opti­male Kom­pres­sion­srate erzielt. Der Vorteil dieser Kom­pres­sionsver­fahren ist jedoch, dass die Audio­dat­en nach ein­er Dekom­pres­sion eine 100%ige Kopie der Orig­i­nal­dat­en darstellen. Auf die Datenkom­prim­ierung wird im weit­eren nicht mehr weit­er einge­gan­gen.

Bei der Datenre­duk­tion hinge­gen wird ein Daten­ver­lust in Kauf genom­men, nach ein­er Dekom­pres­sion entste­ht also keine orig­i­nal­ge­treue Kopie der Aus­gangs­dat­en. Da jedoch die Prämisse beste­ht, dass die Qual­ität der Audio­dat­en nicht hör­bar bee­in­flusst wer­den darf, darf man nicht ein­fach beliebig Dat­en weg lassen (z.B. nur das arith­metis­che Mit­tel jew­eils zweier aufeinan­der fol­gen­der Sam­ples abspe­ich­ern), son­dern muss das psycho-akustische Ver­hal­ten des men­schlichen Gehörs berück­sichti­gen.


3. Datenre­duk­tionsver­fahren

  
3.1 Vorar­beit

Zunächst wird mit­tels der Fast Fouri­er Trans­for­ma­tion (FFT) oder der Diskreten Kos­i­nus Trans­for­ma­tion (DCT) das Fre­quen­zspek­trum der Audio­dat­en bes­timmt. Danach wird das Fre­quen­zspek­trum in viele diskrete, nicht notwendi­ger­weise gle­ich grosse, Inter­valle unterteilt. Diese Inter­valle sind unter psycho-akustischen Gesicht­spunk­ten so aus­gewählt, dass für jedes Inter­vall ein speziell angepasstes psycho-akustisches Mod­ell des Ohres ver­wen­det wer­den kann. Des weit­eren wird auch die Zeitachse des Audiosig­nales in Inter­valle unterteilt. Die Inter­valle auf der Zeitachse sind jedoch gle­ich gross und dienen dazu das Audiosig­nal zu por­tion­ieren, also in kleine Pakete zu unterteilen die sep­a­rat kodiert und dann abgeschickt oder abge­spe­ichert wer­den kön­nen. Die Grösse der ver­wen­de­ten Paketlänge hängt vom vorge­se­henen Anwen­dungszweck ab.

3.2 Hörschwellen­mask­ierung

Zuerst wird in jedem Inter­vall jedes Paketes eine Hörschwellen­mask­ierung vorgenom­men, d.H., dass die Sig­nale aus dem Fre­quen­zspek­trum ent­fer­nt wer­den, die unter der Hörschwelle liegen (Abb. 1) und somit vom Men­schen gar nicht wahrgenom­men wer­den kön­nen.

  
Abbil­dung: Hörschwelle des men­schlichen Gehörs
Hörschwelle

Wie in Abbil­dung 1 ersichtlich, würde z.B. ein Ton mit ein­er Fre­quenz von 16 kHz und ein­er Laut­stärke von 40 dB ent­fer­nt wer­den, da das men­schliche Gehör ihn nicht wahrn­immt.

3.3 Fre­quenz­mask­ierung

Nach der Hörschwellen­mask­ierung fol­gt eine Fre­quenz­mask­ierung. Bei der Fre­quenz­mask­ierung wer­den die Sig­nale ent­fer­nt, die von Sig­nalen mit ein­er anderen Fre­quenz übertönt wer­den (Abb. 2). Ein Ton der eine Fre­quenz von 8 kHz und eine Laut­stärke von 60 dB hat, übertönt z.B. einen Ton von 10 kHz/60 dB.

  
Abbil­dung 2: Fre­quenz­mask­ierung
Frequenzmaskierung

3.4 Zeit­mask­ierung

Wie bei der Fre­quenz­mask­ierung wer­den bei der Zeit­mask­ierung eben­falls Sig­nale ent­fer­nt, die von anderen Sig­nalen übertönt wer­den. Als weit­ere Kom­po­nente wird hier­bei jedoch auch die zeitlich Abfolge der Sig­nale beachtet. Wird z.B. ein Ton bei 1 kHz/60 dB abgeschal­tet, mask­iert dieser noch 5 Mil­lisekun­den nach dem Abschal­ten einen Ton mit 1,1 kHz/40 dB (Abb. 3). Diese Art der Mask­ierung ist nicht nur nach dem Abschal­ten eines Sig­nals zu beobacht­en, son­dern auch in ein­er schwächeren Aus­prä­gung vor dem Anschal­ten eines Sig­nale.

  
Abbil­dung 3: Zeit­mask­ierung
Zeitmaskierung

3.5 Stere­o­re­dun­danz

Ist in ein­er Stere­oüber­tra­gung auf bei­den Kanälen das selbe Sig­nal vorhan­den, z.B. die Gesangsstimme in einem Musik­stück, muss man dieses Sig­nal nicht zweimal über­tra­gen. Da meis­tens jedoch auss­er der Gesangsstimme auch noch Instru­mente zu hören sind die nicht auf bei­den Kanälen gle­ich über­tra­gen wer­den, gibt es ver­schiedene Ver­fahren zwis­chen denen je nach Audiosig­nal und Ver­wen­dungszweck aus­gewählt wer­den kann. Für jedes Inter­vall in jedem Paket wird deshalb entwed­er das Intensity-Stereo-, das Mid/Side-Stereo- oder kein Redun­danzver­fahren benutzt.

Bei Intensity-Stereo (IS-Stereo) wird das Sum­mensignal der Kanäle gebildet und für jeden Kanal ein Skalierungs­fak­tor bes­timmt. Dies führt zwar zu über­sprechen zwis­chen den Kanälen, da man jedoch z.B. bei allen Fre­quen­zen unter­halb von 80 Hz nicht fest­stellen kann, aus welch­er Rich­tung das Sig­nal kommt, ist dies unter psycho-akustischen Gesicht­spunk­ten zu ver­nach­läs­si­gen. Wenn man einen Qual­itätsver­lusst in Kauf nimmt, kann man auch für alle Inter­valle IS-Stereo ver­wen­den um eine grössere Kom­pres­sion­srate zu erzie­len. Dies hat jedoch den Nachteil, dass Phas­en­in­for­ma­tio­nen ver­loren gehen. Somit kann keine Dekodierung von Dolby-Surround kodiertem Audio­ma­te­r­i­al vorgenom­men wer­den, da zur kor­rek­ten Dekodierung der Sur­round­in­for­ma­tio­nen diese Phas­en­in­for­ma­tio­nen benötigt wer­den.

Bei Mid/Side-Stereo (MS-Stereo) wird ein Summen- und ein Dif­feren­zsig­nal gebildet, wobei bei der späteren Abspe­icherung bzw. Über­tra­gung dem Dif­feren­zsig­nal weniger Spe­icher­platz eingeräumt wird, als dem Sum­mensignal. Diese Art der Redun­danzkodierung benötigt zwar etwas mehr Spe­icher­platz als die IS-Stereo-Kodierung, hat aber den Vorteil, dass keine Phas­en­in­for­ma­tio­nen ver­loren gehen und dadurch auch die Dekodierung von Dolby-Surround Sig­nalen möglich ist.

3.6 Koef­fizien­ten­quan­tisierung

Nach der Reduzierung der Audio­dat­en wer­den die Koef­fizien­ten des Fre­quen­zspek­trummes noch quan­tisiert, wobei sich ein soge­nan­nter Quan­tisierungs­fehler bemerk­bar macht (6 dB Rauschen pro wegge­lassen­em Bit). Hier­bei wird jedoch darauf geachtet, dass der Quan­tisierungs­fehler unter den oben beschriebe­nen Mask­ierungss­chwellen bleibt, damit das Gehör diese Fehler nicht bemerkt.


4. Gängige Über­tra­gungs­for­mate und ihre Ein­sat­zorte

Alle fol­gen­den For­mate ver­wen­den die oben beschriebe­nen Reduk­tionsver­fahren, wobei nicht alle For­mate alle Reduk­tion­stech­niken ver­wen­den. Die Zeit­mask­ierung wird z.B. nur bei MPEGAAC bzw. bei Sound VQ ver­wen­det. Zu den For­mat­en Real Audio, MS-Audio (nicht zu ver­wech­seln mit der MS-Stereo-Kodierung), Sound VQ und ATRAC kön­nen in dieser Hin­sicht lei­der keine Angaben gemacht wer­den, da dies pro­pri­etäre For­mate sind und Infor­ma­tio­nen darüber deshalb zahlen­den Fir­men vor­be­hal­ten sind. Die For­mate MPEGAAC und Dol­by AC-3 sehen des weit­eren auch mehr als nur zwei Audiokanäle vor.

  • Radio-TV / ADR / DAB:
    • MPEG 2 Lay­er 2

     

  • Film / DVD / DF1:
    • MPEG 2 Lay­er 2
    • MPEGAAC, bis zu 48 Audiokanäle
    • Dol­by AC-3 (Dol­by Dig­i­tal), die Bedeu­tung der Kanäle find­et sich in Abbil­dung 4
        
      Abbil­dung: Aufteilung der Kanäle bei Dol­by Dig­i­tal (Heimki­no)
      Surround

       

     

  • Inter­net:
    • MPEG 1 (Lay­er 1 – 3)
    • Real Audio
    • MS-Audio (WMA)
    • Sound VQ (VQF)

     

  • Stereoan­lage
    • Sony Mini­disc (ATRAC)
    • Dig­i­tal Com­pact Casette (DCC): MPEG 1 Lay­er 2 (192kbits/s)

5. Kom­pres­sion­srat­en

5.1 Erre­ich­bare Werte

Im fol­gen­den sind die erre­ich­baren Werte für ver­schiedene MPEG-Formate aufge­lis­tet (MPEG 2 erlaubt Lay­er 1 – 3 und AAC als Kom­pres­sionsver­fahren, MPEG 1 lediglich Lay­er 1 – 3). Die Tabellen sind fol­gen­der­massen zu lesen:

Bei MPEG 1 sind 32, 44.1 und 48 kHz als Sam­plingfre­quenz erlaubt. Die höch­ste Kom­pres­sion­srate ist bei 32 kbits pro Sekunde erziel­bar (niedrig­ste Audio­qual­ität). Wird Lay­er 3-Kodierung ver­wen­det, wird die niedrig­ste Kom­pres­sion­srate bei 320 kbits pro Sekunde erre­icht (höch­ste Audio­qual­ität). Das Delay bei der Dekodierung ist hier­bei min­destens 59 ms, typ­isch jedoch ca. 150 ms. Um bei ein­er Über­tra­gung CD-Qualität mit Lay­er 3 zu erre­ichen, muss das Audiosig­nal mit 128 kbits pro Sekunde enkodet sein. Man erzielt hier­bei keine Kom­pres­sion­srate von 1:12.

Die Angaben bezüglich der CD-Qualität sind lediglich Richtwerte, da dies sehr stark vom ver­wen­de­ten Audiosig­nal und der Sen­si­tiv­ität des Zuhör­ers abhängt (näheres dazu in Kapi­tel 6).

Wird anstatt ein­er kon­stan­ten Bitrate (best­mögliche Qual­ität bei gegeben­er Kom­pres­sion­srate, zur Über­tra­gung der Audio­dat­en in Echtzeit gedacht) vari­able Bitrate (abgekürzt VBR, best­mögliche Kom­pres­sion bei gegeben­er Qual­ität, zur reinen Archivierung von Audio­dat­en gedacht) ver­wen­det, kann natür­lich keine Aus­sage über die resul­tierende Dateigrösse gemacht wer­den, da immer jew­eils pro Paket (siehe Kapi­tel 3.1) ver­sucht wird eine opti­male Bitrate zu bes­tim­men.

MPEG Fre­quenz (kHz) min. kbits/sec
1 32, 44.1, 48 32
2 16, 22.05, 24 8
2 AAC 8 – 96  
Lay­er kbits/sec delay (ms) CD-Qualität (kbits/sec)
1 -448 19 (<50) 384 (1:4)
2 -384 35 (100) 192 (1:8)
3 -320 59 (150) 128 (1:12)
AAC: ~1,4 * Kom­pres­sion­srate Lay­er 3
AC-3: 32 – 640 kbit/sec

5.2 Konkrete Zahlen bei MP3

In fol­gen­den Tabellen wer­den anhand von Musik­stück­en aus ver­schiede­nen Stil­rich­tun­gen konkrete Zahlen für Enkodezeit und resul­tierende Dateigrösse angegeben. Als For­mat wurde das ver­bre­it­ete MPEG 1 Lay­er 3 (MP3) For­mat gewählt. Ermit­telt wur­den die Zahlen auf einem Intel Celeron Prozes­sor mit 400 MHz unter dem Betrieb­ssys­tem FreeB­SD 4.0-cur­rent1. Als Enkoder kam hier­bei der freie LAME2 in der Ver­sion 3.55beta zum Ein­satz, da dieser qual­i­ta­tiv sehr nahe an den kom­merziellen Enkoder des Fraun­hofer Insti­tuts für inte­gri­erte Schal­tun­gen3 her­an reicht. Kom­piliert wurde er mit dem EGCS in der Ver­sion 2.91.66 und den Kom­pilier­pa­ra­me­tern “-Os -march=pentiumpro -ffast-math -funroll-loops -fschedule-insns2”.

Lied / Artist bekan­nt aus/von Spielzeit Orig­i­nal­grösse
Bohemi­an Rhap­sody
Queen
Wayne’s World 5:48 60,3 MB
Feed My Franken­stein
Alice Coop­er
Wayne’s World 4:46 48,2 MB
Musik Is The Key
Dr. Motte and West­bam
Lovepa­rade ’99
(Berlin)
3:35 36,3 MB
Auf der schö­nen blauen Donau
Strauss Jr.
2001
Elite
10:06 102,1 MB
Jäger des ver­lore­nen Schatzes Indi­ana Jones 5:14 53,0 MB

Die Prozentzahlen in den Klam­mern der fol­gen­den Tabelle geben an, auf wieviel Prozent der Orig­i­nal­grösse herun­terkom­prim­iert wurde, die Zei­tangaben geben an, wieviel Rechen­zeit der Enkoder gebraucht hat. Die Angaben mit dem Prä­fix “VBR-” sind Angaben bezüglich der vari­ablen Bitrat­en Kodierung, die mit dem Prä­fix “128k-” bezüglich der Kodierung mit der fes­ten Bitrate von 128 kbits pro Sekunde.

VBR-Zeit VBR-Grösse 128k-Zeit 128k-Grösse
6:52 6,5 MB (10,7%) 2:58 5,5 MB (9%)
5:40 5,6 MB (11,6%) 2:39 4,4 MB (“)
4:12 4,2 MB (11,5%) 1:57 3,3 MB (“)
10:10 9,9 MB (9,6%) 4:50 9,3 MB (“)
5:27 5,2 MB (10%) 2:42 4,8 MB (“)

Aus der Tabelle ist ersichtlich, dass bere­its mit für heutige Ver­hält­nisse rel­a­tiv mod­er­ater Hard­wareausstat­tung die Erzeu­gung von MP3-Streams mit fes­ter Bitrate in Echtzeit möglich ist.

Das fol­gende Pik­togramm zeigt die Verteilung der ver­wen­de­ten Bitrat­en inner­halb eines Musik­stück­es im VBR-Fall. Da die Kur­ven zur über­sichtlicheren Präsen­ta­tion einzeln skaliert sind, ist ein Ver­gle­ich der einzel­nen Kur­ven untere­inan­der nicht möglich.

  
Abbil­dung: His­togramm der vari­ablen Bitrat­en
Histogramm

Wie man sieht kom­men bei der VBR-Kodierung über­wiegend Bitrat­en über 128 kbit pro Sekunde zum Ein­satz. Das bedeutet, dass bei ein­er fes­ten Bitrate von 128 kbit pro Sekunde ein Qual­itätsver­lusst in kauf genom­men wer­den muss (siehe dazu auch das fol­gende Kapi­tel). Des weit­eren hat die VBR den Vorteil, dass bei gegeben­er Qual­ität nicht unnötig Spe­icher­platz ver­schwen­det wird (im Gegen­satz z.B. zur Kodierung mit mit ein­er fes­ten Bitrate von 160 oder 192 kbit pro Sekunde).


6. Qual­itätsver­gle­ich

Bei einem Qual­itätsver­gle­ich zwis­chen orig­i­nalem und datenre­duziertem Sig­nal ist darauf zu acht­en, dass die Qual­ität vom ver­wen­de­ten Enkoder, dem Musik­stück, der Bitrate und der Test­per­son die den Qual­itätsver­gle­ich macht (jede Per­son hört anders) abhängig ist. Da z.B. der MPEG Stan­dard nicht vorschreibt wie die Dat­en enkodet wer­den sollen, son­dern nur wie die Dat­en nach dem enko­den auszuse­hen haben damit sie dekod­ed wer­den kön­nen, kann jed­er Her­steller eines Enkoders eigene Ver­fahren (eigene psycho-akustische Mod­elle) benutzen. Dadurch ist jed­er Enkoder einzi­gar­tig und pro­duziert eine andere MPEG-Datei, die dadurch auch anders klin­gen kann (es gibt bis jet­zt kein all­ge­mein anerkan­ntes psycho-akustisches Mod­ell). Dies bedeutet auch, dass ein Enkoder z.B. bess­er für klas­sis­che Musik­stücke geeignet sein kann während ein ander­er bess­er für Pop­musik geeignet ist. Je nach Know-How eines Her­stellers kann es auch sein, dass ein Enkoder zwar bei hohen Bitrat­en sehr gut ist, bei niedri­gen Bitrat­en jedoch schlecht abschnei­det (und umgekehrt). Dies bedeutet auch, dass der Enkoder eines Her­stellers bei 128 kbits pro Sekunde CD-Qualität liefern kann, während der Enkoder eines Konkur­renten dazu nicht in der Lage ist.

Da ein Com­put­er voller hochfre­quenter “Störstrahlung” ist, sollte man auch darauf acht­en, dass Hörtests nicht über den nor­malen Audioaus­gang ein­er Sound­karte gemacht wer­den. Ein besser­er Ansatz ist die Ver­wen­dung eines dig­i­tal­en Aus­gangs und eines exter­nen D/A-Wandlers an der Stereoan­lage (welche auch keine Mini/Micro-Kompaktanlage sein sollte, da diese nicht das volle Klang­po­ten­tial auss­chöpfen kann). Falls diese dig­i­tale Möglichkeit nicht gegeben ist, kann man auch das enkodete Musik­stück wieder dekodieren, es auf eine CD bren­nen und diese dann für die Hörtests benutzen.

Um zu objek­tiv­en Ergeb­nis­sen bei einem Qual­itätsver­gle­ich zu gelan­gen, wurde der “triple stim­u­lus, hid­den ref­er­ence”, oder auch ABC-Blindtest entwick­elt. Hier­bei hört die Test­per­son als Sig­nal A immer das Orig­i­nal und als Sig­nal B und C im zufäl­li­gen Wech­sel das orig­i­nale und das datenre­duzierte Sig­nal. Die Sig­nale B und C sind von der Test­per­son dann auf ein­er Skala von 1 bis 5 zu bew­erten, die 5 ist dabei zu ver­wen­den wenn kein Unter­schied zum Orig­i­nal festzustellen ist, die 1 wenn der Unter­schied beson­ders deut­lich ist.


7. Faz­it

Der momen­tane Stand der Tech­nik erlaubt schon eine aus­giebige Datenre­duzierung, ist jedoch noch nicht soweit, dass z.B. Audio on Demand flächen­deck­end in CD-Qualität ange­boten wer­den kann. Des weit­eren sind auch noch weit­ere Qual­itätsverbesserun­gen an den Enkodern möglich. Da es jedoch kein Gerät gibt welch­es zur Qual­itätsmes­sung benutzt wer­den kann und deshalb aus­giebige Hörtest mit Test­per­so­n­en gemacht wer­den müssen, sind diese Qual­itätsverbesserun­gen jedoch sehr zeitaufwendig und kost­spielig.


Lit­er­atur

1
Matthias Carstens; Report Audiokom­pres­sion; c’t 1998, Heft 21, Seite 242ff

2Web­seite des LAME Enkoders; http://www.sulaco.org/mp3/

3Davis Pan; A Tuto­r­i­al on MPEG/Audio Com­pres­sion; IEEE Mul­ti­me­dia Jour­nal, Sum­mer 1995 issue4Web­seite des Fraun­hofer Insti­tuts für inte­gri­erte Schal­tun­gen; http://www.iis.fhg.de/5MPEG Audio Web­seite; http://www.tnt.uni-hannover.de/project/mpeg/audio/


Fuss­noten

… 4.0-current1
FreeB­SD Web­seite http://www.freebsd.org, ein freies UNIX-artiges Betrieb­ssys­tem.
Wie Lin­ux kann man es kosten­los aus dem Inter­net beziehen.
LAME2
LAME Web­seite http://www.sulaco.org/mp3/
… Schal­tun­gen3
Das Fraun­hofer Insti­tut für inte­gri­erte Schal­tun­gen war mass­ge­blich an der Entwick­lung des MPEG 1 Audio­for­mates beteiligt. Der Enkoder des Fraun­hofer Insti­tuts gilt als Qual­ität­sref­erenz.