BEADS
in
Contributed Library Questions
•
7 months ago
hello!
I'm programming a code that plays sounds using the library beads.
The problem that arises is that when I want to play a single file, all files are played that are in the folder ... what is the error? how could I fix it?
the code is:
/* Este es un programa que recibe los datos del DEMOQE128 a través del puerto serial enmascar*/
import processing.serial.*; //libreria de java que se utiliza para serial
// ver mas en:
http://webdelcire.com/wordpress/archives/149
import beads.*;
Serial Puerto; //variable global de tipo serial
AudioContext ac;
SamplePlayer sp1,sp2,sp3,sp4,sp5,sp6,sp7; //ARCHIVOS DE LA TROMPETA
Gain g_T;
Glide gainValue_T;
AudioContext ac1;
SamplePlayer sp8,sp9,sp10,sp11,sp12,sp13,sp14; //ARCHIVOS DE LA GAITA
Gain g_G;
Glide gainValue_G;
//int Dato_recibido;
int NotaON;
int Parche;
int Nota;
int Volumen;
//int NotaOFF;
void setup(){
//////////INICIO DE CONFIGURACION PARA REPRODUCCION DE AUDIO DE LA TROMPETA///////////
ac = new AudioContext();
try {
// inicializacion de SamplePlayer
sp1 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_do.wav")); //SONIDO UNO TROMPETA (SP1)
sp2 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_re.wav")); //SONIDO DOS TROMPETA (SP2)
sp3 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_mi.wav")); //SONIDO TRES TROMPETA (SP3)
sp4 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_fa.wav")); //SONIDO CUATRO TROMPETA (SP4)
sp5 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_sol.wav")); //SONIDO CINCO TROMPETA (SP5)
sp6 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_la.wav")); //SONIDO SEIS TROMPETA (SP6)
sp7 = new SamplePlayer(ac, new Sample(sketchPath("") + "Trompeta_si.wav")); //SONIDO SIETE TROMPETA (SP7)
}
catch(Exception e)
{
println("No se encuentra el archivo");
e.printStackTrace();
exit();
}
sp1.setKillOnEnd(false);
sp2.setKillOnEnd(false);
sp3.setKillOnEnd(false);
sp4.setKillOnEnd(false);
sp5.setKillOnEnd(false);
sp6.setKillOnEnd(false);
sp7.setKillOnEnd(false);
//GANANCIA//
gainValue_T = new Glide(ac, 0.0, 20);
g_T = new Gain(ac, 1, gainValue_T);
g_T.addInput(sp1);
g_T.addInput(sp2);
g_T.addInput(sp3);
g_T.addInput(sp4);
g_T.addInput(sp5);
g_T.addInput(sp6);
g_T.addInput(sp7);
ac.out.addInput(g_T); // connect the Gain to the AudioContext
///////////// FIN CONFIGURACION TROMPETA /////////////////////
////////INICIO DE CONFIGURACION PARA REPRODUCCION DE AUDIO DE LA GAITA////////
ac1 = new AudioContext();
//SONIDOS //
try {
sp8 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_do.wav")); //SONIDO UNO GAITA (SP8)
sp9 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_re.wav")); //SONIDO DOS GAITA (SP9)
sp10 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_mi.wav")); //SONIDO TRES GAITA (SP10)
sp11 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_fa.wav")); //SONIDO UNO GAITA (SP11)
sp12 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_sol.wav")); //SONIDO DOS GAITA (SP12)
sp13 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_la.wav")); //SONIDO TRES GAITA (SP13)
sp14 = new SamplePlayer(ac1, new Sample(sketchPath("") + "Gaita_si.wav")); //SONIDO UNO GAITA (SP14)
}
catch(Exception e)
{
println("No se encuentra el archivo");
e.printStackTrace();
exit();
}
sp8.setKillOnEnd(false);
sp9.setKillOnEnd(false);
sp10.setKillOnEnd(false);
sp11.setKillOnEnd(false);
sp12.setKillOnEnd(false);
sp13.setKillOnEnd(false);
sp14.setKillOnEnd(false);
//GANANCIA//
gainValue_G = new Glide(ac1, 0.0, 20);
g_G = new Gain(ac1, 1, gainValue_G);
g_G.addInput(sp8);
g_G.addInput(sp9);
g_G.addInput(sp10);
g_G.addInput(sp11);
g_G.addInput(sp12);
g_G.addInput(sp13);
g_G.addInput(sp14);
ac1.out.addInput(g_G); // connect the Gain to the AudioContext
ac.start();
ac1.start();
/////////////// FIN CONFIGURACION GAITA ////////////////
////////////// CONFIGURACION //////////////
size(900,600);
println(Serial.list());
// String serialPort= Serial.list()[0];
Puerto = new Serial(this, "COM8", 9600);
Puerto.buffer(4);
//FIN CONFIGURACION PUERTO SERIAL//
}
//METODO UNO CONFIGURACION PUERTO SERIAL//
void serialEvent(Serial myPort) {
text("hola SERIAL",100,200);
NotaON=myPort.read();
if(NotaON==255){
Parche=myPort.read();
Nota=myPort.read();
Volumen=myPort.read();
myPort.clear();
}
else myPort.clear();
}
void draw() {
background(50,45,100);
text("Trama recibida:", 100, 100);
text("Note On:"+ NotaON, 100, 120);
text("Parche:" + Parche, 100, 140);
text("Nota:" + Nota, 100, 160);
text("Volumen:" + Volumen, 100, 180);
//CASOS SEGUN DATO_RECIBIDO//
//COMIENZO NOTA ON//
switch( NotaON ){
case 0: text("hola case NOTA ON",100,220);
switch( Parche ){ //COMIENZO PARCHE
case 1: gainValue_T.setValue(1);
sp1.setPosition(000);
sp1.start();
text("hola case PARCHE",100,240);
switch( Nota ){ //COMIENZO NOTAS TROMPETAS
case 1:text("hola case NOTA",100,260);
switch(Volumen){ //COMIENZO VOLUMEN
case 0:text("hola case VOLUMEN 0",100,280);
gainValue_T.setValue(0);
sp1.start();
text("hola case",100,200);
break;
case 1:text("hola case VOLUMEN 1",100,300);
gainValue_T.setValue(0.9);
sp1.start();
break;
case 2:text("hola case VOLUMEN 2",100,320);
gainValue_T.setValue(1.5);
sp1.start();
break;
case 3:text("hola case VOLUMEN 3",100,340);
gainValue_T.setValue(2);
sp1.start();
break;
}//FIN VOLUMEN
case 2: switch(Volumen) { //COMIENZO VOLUMEN
case 0:gainValue_T.setValue(0);
sp2.start();
break;
case 1:gainValue_T.setValue(0.9);
sp2.start();
break;
case 2:gainValue_T.setValue(1.5);
sp2.start();
break;
case 3:gainValue_T.setValue(2);
sp2.start();
break;
} //FIN VOLUMEN
} // FIN NOTAS TROMPETA
} //FIN PARCHE
// case 0: break;
} // FIN NOTA ON
} //FIN DRAW
1