Lautstärke
...
Minim Library
Die Minim Library ermöglicht die Integration von Sound in Processing. Uns interessiert vor allem die Möglichkeit, Klang als Eingabemodalität zu verwenden. Dazu sind vor allem vier Methoden sehr hilfreich. Für diese Methoden werden im Folgenden Beispiele gegeben.
Lautstärke
Über die Lautstärke haben wir die einfachste Methode festzustellen, wie viel (klangliche) Aktivität in einer Umgebung herrscht. Die Werte, welche uns durch die Minim Library mit der Funktion obj.left.level() bzw. obj.right.level() zurückgegeben werden ist dabei proportional zur Lautstärke und im Bereich zwischen 0 und 1.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
//Spatial Interaction //ZHdK, Interaction Design //iad.zhdk.ch //Beispiel 01: Volume import ddf.minim.*; Minim minim; AudioInput in; float amountOfNoise = 0; void setup() { size(512, 200, P3D); minim = new Minim(this); //Open the audio input in = minim.getLineIn(); } void draw() { background(amountOfNoise); stroke(255); rect( 0, 0, in.left.level()*width, 100 ); rect( 0, 100, in.right.level()*width, 100 ); if(in.left.level() > 0.2 || in.right.level() > 0.2) { amountOfNoise++; } else if(amountOfNoise > 0) { amountOfNoise--; } text(amountOfNoise, 20, 20); } |
Wellenform
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
//Spatial Interaction //ZHdK, Interaction Design //iad.zhdk.ch //Beispiel 02: Waveform import ddf.minim.*; Minim minim; AudioInput in; void setup() { size(640, 480, P3D); minim = new Minim(this); //Open the audio input in = minim.getLineIn(); } void draw() { background(0); for(int i = 0; i < in.bufferSize() - 1; i++) { stroke(0,0,255); line( i, 200, i, 200 - in.left.get(i+1)*50 ); stroke(255,0,0); line( i, 280, i, 280 + in.right.get(i+1)*50 ); } } |
...