Stap 3: Wijzig het patroon tekenen met een geluid (verwerking code)
Hier is de code van de verwerking te vervalsen het patroon met een geluid van de microfoon van de computer. U kunt verschillende geluiden om te krijgen wat je wilt proberen, gebruikten we Janet Leigh scream in film uit 1960 Hitchcocks Psycho, wanneer ze wordt vermoord in haar douche.
<p>import ddf.minim.analysis.*;<br>import ddf.minim.*;</p><p>Minim minim; AudioInput in; AudioRecorder recorder; FFT fft; int z=0;</p><p>void setup() { size(1280, 800); minim = new Minim(this); in = minim.getLineIn(); fft = new FFT( in.bufferSize(), in.sampleRate() ); //frameRate(120);</p><p>} void draw() {</p><p> background(#FFFFFF); stroke(#000000); fill(255, 255, 255, 154); fft.forward( in.mix );</p><p> for (int i = 0; i < fft.specSize (); i++) {</p><p>//manche quad(200-(fft.getBand(i)*random(5)),320-(fft.getBand(i)*random(5)), 370+(fft.getBand(i)*random(5)),320-(fft.getBand(i)*random(5)),370+(fft.getBand(i)*random(5)), 500+(fft.getBand(i)*random(5)),200- (fft.getBand(i)*random(5)), 500+(fft.getBand(i)*random(5)) ); //dos float a = random(5); float b = random (5); float c = random(5); float d = random (5); float e = random(5); float f = random (5); float g = random(5); float h = random (5); float j = random(5); float k = random (5); //dos1 line(600-(fft.getBand(i)*j),220-(fft.getBand(i)*k),630-(fft.getBand(i)*a),200-(fft.getBand(i)*b)); //dos2 line(630-(fft.getBand(i)*a),200-(fft.getBand(i)*b),750+(fft.getBand(i)*c),200-(fft.getBand(i)*d)); //dos3 line(750+(fft.getBand(i)*c),200-(fft.getBand(i)*d),750+(fft.getBand(i)*e),600+(fft.getBand(i)*f)); //dos4 line(750+(fft.getBand(i)*e),600+(fft.getBand(i)*f),600-(fft.getBand(i)*g),600+(fft.getBand(i)*h)); //dos5 line(600-(fft.getBand(i)*g),600+(fft.getBand(i)*h),600-(fft.getBand(i)*j),220-(fft.getBand(i)*k)); //devant //devant1 float l = random(5); float m = random (5); float n = random(5); float o = random (5); float p = random(5); float q = random (5); float r = random(5); float s = random (5); float t = random(5); float u = random (5); //devant1 line(900-(fft.getBand(i)*l),560-(fft.getBand(i)*m),1020-(fft.getBand(i)*n),200-(fft.getBand(i)*o)); //devant2 line(1020-(fft.getBand(i)*n),200-(fft.getBand(i)*o),1120+(fft.getBand(i)*p),200-(fft.getBand(i)*q)); //devant3 line(1120+(fft.getBand(i)*p),200-(fft.getBand(i)*q),1120+(fft.getBand(i)*r),600+(fft.getBand(i)*s)); //devant4 line(1120+(fft.getBand(i)*r),600+(fft.getBand(i)*s),900-(fft.getBand(i)*t),600+(fft.getBand(i)*u)); //devant5 line(900-(fft.getBand(i)*t),600+(fft.getBand(i)*u),900-(fft.getBand(i)*l),560-(fft.getBand(i)*m)); } if (keyPressed == true) { save(z+"dessin.jpg"); z++; delay(100); } }</p>