Files
processing4/java/libraries/video/examples/Movie/Pixelate/Pixelate.pde
T
2011-06-18 16:27:28 +00:00

51 lines
1.1 KiB
Plaintext

/**
* Pixelate
* by Hernando Barragan.
* Built-in video library replaced with gsvideo by Andres Colubri
*
* Load a QuickTime file and display the video signal
* using rectangles as pixels by reading the values stored
* in the current video frame pixels array.
*/
import codeanticode.gsvideo.*;
int numPixels;
int blockSize = 10;
GSMovie myMovie;
color myMovieColors[];
void setup() {
size(640, 480);
noStroke();
background(0);
myMovie = new GSMovie(this, "station.mov");
myMovie.loop();
numPixels = width / blockSize;
myMovieColors = new color[numPixels * numPixels];
}
// Read new values from movie
void movieEvent(GSMovie m) {
m.read();
m.loadPixels();
for (int j = 0; j < numPixels; j++) {
for (int i = 0; i < numPixels; i++) {
myMovieColors[j*numPixels + i] = m.get(i, j);
}
}
}
// Display values from movie
void draw() {
for (int j = 0; j < numPixels; j++) {
for (int i = 0; i < numPixels; i++) {
fill(myMovieColors[j*numPixels + i]);
rect(i*blockSize, j*blockSize, blockSize-1, blockSize-1);
}
}
}