
// Example by Krister Olsson
import krister.Ess.*;
AudioChannel myChannel;
FFT myFFT;
void setup() {
size(256,200);
// start up Ess
Ess.start(this);
// load "cell.aif" into a new AudioChannel
myChannel=new AudioChannel("guitar.aif");
// we want 256 frequency bands, so we pass 512
myFFT=new FFT(512);
// start the sound looping forever
myChannel.play(Ess.FOREVER);
background(0,0,0);
}
void draw() {
//background(0,0,255);
fill(0,0,0,5);
noStroke();
rect(0,0,width, height);
// get our spectrum
myFFT.getSpectrum(myChannel);
// draw our frequency bars
for (int i=0; i < 32; i++) {
float val = (height/2) - myFFT.spectrum[i]*512;
float val2 = (height/2) + myFFT.spectrum[i]*512;
stroke(i*8, 255- val, val*2, 100);
strokeWeight(1);
noFill();
ellipse(i*8,val, myFFT.spectrum[i]*512*2, val/10);
ellipse(i*8,val2, myFFT.spectrum[i]*512*2, val2/10);
}
}
// we are done, clean up Ess
public void stop() {
Ess.stop();
super.stop();
}
No hay comentarios:
Publicar un comentario