7
edits
Changes
→Visualization
[[Image:fox2.jpg]]
== Source Code ==
import ddf.minim.*;
import ddf.minim.analysis.*;
import ddf.minim.signals.*;
Minim minim;
AudioInput in;
FFT fft;
float loudestFreqAmp = 5;
float loudestFreq = 5;
int timerCounter = 5;
void setup()
{
size(550, 770);
frameRate(30);
minim = new Minim(this);
minim.debugOn();
background(loadImage("mfox.jpg"));
noStroke();
in = minim.getLineIn(Minim.STEREO, 1024);
fft = new FFT(in.bufferSize(), in.sampleRate());
}
void draw()
{
fft.window(FFT.HAMMING);
for(int i = 0; i < fft.specSize(); i++)
{
if (fft.getBand(i) > loudestFreqAmp && fft.getBand(i) > 10)
{
loudestFreqAmp = fft.getBand(i);
loudestFreq = i * 4;
fill(loudestFreq * 10, 255 - loudestFreq, loudestFreq * 20, 128 );
if(loudestFreq < 25)
{
stroke(0,0,0,250);
strokeWeight(7);
ellipse(mouseX,mouseY,5,5);
}
timerCounter = 0;
}
}
loudestFreqAmp = 0;
fft.forward(in.mix);
timerCounter++;
if (keyPressed){
setup();
}
}
void stop()
{
in.close();
minim.stop();
super.stop();
}