Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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
languagejava
titleBeisiel Lautstärke
collapsetrue
//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
languagejava
titleBeispiel Wellenform
collapsetrue
//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 );
  }
}

...