Oh sorry.. also hier einmal der Arduino Sketch, welcher LED Strips steuert. Funktioniert einwandfrei.
const int REDPIN = 3;
const int GREENPIN = 5;
const int BLUEPIN = 6;
void setup() {
pinMode(REDPIN, OUTPUT);
pinMode(GREENPIN, OUTPUT);
pinMode(BLUEPIN, OUTPUT);
}
void loop() {
//alle LEDS aus
analogWrite(REDPIN,0);
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
delay(5000); //STart dunkel
//LILA -> ohne delay
analogWrite(REDPIN,120);
analogWrite(BLUEPIN,255);
delay(800);
for(int i=170;i>=0;i-=5){ //fade out
analogWrite(REDPIN,i);
analogWrite(BLUEPIN,i);
delay(40);
}
//es ist was es ist, pause und Nächste Strophe
delay(6000);
//fade mittelblau
analogWrite(REDPIN,0); //alle LEDs aus
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
for(int i=0;i<=100;i+=5){
analogWrite(BLUEPIN,i);
analogWrite(GREENPIN,i);
delay(40);
}
delay(800);
for(int i=100;i>=0;i-=5){
analogWrite(BLUEPIN,i);
analogWrite(GREENPIN,i);
delay(40);
}
// zwischen den Versen 3sec
delay(4000);
//strobo rot
analogWrite(REDPIN,0);
analogWrite(BLUEPIN,0);
analogWrite(GREENPIN,0);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
delay(50);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
delay(50);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
delay(50);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
delay(50);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
delay(50);
digitalWrite(REDPIN,HIGH);
delay(50);
digitalWrite(REDPIN,LOW);
// zwischen den Versen 3sec
delay(4000);
//fade
analogWrite(REDPIN,0);
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
for(int i=0;i<=50;i+=5){
analogWrite(REDPIN,i);
analogWrite(GREENPIN,i);
analogWrite(BLUEPIN,i);
delay(40);
}
delay(800);
for(int i=50;i>=0;i-=5){
analogWrite(REDPIN,i);
analogWrite(GREENPIN,i);
analogWrite(BLUEPIN,i);
delay(40);
}
//es ist was es ist, pause und Nächste Strophe
delay(6000);
//fade grün
analogWrite(BLUEPIN,0);
analogWrite(REDPIN,0);
for(int i=0;i<=255;i+=5){
analogWrite(GREENPIN,i);
delay(40);
}
delay(800);
for(int i=255;i>=0;i-=5){
analogWrite(GREENPIN,i);
delay(40);
}
// zwischen den Versen 3sec
delay(4000);
//fade haltes hellblau
analogWrite(REDPIN,0); //alle LEDs aus
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
for(int i=0;i<=140;i+=5){
analogWrite(BLUEPIN,i);
analogWrite(GREENPIN,0);
delay(40);
}
delay(800);
for(int i=140;i>=0;i-=5){
analogWrite(BLUEPIN,i);
analogWrite(GREENPIN,0);
delay(40);
}
// zwischen den Versen 3sec
delay(4000);
//fade weiß, licht wird immer heller bis ende, dann alles dunkel
analogWrite(REDPIN,0);
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
for(int i=0;i<=255;i+=5){ //nur fade in
analogWrite(REDPIN,i);
analogWrite(GREENPIN,i);
analogWrite(BLUEPIN,i);
delay(60);
}
delay(800);
analogWrite(REDPIN,0); //alles plötzlich aus
analogWrite(GREENPIN,0);
analogWrite(BLUEPIN,0);
delay(5000); //ENDE/PAUSE dunkel
}
Der einfache Processing Sketch is noch in Arbeit, soll sich aber daran orientieren:
import processing.video.*;
String PATH = "/path/to/one/of/your/movies/blabla.mp4";
Movie mov;
void setup() {
size(640, 360);
frameRate(30);
mov = new Movie(this, PATH);
mov.play();
mov.speed(5);
mov.volume(0);
}
void movieEvent(Movie m) {
m.read();
}
void draw() {
image(mov, 0, 0, width, height);
}