Versuch: "Umsetzen von ASCII in WAV" im Labor "Hardwarenahe Programmierung" (G209)
Aufgabenstellung
===========
1. Erstellen Sie ein Programm, das eine ASCII-Datei, die Noten enthält,
in eine WAV-Datei umwandelt. Diese soll dann (über Lautsprecher) ausgegeben
werden. Aufbau der ASCII-Datei:
-
c - Note (c,d,e,f,g,a,h)
-
#,b - Halbton höher oder tiefer
-
n - Oktave (4=mittlere Oktave)
-
l - Notenlänge (w=1/1, y=1/2, q=1/4, r=1/8, s=1/16, t=1/32, x=1/64)
-
. - Länge 50% mehr
(Angaben für eine Note, Noten durch Space getrennt; alle Angaben bis
auf Note optional; sehen Sie auch ein Pausenzeichen vor.) Geben Sie eine
Melodie als ASCII-Datei ein und spielen Sie diese ab. Benutzen Sie z.B.
für die Tonerzeugung die Formel Wert=Amplitude*sin(2*pi*Index*Tonfrequenz/ganzenote)
(Index bei einer ganzen Note: 1 .. 22050 bei Samplefrequenz 22050). Experimentieren
Sie mit der Amplitude (z.B. Parabel).
2. Ergänzen Sie das Programm so, dass die Noten über die Tastatur eingegeben werden können (Art elektronisches Klavier)
Alternative: Schreiben Sie ein Programm, das MIDI in WAV-Dateien umwandelt.
Kolloquium
=======
1. Erklären Sie den Aufbau von WAV-Dateien.
2. Erläutern Sie die verwendeten Formeln.
3. Erklären Sie Dateiformate für die Speicherung von Musikdaten
wie MIDI und MP3.
Literatur:
http://www.technology.niagarac.on.ca/courses/comp630/WavFileFormat.html
http://i31www.ira.uka.de/docs/semin94/08_AIFF_SND_MPEG/main_html.html
http://www.powerweb.de/phade/diplom/schlagwo.htm#w
http://wotsit.org/search.asp?page=5&s=music
http://www.informatik.uni-mannheim.de/informatik/pi4/projects/MoCA/downloads/AULIB++/devdoc/WaveFile.html
http://homepages.fh-giessen.de/~hg10013/Lehre/MMS/SS01_WS0102/Audioformate
http://ccrma-www.stanford.edu/CCRMA/Courses/422/projects
http://www.klavierstimmen.at/theorie.html
|