sebkrause.de – willkommen!
Lexikon * Aktuelles * FAQ * Ich * Kontakt * Impressum * * english
Nerd-Lexikon für Nicht-Nerds: Begriffe aus diversen Fachgebieten, für Nichtfachmänner verständlich erläutert. Über das Lexikon: Über das Lexikon.
<< Keyserver ... Index ... Kompression (Grafik) >>
KOMPRESSION (AUDIO)
(Kategorie: Computer)

Hier wird versucht zu erklären, wie Audiosignale (also Töne, Musik usw...) in Dateien gespeichert werden. Empfohlen werden im Vorfeld die Artikel Kompression und Kompression (Grafik). Im Anschluss wird noch auf die eigentliche Kompression eingegangen: MP3, OGG, FLAC usw...

Wie werden Töne in Dateien gespeichert? Nun, um das zu erklären, ist es zunächst sinnvoll zu betrachten, was passiert, wenn Sie z.B. ein Mikrofon an den Rechner anschließen und hineinsprechen. Was tut der Computer?

Im Mikrofon befindet sich eine Membran, die anfängt zu schwingen, wenn sie von Schallwellen getroffen wird - und diese Schwingungen werden im Mikrofon in elektrische Schwankungen umgewandelt, die durch das Kabel laufen.

Was haben wir jetzt: Einen ununterbrochenen, aber in der Stärke schwankenden Stromfluss.

So gelangen sie in Ihre Soundkarte im Computer. Und dort wird dieses (analoge) "Stromschwankungssignal" in digitale Werte umgewandelt, und zwar so:

In der Soundkarte befindet sich ein Zeitgeber, der in jeder Sekunde z.B. 44100x das Signal an ein Messgerät gibt: Miss jetzt! Woraufhin dieses Messgerät den zu diesem Zeitpunkt anliegenden Strompegel misst und an den Rechner weitergibt. Es liefert aber nicht Werte wie "+0,5 V" oder "-0,25 V", sondern: Es nimmt den Spannungswert, der maximal anliegen darf, und teilt ihn z.B. in 65536 Stufen auf (von -32768 bis +32767). - Warum genau 65536? Weil das 2^16 ist. Das Messergebnis kann also mit 16 Bit dargestellt werden, oder: mit 2 Byte; und man nennt es: ein Sample. In diesem Fall: Ein 16-bit-Sample. Und die Zahl 44100/s (oder 44,1 kHz) in diesem Beispiel, die Häufigkeit, mit der die Werte gemessen werden, nennt sich: Samplingfrequenz.

Was haben wir jetzt: Eine Folge von Zahlen (Samples). 44100 Stück pro Sekunde, jeweils zwischen -32768 und +32767.

Diese Samples könnte man nun in eine Datei schreiben. Wie groß würde die denn? Nun, pro Sekunde kommen 44100 Werte mit je zwei Byte hinein, d.h. 88,2 kB/s. Bedenken wir noch, dass normalerweise Musik heutzutage in Stereo geliefert wird, also mit zwei Spuren, dann haben wir bereits 176,4 kB/s. Eine Minute Musik, so gespeichert, braucht also bereits 10,5 MB! Ach was, rechnen wir auch gleich noch aus, wieviel Musik, so gespeichert, auf einen CD-Rohling mit 700 MB passen würde: 66 Minuten.

Ein Dateiformat, bei dem einfach (und unkomprimiert) diese Samples drinstehen, ist das WAVE-Format (musik.wav). Und auch auf Audio-CDs befinden sich genau diese Daten: Audiosamples mit 16 Bit und 44,1 kHz sind der Standard auf Musik-CDs. Und da CDs (egal was für welche) maximal so ziemlich 700 MB enthalten können, passt auf eine Musik-CD eben eine reichliche Stunde Musik drauf...

Wie aber kriegen wir diese Datenmassen jetzt kleiner?

Eine Möglichkeit ist natürlich, überhaupt weniger Daten zu produzieren. Man könnte seltener messen, z.B. statt 44100x nur 32000x pro Sekunde. Oder noch seltener. Man kann in Mono aufnehmen, das halbiert die Dateigröße. Und man könnte statt 2^16 Schwankungsstufen (also 65536) nur 2^8 Stufen benutzen, also nur 1 Byte pro Sample. Wenn Sie es können, dann probieren Sie mal, eine beliebige Musikdatei mit diesen Werten neu abzuspeichern: 8bit, 32kHz, Mono. Und natürlich im wave-Format. - Statt 10,5 MB/min haben Sie dann nur noch etwa 2 MB/min. Aber: Es klingt scheußlich! (Solche Qualitäten wurden/werden zum Teil z.B. im Telefonnetz benutzt...)

Ein anderer Ansatz wird bei Verfahren wie MP3 gewählt. Grob vereinfacht kann man sich das so vorstellen:

Im Ergebnis sind solche Dateien im Schnitt vielleicht zehnmal kleiner als das WAV-Original - also noch kleiner als unser Telefonbeispiel oben. Aber: Sie klingen (fast) genausogut wie das Original!

Was noch zu bemerken ist:

<< Keyserver ... Index ... Kompression (Grafik) >>