Skip to main content

CreateCaptureAudioStateMonitorForCategoryAndDeviceRole

Crée une instance de IAudioStateMonitor qui surveille le niveau audio de tous les flux de capture audio de la catégorie spécifiée et ayant le rôle spécifié.

Syntaxe

Paramètres

category
Type : AUDIO_STREAM_CATEGORY
Membre de l’énumération AUDIO_STREAM_CATEGORY qui spécifie la catégorie des flux de capture audio à surveiller. role
Type : ERole
Membre de l’énumération ERole qui spécifie le rôle des flux de capture audio à surveiller. audioStateMonitor _Out_
Type : IAudioStateMonitor**
Ce paramètre de sortie reçoit l’objet IAudioStateMonitor créé.

Valeur renvoyée

Si la méthode réussit, elle retourne S\_OK.

Remarques

Il s’agit de l’une des fonctions qui créent et retournent une instance AudioStateMonitor. Il existe quatre variantes, pour les flux de capture comme pour les flux de rendu, qui déterminent si un processus peut effectuer l’une des opérations suivantes pour un rôle donné :
  • Capturer ou rendre n’importe quel audio de n’importe quelle catégorie
  • Capturer ou rendre l’audio d’une catégorie spécifique
  • Capturer ou rendre l’audio d’une catégorie spécifique, vers un point de terminaison spécifique.
    Le point de terminaison peut être spécifié à l’aide de l’ID MMDevice (obtenu avec IMMDevice::GetId()) ou à l’aide de son ID SWD (obtenu avec Windows.Devices.Enumeration ou Windows.Media.Devices.MediaDevice)
  • Capturer ou rendre l’audio d’une catégorie spécifique vers le point de terminaison par défaut
Prenons le scénario suivant, dans lequel un jeu souhaite activer sa fonctionnalité GameChat en jeu uniquement lorsqu’il sait que l’audio ne sera pas coupé par les stratégies du système d’exploitation. Pour ce faire, le jeu s’inscrit aux notifications SoundLevel pour la catégorie de flux AudioCategory_GameChat sur le point de terminaison de communications par défaut. Si le SoundLevel de cette catégorie est défini sur ‘Muted’, le jeu arrête sa session GameChat. Si le SoundLevel a une autre valeur, le jeu choisit d’activer son flux GameChat. L’exemple de code suivant montre comment le jeu peut créer un objet IAudioStateMonitor approprié pour ce scénario.

Configuration requise

En-tête : Audiostatemonitorapi.h Bibliothèque : Windows.Media.MediaControl.lib Plateformes prises en charge : Windows, consoles de la famille XBOX One et consoles XBOX Series

Voir aussi

AUDIO_STREAM_CATEGORY À propos de WASAPI WASAPI
Last modified on October 6, 2026