Aus einem Processing Sketch ein Video machen

Manchmal möchte man seine Processing Animation als Video weiterverwenden, um es beispielsweise bei Vimeo oder Youtube hochladen zu können. Dazu sollte man sein Processing programm folgendermaßen aufbauen:

boolean capture = false;
long frameCounter = 0;

void setup() {
  size(1280, 720, P2D);
  frameRate(30);
}

void draw() {
  //draw your stuff here

  if(capture) {
    saveFrame("screen-" + nf(frameCounter,6) + ".tif");
    frameCounter++;
  }
}

void keyPressed() {
  if(key == ' '){
    if(capture) {
      capture = false;
    } else {
      capture = true;
    }
  }
}

Jetzt kann man seinen Processsing Sketch starten. Mit der Leertaste kann man nun seine Aufnahme beginnen. Vorsicht: Das kann ziemlich hohe Last für die Festplatte bedeuten. Falls die nicht hinterherkommt, einfach die FrameRate auf einen kleineren Wert setzen. Ist man mit dem Capturen fertig, wechselt man in den Ordner des Sketches und kann mit

ffmpeg -f image2 -i screen-%06d.tif -b 5000000 -r 25 -s hd720 -vcodec mpeg4 -f mp4 -an -threads 2 shuffle.mp4

ein Video erzeugen. Die ffmpeg Einstellungen sind hier auf Vimeo abgestimmt und müssen ggf. an deine Auflösung/Codec/Bitrate/Computer angepasst werden.