Have you looked at the the processing.movie library? http://processing.org/reference/libraries/video/index.html
This simple example loads a video and pauses it when the mouse is pressed which can be modified to the keyboard. There are also functions to change the speed of the video but I am not sure about reverse play.
This simple example loads a video and pauses it when the mouse is pressed which can be modified to the keyboard. There are also functions to change the speed of the video but I am not sure about reverse play.
import processing.video.*;
Movie myMovie;
void setup() {
size(200, 200);
background(0);
myMovie = new Movie(this, "totoro.mov");
myMovie.play();
}
void draw() {
background(255);
image(myMovie, 0, 0);
}
void movieEvent(Movie m) {
m.read();
}
// Pause the movie playback when the mouse pressed
void mousePressed() {
myMovie.pause();}