Hello, I’m having really big troubles trying to figure out how to finish my project for my exam; here it is how I imagened it: in the first 10 seconds the screen should display the opening credits, after that part music and animation start; every 10 to 15 seconds i would like to play sound files and three image wich rapresent a conversation between two people ( 2 .png silhouette, one sound file for each person, and turn the background from black to an Image of a room) , while in the foreground the animation of the pulsing sound remain visible and in the same position.
At the moment I’m completely stuck because I can’t find a way to display images behind the sound animation and then display each character line from their dialogue.
Here it is the code I wrote until now:
import ddf.minim.*;
import ddf.minim.analysis.*;
PFont f; //Dichiarazione del font
Minim minim;
AudioPlayer player;
AudioMetaData meta;
BeatDetect beat;
int r = 100; //Valore di partenza del raggio del cerchio
float rad = 70;
int m = millis();
PImage Stanza; //room
PImage Uomo1; //man1
PImage Uomo2; //man2
void settings(){
size(1080, 720);
smooth();
}
void setup(){
background(0);
PFont myFont = createFont("Arial-ItalicMT-48", 48);
textFont(myFont);
textSize(50);
textAlign(CENTER);
text("PROGETTO PROCESSING", width/2, 360); //Titolo del progetto //opening credits
fill(255);
textSize(30);
textAlign(CENTER);
text(".....................................", width/2, 500); //opening credits
fill(255);
minim = new Minim(this); //Inizializzazione del player
player = minim.loadFile("loop midi.Wav"); //Carica file "loop midi.Wav" dalla cartella data dello sketch
meta = player.getMetaData();
beat = new BeatDetect(); //Rileva i battiti più rilevanti della canzone
player.loop(); //La canzone gira in loop
//player.play();
}
void draw(){
background(0); //Colore dello sfondo
beat.detect(player.mix);
fill(#1A1F18, 20);
noStroke();
rect(0, 0, width, height); //Grandezza della finestra della composizione
translate(width/2, height/2); //Posiziona la figura al centro della composizione
fill(-1, 10);
if (beat.isOnset()) rad = rad*0.9;
else rad = 70;
ellipse(0, 0, 2*rad, 2*rad);
stroke(-1, 50);
int bsize = player.bufferSize();
for (int i = 0; i < bsize - 1; i+=5)
{
float x = (r)*cos(i*2*PI/bsize);
float y = (r)*sin(i*2*PI/bsize);
float x2 = (r + player.left.get(i)*100)*cos(i*2*PI/bsize);
float y2 = (r + player.left.get(i)*100)*sin(i*2*PI/bsize);
line(x, y, x2, y2);
}
beginShape();
noFill();
stroke(-1, 50);
endShape();
for ( int m = 0; m > 1000; m++){ *strong text*
if (player.length() > m){
background(255);
Stanza = loadImage("castle-european-interiors-68389.jpg");
image(Stanza, 0, 0, 1080, 720);
Uomo1 = loadImage("figura uomo 1.png");
image(Uomo1, 200, 400, 138, 415);
}
}
I Hope someone could help me.
Thanks.