Übungsaufgaben zur Verarbeitung von Audiodaten


Aufgabe 1: Audiodateien abspielen

Aufgabe 2: Audioplayer verbessern

Bis jetzt ist der Audioplayer nur in der Lage, Audiodateien abzuspielen. Jetzt sollen seine Möglichkeiten dahingehend erweitert werden, dass zusätzlich noch die Lautstärke geregelt und eine beliebige Position in der laufenden Audiodatei angesprungen werden kann.

Erweitern Sie den Audioplayer deswegen um zwei Schieberegler, wie in den Abb. 2 und 3 unten dargestellt.

Schieberegler sind Objekte der Klasse JSlider. Lesen Sie hierzu bitte den Abschnitt How to Use Sliders im Java-Tutorial.

Aufgabe 3: Sounds generieren und visualisieren

Neben der Möglichkeit, Audiodateien abzuspielen, bietet Processing auch vielfältige Möglichkeiten, Sounds zu generieren, zu filtern und zu visualisieren.

Probieren Sie dies aus, indem Sie das Beispiel auf der Dokumentationsseite zur Klasse UGen von Minim als Sketch implementieren. Die Steuerung der Anwendung geschieht über die Tastatur und mit Hilfe der Maus. Mit der Tastatur können Sie die Wellenform auswählen (Sinus, Rechteck usw.). Mit der Maus die Frequenz und Lautstärke der erzeugten Welle ändern. Die generierte Welle wird dabei im Grafikfenster von Processing visualisiert und gleichzeitig als Tonsignal hörbar gemacht.

Abb. 4: Visualisierung und Tonsignal einer Sinuswelle

Minim arbeitet mit einem allgemeineren Ansatz hinsichtlich der erzeugten Wellenformen. Im Vergleich zur Sound-Library können hier beliebige Wellenformen konstruiert werden. Die Basiswellen Sinus etc. sind nur Spezialfälle, für die vorgefertigte Wellenformen existieren, was sich an dem Code für die Wahl der Wellenform ablesen lässt:

void keyPressed()
{ 
  switch( key )
  {
    case '1': 
      wave.setWaveform( Waves.SINE );
      break;
     
    case '2':
      wave.setWaveform( Waves.TRIANGLE );
            break;

    // usw.

Aufgabe 4: Frequenzbereich visualisieren

Ändern Sie das Beispiel aus der vorherigen Aufgabe so ab, dass nun nicht mehr die generierte Welle, sondern der Frequenzbereich des Tonsignals mit Hilfe der FFT dargestellt wird:

Abb. 5: Frequenzbereich des Tonsignals

Wenn ihre Lösung korrekt funktioniert, erhalten sie einen Frequenzbereich, bei dem das Maximum nach rechts oder links wandert, je nachdem, welche Frequenz des Tonsignals mit der Maus gewählt wird.