Hi. I'm doing a sort of marker system with colors. So i assign a video to a color got from camera, If i press '0' when my webcam see a color the program plays the corrisponding video. My problem is: if I change the color, video changes too, but sound remains. Should I divide audio files from video files, or there is another way?
Ps. Sry for my english :p
import processing.video.*; Movie[] Parte = new Movie[5];
int xStart; int yStart; Capture cam; float threshold = 10; // soglia
color red, yellow, green, blue;
void setup() { size(640, 480); tint(255, 20); Parte[1] = new Movie(this, "Parte1.mp4"); Parte[2] = new Movie(this, "Parte2.mp4"); Parte[3] = new Movie(this, "Parte3.mp4"); Parte[4] = new Movie(this, "Parte4.mp4");
boolean matchColors(color c1, color c2) //sottrae c1 (c1 è il colore che noi abbiamo definito in partenza con il get color. metto un foglio rosso davanti allo schermo //faccio getcolor, e definisco quel colore come rosso) a c2 ( la seconda volta che passo il foglio il computer memorizza c2 e verifica se il foglio è rosso mi dirà che è rosso true, sennò fause) { float diffRed = abs(red(c1) - red(c2)); float diffGreen = abs(green(c1) - green(c2)); float diffBlue = abs(blue(c1) - blue(c2));
if (diffRed < threshold && diffGreen < threshold && diffBlue < threshold) // se la differenza è minore della soglia, considera come se fosse lo stesso colore //se invece anche solo 1 dei 3 colori è maggiore della soglia, lo considera un colore diverso return true; else return false; }
color getColor() { color current; int totalRed = 0; int totalGreen = 0; int totalBlue = 0; int pixelCount = 0;
loadPixels();
for (int x = 1; x < 201; x++) { for (int y = 1; y < 201; y++) { current = pixels[xStart + x + (yStart + y) * width];