Méthode IPerChannelDbLevel ::SetLevel (devicetopology.h)
La méthode SetLevel définit le niveau de volume, en décibels, du canal spécifié.
Syntaxe
HRESULT SetLevel(
[in] UINT nChannel,
[in] float fLevelDB,
[in] LPCGUID pguidEventContext
);
Paramètres
[in] nChannel
Numéro du canal sélectionné. Si le flux audio a N canaux, les canaux sont numérotés de 0 à N– 1. Pour obtenir le nombre de canaux dans le flux, appelez la méthode IPerChannelDbLevel ::GetChannelCount .
[in] fLevelDB
Nouveau niveau de volume en décibels. Une valeur positive représente un gain et une valeur négative représente l’atténuation.
[in] pguidEventContext
Valeur de contexte pour la méthode IControlChangeNotify ::OnNotify . Ce paramètre pointe vers un GUID de contexte d’événement. Si l’appel SetLevel modifie l’état du contrôle de niveau, tous les clients qui ont des interfaces IControlChangeNotify inscrites avec ce contrôle reçoivent des notifications. Dans son implémentation de la méthode OnNotify , un client peut inspecter le GUID de contexte d’événement pour déterminer s’il est ou un autre client la source de l’événement control-change. Si l’appelant fournit un pointeur NULL pour ce paramètre, la méthode de notification du client reçoit un pointeur de contexte NULL .
Valeur retournée
Si la méthode réussit, retourne S_OK. En cas d’échec, les codes de retour possibles incluent, sans s’y limiter, les valeurs indiquées dans le tableau suivant.
Code de retour | Description |
---|---|
|
Le paramètre nChannel est hors plage. |
|
Mémoire insuffisante. |
Remarques
Si l’appelant spécifie une valeur pour fLevelDB qui est une valeur d’étape exacte, la méthode SetLevel se termine correctement. Un appel suivant à la méthode IPerChannelDbLevel ::GetLevel retourne la valeur définie ou l’une des valeurs suivantes :
- Si la valeur définie était inférieure à la valeur minimale, la méthode GetLevel retourne la valeur minimale.
- Si la valeur définie était supérieure à la valeur maximale, la méthode GetLevel retourne la valeur maximale.
- Si la valeur définie se trouvait entre deux valeurs pas à pas, la méthode GetLevel retourne une valeur qui peut être la valeur d’étape suivante au-dessus ou la valeur pas à pas sous la valeur définie ; les distances relatives entre la valeur définie et les valeurs pas à pas voisines n’ont aucune importance. La valeur retournée par la méthode GetLevel est la valeur qui a le plus d’impact sur le chemin du signal.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | devicetopology.h |