Midi, mmsystem : erreur compilation

cs_poiro Messages postés 4 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 1 mars 2004 - 18 févr. 2004 à 22:18
garthos Messages postés 47 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 3 novembre 2007 - 3 juin 2005 à 21:29
Impossible de compiler sans erreurs après avoir inclu le header mmsystem : #include<mmsystem.h> dans Visual C++, ainsi qu'avec Visual c++ .NET
J aurais besoin de cette librairie pour utiliser le midi dans un projet musical...J'espere qu'il y a réponse à cet étrange problème...

6 réponses

cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012
18 févr. 2004 à 22:30
Bonjour,

Il faut aussi rajouter la librairie dans les paramètres du linker.

Rajoutes : winmm.lib

@+
Arnotic
Admin CS, MVP Visual C++
0
cs_poiro Messages postés 4 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 1 mars 2004
28 févr. 2004 à 18:21
Merci, mais un autre probleme survient :
Le code suivant est censé lire une note midi grâce à mmsystem.h, il compile et s'éxécute sans erreurs, mais aucun son n'est audible :

#include <windows.h>
#include <mmsystem.h>

int main()
{

int NbreDevs = midiOutGetNumDevs() ;

MIDIOUTCAPS OutCaps ;

int wDeviceID ;

for(wDeviceID=0 ; wDeviceID<NbreDevs ; wDeviceID++)
{
midiOutGetDevCaps(wDeviceID, &OutCaps, sizeof(OutCaps) ) ;
if( OutCaps.wTechnology==MOD_FMSYNTH )
break ;
}

HMIDIOUT hMidiOut ; //reçoit le handle du port MIDI
midiOutOpen( &hMidiOut, wDeviceID, NULL, NULL, NULL) ;

int NbreNotesMax = OutCaps.wNotes ;

DWORD lNoteOn = 0x005f3091;

midiOutShortMsg( hMidiOut, lNoteOn ) ;

return 0;
}

Quelqu'un pourrait il me renseigner.? En vous remerciant, Monsieur Poiro
0
garthos Messages postés 47 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 3 novembre 2007
25 mai 2005 à 22:51
faut peu etre que mettre des paramettre pour un note on (genre numero de note et vélocité)

sinon et tu sur d'envoyé au bon numéro de device ?
0
garthos Messages postés 47 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 3 novembre 2007
25 mai 2005 à 23:19
je crois que je sais !

c'est ta va leu de note on qui est fausse

1er octet a 00 c'est bon car pas utiliser

2eme octet normalement c le canal midi (y en a 16) donc t'as valeur est trop grande

enfin bref

essaye 00x00003C7F

octet 1 : 00 non utiliser

octet 2 : 00 ou 01 mais je pense 00 pour canal 1

octet 3 : 3C (60 en décimal ) correspond a la note Do

octet 4 :7F (127 en décimal) correspond a la valeur max de la vélocité



regarde ce site t'en sera plus sur le Midi :

http://ogloton.free.fr/midi/code_canal.html



je suis en train de bosser dessus en ce moment donc hésite pas a me contacter par mail
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
garthos Messages postés 47 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 3 novembre 2007
26 mai 2005 à 13:02
wé ba en fait moi non plus j'entend pas de son !!!
0
garthos Messages postés 47 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 3 novembre 2007
3 juin 2005 à 21:29
wé ba c'est bien ca c'est tes notes qui sont pas valide pour les note on ya un des octet qui est a 00x90 !
0
Rejoignez-nous