Maintenant la fonction lecture ne fait plus planter le programme. Mais ça marche toujours pas.
This commit is contained in:
@@ -4,14 +4,16 @@ void lireTick (Motif* m, int tmp, Mix_Chunk* chunk[], int nbrPortees) { // On
|
||||
|
||||
int tempsPrecedent = SDL_GetTicks();
|
||||
|
||||
for (int chaine = 0; chaine <= nbrPortees; chaine++) { // On va lire les chaines une <20> une par num<75>ro croissant
|
||||
for (int chaine = 0; chaine < nbrPortees; chaine++) { // On va lire les chaines une <20> une par num<75>ro croissant
|
||||
if (m != NULL) {
|
||||
if (getNote(m,0,tmp) == -1) Mix_HaltChannel(chaine); // Si la note est un silence, la chaine s'arr<72>te
|
||||
else Mix_PlayChannel(chaine, chunk[getInstrument(m,nbrPortees,tmp)], -1); // Sinon le sample de la chaine est jou<6F> en boucle
|
||||
else {
|
||||
Mix_PlayChannel(-1, chunk[getInstrument(m,chaine,tmp)], -1); // Sinon le sample de la chaine est jou<6F> en boucle
|
||||
}
|
||||
}
|
||||
while (SDL_GetTicks() - tempsPrecedent > 250) {} // Si 250 ms se sont <20>coul<75>es (il faudra r<>gler ce temps sur le tempo)
|
||||
tempsPrecedent = tempsPrecedent + 250; // On actualise l'horloge du programme
|
||||
}
|
||||
while (SDL_GetTicks() - tempsPrecedent < 250) {} // Si 250 ms se sont <20>coul<75>es (il faudra r<>gler ce temps sur le tempo)
|
||||
tempsPrecedent = tempsPrecedent + 250;
|
||||
}
|
||||
|
||||
void lecture (int nombreChaines, Motif* melodie[]) {
|
||||
@@ -23,6 +25,7 @@ void lecture (int nombreChaines, Motif* melodie[]) {
|
||||
//Lecture des motifs
|
||||
for (courant = 0; courant < taille; courant++) {
|
||||
for (int i = 0; i < melodie[courant] -> nbrTmp; i++) {
|
||||
printf("lecture temps %d : N=%d I=%d\n",i,getNote(melodie[courant],0,i),getInstrument(melodie[courant],0,i));
|
||||
lireTick (melodie[courant], i, chunk, nombreChaines);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user