ISimpleAudioVolume インターフェイス (audioclient.h)

ISimpleAudioVolume インターフェイスを使用すると、クライアントはオーディオ セッションのマスター ボリューム レベルを制御できます。 IAudioClient::Initialize メソッドはストリーム オブジェクトを初期化し、ストリームをオーディオ セッションに割り当てます。 クライアントは、パラメーター riidREFIID IID_ISimpleAudioVolumeに設定された IAudioClient::GetService メソッドを呼び出して、ストリーム オブジェクトの ISimpleAudioVolume インターフェイスへの参照を取得します。

または、クライアントは、最初にストリーム オブジェクトを作成してセッションにストリームを追加しなくても、既存のセッションの ISimpleAudioVolume インターフェイスを取得できます。 代わりに、クライアントはセッション GUID を使用して IAudioSessionManager::GetSimpleAudioVolume メソッドを呼び出します。

セッション サブミックス内のチャネルの有効ボリューム レベルは、スピーカーで聞いたとおり、次の 4 つのボリューム レベル要因の積です。

  • クライアントが IAudioStreamVolume インターフェイスのメソッドを使用して制御できる、セッション内のストリームのチャネルごとのボリューム レベル。
  • クライアントが ISimpleAudioVolume インターフェイスのメソッドを使用して制御できるセッションのマスター ボリューム レベル。
  • クライアントが IChannelAudioVolume インターフェイス内のメソッドを介して制御できるセッションのチャネルごとのボリューム レベル。
  • グローバル ミックスの変更に応じてシステムによってセッションに動的に割り当てられる、セッションのポリシー ベースのボリューム レベル。
前の一覧の 4 つのボリューム レベルの各要因は、0.0 から 1.0 の範囲の値です。0.0 は無音を示し、1.0 は完全なボリューム (減衰なし) を示します。 有効ボリューム レベルは、0.0 から 1.0 の範囲の値でもあります。

一般的なオーディオ アプリケーションでは、セッションのボリューム レベルは変更されません。 代わりに、Sndvol プログラムを使用してこれらのボリューム レベルを設定するユーザーに依存します。 Sndvol は、セッションのマスター ボリューム レベルのみを変更します。 既定では、セッション マネージャーは、セッションの最初のアクティブ化時にマスター ボリューム レベルを 1.0 に設定します。 Sndvol またはその他のクライアントによる後続のボリューム変更は、コンピューターの再起動後も永続的です。

ISimpleAudioVolume インターフェイス インスタンスを解放する場合、クライアントは、オブジェクトを作成した IAudioClient::GetService の呼び出しと同じスレッドからインターフェイスの Release メソッドを呼び出す必要があります。

ISimpleAudioVolume インターフェイスは、オーディオ セッションのボリュームを制御します。 オーディオ セッションは、共有モード ストリームのコレクションです。 このインターフェイスは、排他モード ストリームでは機能しません。 排他モード ストリームのボリューム 制御の詳細については、「 EndpointVolume API」を参照してください。

継承

ISimpleAudioVolume インターフェイスは、IUnknown インターフェイスから継承します。 ISimpleAudioVolume には、次の種類のメンバーもあります。

メソッド

ISimpleAudioVolume インターフェイスには、これらのメソッドがあります。

 
ISimpleAudioVolume::GetMasterVolume

GetMasterVolume メソッドは、オーディオ セッションのクライアント ボリューム レベルを取得します。
ISimpleAudioVolume::GetMute

GetMute メソッドは、オーディオ セッションの現在のミュート状態を取得します。
ISimpleAudioVolume::SetMasterVolume

SetMasterVolume メソッドは、オーディオ セッションのマスター ボリューム レベルを設定します。
ISimpleAudioVolume::SetMute

SetMute メソッドは、オーディオ セッションのミュート状態を設定します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー audioclient.h

こちらもご覧ください

コア オーディオ インターフェイス

IAudioClient::GetService

IAudioClient::Initialize

IAudioStreamVolume インターフェイス

IChannelAudioVolume インターフェイス

WASAPI