TU Chemmnitz

Universitätsrechenzentrum

TU Chemnitz > URZ > Lehre > Mmn > Scripte > Audio


Übung: Audio


Aufgabe 1:

Veranschaulichen Sie rechnerisch oder grafisch das Ergebnis, wenn ein Signal mit 8/7 der Originalfrequenz abgetastet wird.

Hinweis: Das folgende Gnuplot-Beispiel kann als Lösungsansatz dienen.
#
# Gnuplot-Beispiel für eine Sinuskurve
#
# setze den Wertebereich der x-Achse
set xrange [ 0:10*2*pi ]

# vertikale Marken (Abtastschritte)
set xtics 0,(2*pi*?)
set grid xtics

plot sin(x)
pause -1 "Weiter: Enter druecken!"

Lösung 1:

grafische Darstellung Nyquist-Theorem
Gnuplot-Quelle anzeigen

Aufgabe 2:

Wieviel Speicherplatz wird benötigt, um ein Telefongespräch von 3min 18s im PCM-Format (G.711) aufzuzeichnen?

Lösung 2:

3:18 min = 198 s
198 s * 8000 Samples/s * 8 bit/Sample = 12672000 bit = 1584000 byte
1584000 byte / 1024 = 1547 kbyte

Aufgabe 3:

Berechnen Sie, wieviele GSM-Frames für ein Gespräch über 1min 40s übertragen werden müssen.
Überprüfen Sie die Rechnung am praktischen Versuch. Als GSM-Coder wird die Software sox empfohlen. Ein 1min 40s langes Audiofile können Sie mit dem Werkzeug cdparanoia von einer Audio-CD erzeugen.
Hinweis: Beachten Sie das Inputformat und überprüfen Sie das GSM-kodierte Resultat. Informieren Sie sich im Manual von sox über Konvertierungsmöglichkeiten.
#
# cdparanoia
#
/usr/bin/cdparanoia "1[0:00]-1[1:40]" /tmp/myfile.wav
#
# temporäre Audiofiles sollten Sie unter /tmp/ ablegen
#

Lösung 3:

1:40 min = 100 s
1 GSM-Frame = 20 ms
100 s / 20 ms = 5000 GSM-Frames
5000 GSM-Frames * 264 bit/GSM-Frames / 8 bit = 165000 byte
# Konvertiere Audio-CD in Eingangsformat für GSM-Coder
sox -r 44100 -s -w -c 2 /tmp/myfile.wav -r 8000 -s -w -c 1 /tmp/myfile_8000_mono.wav

# Konvertierung in GSM-Format
sox -r 8000 -s -w -c 1 /tmp/myfile_8000_mono.wav /tmp/myfile.gsm

# ls -l /tmp/myfile*
-rw-r--r--    1 anhe     urz      17642396 Nov  6 10:08 /tmp/myfile.wav
-rw-r--r--    1 anhe     urz       1600258 Nov  6 10:09 /tmp/myfile_8000_mono.wav
-rw-r--r--    1 anhe     urz        165033 Nov  6 10:09 /tmp/myfile.gsm

Aufgabe 4:

In wieviel Frames wird ein 8469596 byte grosses, von einer Audio-CD geripptes File zerlegt, wenn es als MPEG-1/Layer 3 kodiert wird?
Überprüfen Sie die Lösung an einem praktischen Beispiel. Stellen Sie eine Bitrate von 128 kbps ein.
Hinweis: Als mp3-Coder können Sie /usr/bin/lame verwenden.

Lösung 4:

8469596 byte / 2 Kanäle / ( 16 bit / 8 byte) = 2117399 Samples
1 MP3-Frame = 1152 Samples
2117399 Samples / 1152 Samples/MP3-Frame = 1838.02
1839 MP3-Frames 8469596 byte / 2 Kanäle / 44100 Samples/s / ( 16 bit / 8 byte) = 48 s
# 48 s CD-Audio aufzeichnen
/usr/bin/cdparanoia "1[0:00]-1[0:48]" /tmp/myfile.wav

# Konvertieren in mp3 
/usr/bin/lame /tmp/myfile.wav /tmp/myfile.mp3

# ls -l /tmp/myfile*
-rw-r--r--    1 anhe     urz       8469596 Nov  6 10:33 /tmp/myfile.wav
-rw-r--r--    1 anhe     urz        769461 Nov  6 10:33 /tmp/myfile.mp3

Aufgabe 5:

Komprimieren Sie das unter Aufgabe 4. erstellte CD-Audio-File mit dem Vorbis-Codec und vergleichen Sie das Resultat mit dem MP3-kodierten Ergebnis!
Hinweis: Als Vorbis-Coder können Sie /usr/bin/oggenc verwenden.

Lösung 5:

# Konvertieren in ogg-vorbis
/usr/bin/oggenc /tmp/myfile.wav
 
# ls -l /tmp/myfile*
-rw-r--r--    1 anhe     urz       8469596 Nov  6 10:33 /tmp/myfile.wav
-rw-r--r--    1 anhe     urz        769461 Nov  6 10:33 /tmp/myfile.mp3
-rw-r--r--    1 anhe     urz        676930 Nov  6 10:36 /tmp/myfile.ogg

(Haus)Aufgabe 6:

Vergleichen Sie die verschiedenen Hörproben! Für die Wiedergaben können Sie /usr/bin/play

Andreas Heik
25. November 2003
Technische Universität Chemnitz, Straße der Nationen 62, 09107 Chemnitz
Impressum - Copyright © 2005 by TU Chemnitz, URZ, alle Rechte vorbehalten.
Druckansicht