BEAM ME UP

My Brain, Your Mouth

Elmgreen and Dragset

Elmgreen and Dragset

(Source: weird5cience)

import krister.Ess.*;

import processing.video.*;

int numSines = 5; // Number of oscillators to use

AudioStream myStream; // Audio stream to write into

SineWave[] myWave; // Array of sines

FadeOut myFadeOut; // Amplitude ramp function

FadeIn myFadeIn; // Amplitude ramp function

Movie pizzaz;

Movie poop;

void setup() {

  size(720,480,P2D);

  pizzaz = new Movie(this, “pizzaz3.mov”);

  poop = new Movie (this, “horsepoop.mov”);

  pizzaz.loop();

 poop.loop();

Ess.start(this); // Start Ess

  myStream = new AudioStream(); // Create a new AudioStream

  myWave = new SineWave[numSines]; // Initialize the oscillators

    for (int i = 0; i < myWave.length; i++) {

    float sinVolume = (1.0 * myWave.length) * (i + 6);

    myWave[i] = new SineWave(0, sinVolume);

  }

  myFadeOut = new FadeOut(); // Create amplitude ramp

  myFadeIn = new FadeIn(); // Create amplitude ramp

  myStream.start(); // Start audio

}

void movieEvent (Movie movie) {

  movie.read();

}

void draw() {

 image(pizzaz,0,0);

 if(mousePressed) {

  image(poop,0,0);

 }

}

void audioStreamWrite(AudioStream s) {

  myWave[0].generate(myStream); // Generate first sine, replace Stream

  myFadeOut.filter(myStream); // Fade down the audio

  for (int i = 0; i < myWave.length; i++) { // Set the frequencies

    myWave[i].frequency = round(100 );

    myWave[i].phase = 0;

  }

  myFadeIn.filter(myStream); // Fade up the audio

}