mixerOpen, fonction (mmeapi.h)

La fonction mixerOpen ouvre un appareil mixer spécifié et garantit que l’appareil ne sera pas supprimé tant que l’application n’aura pas fermé le handle.

Syntaxe

MMRESULT mixerOpen(
  LPHMIXER  phmx,
  UINT      uMxId,
  DWORD_PTR dwCallback,
  DWORD_PTR dwInstance,
  DWORD     fdwOpen
);

Paramètres

phmx

Pointeur vers une variable qui recevra un handle identifiant l’appareil mixer ouvert. Utilisez ce handle pour identifier l’appareil lors de l’appel d’autres fonctions de mixage audio. Ce paramètre ne peut pas être NULL.

uMxId

Identificateur de l’appareil mixer à ouvrir. Utilisez un identificateur d’appareil valide ou n’importe quel HMIXEROBJ (consultez la fonction mixerGetID pour obtenir une description des poignées d’objet mixer). Il n’existe actuellement pas de « mappeur » pour les appareils de mixage audio, de sorte qu’un identificateur d’appareil de mixage de -1 n’est pas valide.

dwCallback

Gérez vers une fenêtre appelée lorsque l’état d’une ligne audio et/ou d’un contrôle associé à l’appareil en cours d’ouverture est modifié. Spécifiez NULL pour ce paramètre si aucun mécanisme de rappel ne doit être utilisé.

dwInstance

Réservé. Doit être zéro.

fdwOpen

Indicateurs d’ouverture de l’appareil. Les valeurs suivantes sont définies.

Valeur Signification
CALLBACK_WINDOW Le paramètre dwCallback est supposé être un handle de fenêtre (HWND).
MIXER_OBJECTF_AUX Le paramètre uMxId est un identificateur d’appareil auxiliaire compris entre zéro et un de moins que le nombre d’appareils retourné par la fonction auxGetNumDevs .
MIXER_OBJECTF_HMIDIIN Le paramètre uMxId est le handle d’un périphérique d’entrée MIDI. Ce handle doit avoir été retourné par la fonction midiInOpen .
MIXER_OBJECTF_HMIDIOUT Le paramètre uMxId est le handle d’un périphérique de sortie MIDI. Ce handle doit avoir été retourné par la fonction midiOutOpen .
MIXER_OBJECTF_HMIXER Le paramètre uMxId est un handle de périphérique de mélangeur retourné par la fonction mixerOpen . Cet indicateur est facultatif.
MIXER_OBJECTF_HWAVEIN Le paramètre uMxId est un handle d’entrée audio de forme d’onde retourné par la fonction waveInOpen .
MIXER_OBJECTF_HWAVEOUT Le paramètre uMxId est un handle de sortie audio de forme d’onde retourné par la fonction waveOutOpen .
MIXER_OBJECTF_MIDIIN Le paramètre uMxId est l’identificateur d’un périphérique d’entrée MIDI. Cet identificateur doit être compris entre zéro et un de moins que le nombre d’appareils retournés par la fonction midiInGetNumDevs .
MIXER_OBJECTF_MIDIOUT Le paramètre uMxId est l’identificateur d’un périphérique de sortie MIDI. Cet identificateur doit être compris entre zéro et un de moins que le nombre d’appareils retournés par la fonction midiOutGetNumDevs .
MIXER_OBJECTF_MIXER Le paramètre uMxId est un identificateur d’appareil mixer compris entre zéro et un de moins que le nombre d’appareils retournés par la fonction mixerGetNumDevs . Cet indicateur est facultatif.
MIXER_OBJECTF_WAVEIN Le paramètre uMxId est l’identificateur d’un périphérique d’entrée audio de forme d’onde dans la plage de zéro à un de moins que le nombre d’appareils retourné par la fonction waveInGetNumDevs .
MIXER_OBJECTF_WAVEOUT Le paramètre uMxId est l’identificateur d’un périphérique de sortie audio de forme d’onde dans la plage de zéro à un de moins que le nombre d’appareils retourné par la fonction waveOutGetNumDevs .

Valeur retournée

Retourne MMSYSERR_NOERROR en cas de réussite ou une erreur dans le cas contraire. Les valeurs d’erreur possibles sont les suivantes.

Code de retour Description
MMSYSERR_ALLOCATED
La ressource spécifiée est déjà allouée par le nombre maximal de clients possible.
MMSYSERR_BADDEVICEID
Le paramètre uMxId spécifie un identificateur d’appareil non valide.
MMSYSERR_INVALFLAG
Un ou plusieurs indicateurs ne sont pas valides.
MMSYSERR_INVALHANDLE
Le paramètre uMxId spécifie un handle non valide.
MMSYSERR_INVALPARAM
Un ou plusieurs paramètres ne sont pas valides.
MMSYSERR_NODRIVER
Aucun appareil mixer n’est disponible pour l’objet spécifié par uMxId. Notez que l’emplacement référencé par uMxId contient également la valeur –1.
MMSYSERR_NOMEM
Impossible d’allouer des ressources.

Notes

Utilisez la fonction mixerGetNumDevs pour déterminer le nombre d’appareils de mixage audio présents dans le système. L’identificateur d’appareil spécifié par uMxId varie de zéro à un de moins que le nombre d’appareils présents.

Si une fenêtre est choisie pour recevoir des informations de rappel, les messages MM_MIXM_LINE_CHANGE et MM_MIXM_CONTROL_CHANGE sont envoyés à la fonction de procédure de fenêtre pour indiquer quand une ligne audio ou un état de contrôle change. Pour les deux messages, le paramètre wParam est le handle de l’appareil mixer. Le paramètre lParam est l’identificateur de ligne pour MM_MIXM_LINE_CHANGE ou l’identificateur de contrôle pour MM_MIXM_CONTROL_CHANGE qui a changé d’état.

Pour rechercher la prise en charge du mixer audio ou un périphérique multimédia, utilisez la fonction mixerGetID .

Sur les systèmes 64 bits, cette fonction peut ne pas fonctionner comme prévu dans les situations où vous passez un pointeur LPHWAVEOUT 64 bits dans le paramètre uMxId , car le paramètre uMxId est tronqué à 32 bits.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête mmeapi.h (inclure Windows.h)
Bibliothèque Winmm.lib
DLL Winmm.dll

Voir aussi

Fonctions de mixage audio

Mixeurs audio