diff --git a/sources/Makefile b/sources/Makefile index 8764e15..0d944c6 100644 --- a/sources/Makefile +++ b/sources/Makefile @@ -1,19 +1,19 @@ all : ponytracker clean ponytracker : main.o lecture.o motifs.o melodie.o - gcc -std=c99 -L/opt/local/lib -Wall main.o lecture.o motifs.o melodie.o -o ponytracker `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` -lSDL2 -lSDL2_mixer + gcc -std=c99 -L'fmod/lib' -lfmodex -Wall main.o lecture.o motifs.o melodie.o -o ponytracker `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` main.o : main.c - gcc -std=c99 -I/opt/local/include -Wall -c main.c `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` + gcc -std=c99 -Wall -c main.c `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` motifs.o : motifs/motifs.c motifs/motifs.h - gcc -std=c99 -I/opt/local/include -Wall -c motifs/motifs.c + gcc -std=c99 -Wall -c motifs/motifs.c melodie.o : melodie/melodie.c melodie/melodie.h - gcc -std=c99 -I/opt/local/include -Wall -c melodie/melodie.c + gcc -std=c99 -Wall -c melodie/melodie.c lecture.o : lecture/lecture.c lecture/lecture.h - gcc -std=c99 -I/opt/local/include -Wall -c lecture/lecture.c + gcc -std=c99 -Wall -c lecture/lecture.c clean : rm -f *.o diff --git a/sources/lecture/lecture.c b/sources/lecture/lecture.c index 6da43cf..f4eb4b2 100644 --- a/sources/lecture/lecture.c +++ b/sources/lecture/lecture.c @@ -6,16 +6,17 @@ void lireTick (FMOD_SYSTEM* system, Motif* m, int tmp, FMOD_SOUND* sample[], FMO for (int chaine = 0; chaine < nbrPortees; chaine++) { // On va lire les chaines une à une par numéro croissant if (m != NULL) { - if (getInstrument(m,0,tmp) == -1) FMOD_Channel_Stop(chan[chaine]); // Si la note est un silence, la chaine s'arrête + if (getInstrument(m,0,tmp) == -1) FMOD_Channel_Stop(chan[0]); // Si la note est un silence, la chaine s'arrête else { if (getNote(m,0,tmp) != 0) { + FMOD_Channel_Stop(chan[chaine]); FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, sample[getInstrument(m,chaine,tmp)], 0, &chan[chaine]); //Ici on va s'occuper du pitch - FMOD_DSP *pitch; + /*FMOD_DSP *pitch; FMOD_System_CreateDSPByType(system, FMOD_DSP_TYPE_PITCHSHIFT, &pitch); - FMOD_DSP_SetParameter(pitch, FMOD_DSP_PITCHSHIFT_PITCH, 2); - FMOD_Channel_AddDSP(chan[1], pitch, 0); // C'est quoi chan1 ??? Je l'ai remplacé par chan[1], vu que chan1 est as déclaré... + FMOD_DSP_SetParameter(pitch, FMOD_DSP_PITCHSHIFT_PITCH, 1); + FMOD_Channel_AddDSP(chan[1], pitch, 0); // C'est quoi chan1 ??? Je l'ai remplacé par chan[1], vu que chan1 est as déclaré...*/ // On va passer une bonne journée... } } @@ -25,7 +26,7 @@ void lireTick (FMOD_SYSTEM* system, Motif* m, int tmp, FMOD_SOUND* sample[], FMO tempsPrecedent = tempsPrecedent + 125; Avouez que ce serait con qu'on ait besoin de SDL juste pour la temporisation alors qu'on peut utiliser la fonction native usleep pour ça, et beaucoup plus simplement. */ - usleep(60000/tempo); + usleep(60000000/tempo); } @@ -38,7 +39,7 @@ void lecture (int nombreChaines, int tempo, Motif* melodie[]) { FMOD_System_Create(&system); - FMOD_System_Init(system, 8, FMOD_INIT_NORMAL, NULL); //Le deuxième argument donne le nombre de canal à utiliser (nombre de chaines) + FMOD_System_Init(system, 8, FMOD_INIT_NORMAL, NULL); //Le deuxième argument donne le nombre de canaux à utiliser (nombre de chaines) //INITIALISATION SAMPLES ET CHANNELS diff --git a/sources/main.c b/sources/main.c index 3be054f..ed1ff2a 100644 --- a/sources/main.c +++ b/sources/main.c @@ -5,9 +5,9 @@ #include "motifs/motifs.h" #include "melodie/melodie.h" #include "lecture/lecture.h" -#include -#include -#include +//#include +//#include +//#include #define DEF_NBR_TMP 16 #define MAX_PATTERNS 256 @@ -190,7 +190,7 @@ void lancerLecture () courant = 0; taille = 0; debut(melodie, liste, nbrPortees); - lecture(nbrPortees,melodie); + lecture(nbrPortees,480,melodie); } void quitter () diff --git a/sources/makefile_backup b/sources/makefile_backup new file mode 100644 index 0000000..8764e15 --- /dev/null +++ b/sources/makefile_backup @@ -0,0 +1,19 @@ +all : ponytracker clean + +ponytracker : main.o lecture.o motifs.o melodie.o + gcc -std=c99 -L/opt/local/lib -Wall main.o lecture.o motifs.o melodie.o -o ponytracker `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` -lSDL2 -lSDL2_mixer + +main.o : main.c + gcc -std=c99 -I/opt/local/include -Wall -c main.c `pkg-config --cflags --libs gtk+-3.0 gmodule-2.0` + +motifs.o : motifs/motifs.c motifs/motifs.h + gcc -std=c99 -I/opt/local/include -Wall -c motifs/motifs.c + +melodie.o : melodie/melodie.c melodie/melodie.h + gcc -std=c99 -I/opt/local/include -Wall -c melodie/melodie.c + +lecture.o : lecture/lecture.c lecture/lecture.h + gcc -std=c99 -I/opt/local/include -Wall -c lecture/lecture.c + +clean : + rm -f *.o