Améliorations diverses, dont le makefile

This commit is contained in:
Raspbeguy 2014-05-14 13:29:53 +02:00
parent 13471bd34d
commit 5b5d075db2
4 changed files with 35 additions and 15 deletions

View File

@ -1,19 +1,19 @@
all : ponytracker clean all : ponytracker clean
ponytracker : main.o lecture.o motifs.o melodie.o 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 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 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 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 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 : clean :
rm -f *.o rm -f *.o

View File

@ -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 for (int chaine = 0; chaine < nbrPortees; chaine++) { // On va lire les chaines une à une par numéro croissant
if (m != NULL) { 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 { else {
if (getNote(m,0,tmp) != 0) { 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]); FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, sample[getInstrument(m,chaine,tmp)], 0, &chan[chaine]);
//Ici on va s'occuper du pitch //Ici on va s'occuper du pitch
FMOD_DSP *pitch; /*FMOD_DSP *pitch;
FMOD_System_CreateDSPByType(system, FMOD_DSP_TYPE_PITCHSHIFT, &pitch); FMOD_System_CreateDSPByType(system, FMOD_DSP_TYPE_PITCHSHIFT, &pitch);
FMOD_DSP_SetParameter(pitch, FMOD_DSP_PITCHSHIFT_PITCH, 2); 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é... 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... // 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; tempsPrecedent = tempsPrecedent + 125;
Avouez que ce serait con qu'on ait besoin de SDL juste pour la temporisation 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. */ 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_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 //INITIALISATION SAMPLES ET CHANNELS

View File

@ -5,9 +5,9 @@
#include "motifs/motifs.h" #include "motifs/motifs.h"
#include "melodie/melodie.h" #include "melodie/melodie.h"
#include "lecture/lecture.h" #include "lecture/lecture.h"
#include <SDL2/SDL.h> //#include <SDL2/SDL.h>
#include <SDL2/SDL_mixer.h> //#include <SDL2/SDL_mixer.h>
#include <SDL2/SDL_main.h> //#include <SDL2/SDL_main.h>
#define DEF_NBR_TMP 16 #define DEF_NBR_TMP 16
#define MAX_PATTERNS 256 #define MAX_PATTERNS 256
@ -190,7 +190,7 @@ void lancerLecture ()
courant = 0; courant = 0;
taille = 0; taille = 0;
debut(melodie, liste, nbrPortees); debut(melodie, liste, nbrPortees);
lecture(nbrPortees,melodie); lecture(nbrPortees,480,melodie);
} }
void quitter () void quitter ()

19
sources/makefile_backup Normal file
View File

@ -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