次の方法で共有


IXAudio2Voice::SetVolume

ボイスの全体のボリューム レベルを設定します。

HRESULT 
SetVolume(
  float Volume,
  UINT32 OperationSet = XAUDIO2_COMMIT_NOW
);

パラメータ

  • Volume
    使用する全体のボリューム レベルです。ボリューム レベルの詳細については、「備考」を参照してください。
  • OperationSet
    この呼び出しを遅延バッチの一部として指定します。詳細については、「XAudio2 操作セット」の概要を参照してください。

戻り値

正常に実行された場合は S_OK を返し、失敗した場合はエラー コードを返します。エラー コードの説明については、「XAudio2 エラー コード」を参照してください。

解説 

SetVolume は、エフェクト チェーンが適用される直前に適用されます。

ボリューム レベルは、-224 ~ 224 の浮動小数点振幅逓倍として表現され、最大ゲインは 144.5 dB です。ボリューム レベル 1.0 は減衰またはゲインがないことを意味し、0 は無音を意味します。負のレベルは、オーディオのフェーズを反転させるために使用できます。ボリューム コントロールの詳細については、「XAudio2 のボリュームおよびピッチ コントロール」を参照してください。

    IXAudio2Voice::SetVolume の呼び出しによってボリュームを変更した直後に IXAudio2Voice::GetVolume を呼び出すと、新しい値が返されますが、次にオーディオ エンジンを実行するまで変更が反映されない場合があります。これは、パラメーターが非同期的に設定されるためです。

要件

ヘッダー: Xaudio2.h 宣言

関連項目

IXAudio2Voice, 方法 : ボイス ボリュームの変更, 方法 : サブミックス ボイスの使用