#include #include "midifile.h" void read_midi(char * midifile); int main (int argc, char *argv[]) { read_midi(argv[1]); } void read_midi(char * midifile) { MidiFileEvent_t event; unsigned char *data; MidiFile_t md = MidiFile_load(midifile); event = MidiFile_getFirstEvent(md); /* boucle principale */ while(event) { if (MidiFileEvent_isNoteStartEvent(event)) { /* note start */ // Channel int chan = MidiFileNoteStartEvent_getChannel(event); // Attention channel 10 !! if (chan != 10) { // Pitch printf("Note jouee : %d, ", MidiFileNoteStartEvent_getNote(event)); // Duration printf("durée %d\n", MidiFileEvent_getTick(MidiFileNoteStartEvent_getNoteEndEvent(event))-MidiFileEvent_getTick(event)); } } event = MidiFileEvent_getNextEventInFile(event); } }