Partager via


IXAudio2Voice ::SetChannelVolumes, méthode (xaudio2.h)

Définit les niveaux de volume de la voix, par canal.

Syntaxe

\\HRESULT SetChannelVolumes(
  [in] UINT32      Channels,
  [in] const float *pVolumes,
  [in] UINT32      OperationSet
);

Paramètres

[in] Channels

Nombre de canaux dans la voix.

[in] pVolumes

Tableau contenant les nouveaux volumes de chaque canal dans la voix. Le tableau doit avoir des éléments Channels . Pour plus d’informations sur les niveaux de volume, consultez Remarques.

[in] OperationSet

Identifie cet appel dans le cadre d’un lot différé. Pour plus d’informations, consultez vue d’ensemble des ensembles d’opérations XAudio2 .

Valeur retournée

Retourne S_OK en cas de réussite, un code d’erreur dans le cas contraire. Consultez Codes d’erreur XAudio2 pour obtenir des descriptions des codes d’erreur spécifiques à XAudio2.

Remarques

SetChannelVolumes contrôle les niveaux de sortie par canal d’une voix et est appliqué juste après le SRC final de la voix et avant son envoi.

Cette méthode est valide uniquement pour les voix sources et les voix de sous-mélange, car le mastering voices ne spécifie pas de volume par canal.

Les niveaux de volume sont exprimés sous forme de multiplicateurs d’amplitude à virgule flottante entre -XAUDIO2_MAX_VOLUME_LEVEL et XAUDIO2_MAX_VOLUME_LEVEL (-2²⁴ à 2²⁴), avec un gain maximal de 144,5 dB. Un volume de 1 signifie qu’il n’y a pas d’atténuation ou de gain et 0 signifie silence. Les niveaux négatifs peuvent être utilisés pour inverser la phase audio. Pour plus d’informations sur le contrôle de volume, consultez Contrôle de volume et de tangage XAudio2 .

RemarqueIXAudio2Voice ::GetChannelVolumes retourne toujours les niveaux de volume les plus récemment définis par IXAudio2Voice ::SetChannelVolumes. Toutefois, ces valeurs ne sont peut-être pas encore en vigueur : elles ne prennent effet que la prochaine fois que le moteur audio s’exécute après l’appel IXAudio2Voice ::SetChannelVolumes (ou après l’appel IXAudio2 ::CommitChanges correspondant, si IXAudio2Voice ::SetChannelVolumes a été appelé avec un ID d’opération différé).
 

Configuration requise pour la plateforme

Windows 10 (XAudio2.9) ; Windows 8, Windows Phone 8 (XAudio 2.8) ; Kit de développement logiciel (SDK) DirectX (XAudio 2.7)

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête xaudio2.h

Voir aussi

Guide pratique pour modifier le volume vocal

IXAudio2Voice