Scream mönster (plagget snedvrida av scream) (3 / 5 steg)
Steg 3: Ändra mönstret rita med ett ljud (bearbetning kod)
Här är koden för bearbetning att snedvrida mönster med ett ljud från datorns mikrofon. Du kan prova olika ljud för att få vad du vill, vi använde Janet Leigh scream i Hitchcocks 1960 film Psycho, när hon mördas i sin dusch.
< p > Importera ddf.minim.analysis.*; < br > import ddf.minim.*; < /p >< p > Minim minim;
AudioInput i;
AudioRecorder recorder;
FFT fft;
int z = 0; < /p >< p > void setup()
{
size(1280, 800);
Minim = nya Minim(this);
i = minim.getLineIn();
FFT = nya FFT (in.bufferSize(), in.sampleRate());
frameRate(120); < /p >< p >}
void draw()
{< /p >< p > background(#FFFFFF);
stroke(#000000);
fyllning (255, 255, 255, 154);
FFT.Forward (in.mix); < /p >< p > för (int jag = 0; jag < 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
flyta en = random(5);
flyta b = random (5).
flyta c = random(5);
flyta d = random (5).
flyta e = random(5);
flyta f = random (5).
flyta g = random(5);
flyta h = random (5).
flyta j = random(5);
flyta 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
flyta l = random(5);
flyta m = random (5).
flyta n = random(5);
flyta o = random (5).
flyta p = random(5);
flyta q = random (5).
flyta r = random(5);
flyta s = random (5).
flyta t = random(5);
flyta 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));
}
om (keyPressed == true) {
Save(z+"Dessin.jpg");
z ++;
Delay(100);
}
} < /p >