ISimpleAudioVolume::SetMasterVolume メソッド (audioclient.h)

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

構文

HRESULT SetMasterVolume(
  [in] float   fLevel,
  [in] LPCGUID EventContext
);

パラメーター

[in] fLevel

新しいマスター ボリューム レベル。 有効なボリューム・レベルの範囲は 0.0 から 1.0 です。

[in] EventContext

イベント コンテキスト GUID へのポインター。 このメソッドの呼び出しによってボリューム変更イベントが生成された場合、セッション マネージャーは 、IAudioSessionEvents インターフェイスをセッション マネージャーと登録したすべてのクライアントに通知を送信します。 セッション マネージャーには、通知ごとに EventContext ポインター値が含まれます。 通知を受け取ると、クライアントは EventContext 値を調べることによって、そのクライアントまたは別のクライアントがイベントのソースであるかどうかを判断できます。 このスキームは、セッション内のすべてのクライアントで一意の値を選択するクライアントによって異なります。 呼び出し元がこのパラメーターに NULL ポインターを指定した場合、クライアントの通知メソッドは NULL コンテキスト ポインターを受け取ります。

戻り値

メソッドが成功した場合は、S_OK を返します。 エラーが発生した場合、次の表に示す値が、可能なリターン コードに含まれますが、これらに限定されません。

リターン コード 説明
E_INVALIDARG
パラメーター fLevel が 0.0 から 1.0 の範囲ではありません。
AUDCLNT_E_DEVICE_INVALIDATED
オーディオ エンドポイント デバイスが取り外されているか、オーディオ ハードウェアまたは関連するハードウェア リソースが再構成、無効、削除、またはその他の方法で使用できなくなります。
AUDCLNT_E_SERVICE_NOT_RUNNING
Windows オーディオ サービスが実行されていません。

注釈

このメソッドは、メソッド呼び出しによってセッションのボリューム レベルが変更された場合にのみ、ボリューム変更イベントを生成します。 たとえば、呼び出しが発生したときにボリューム レベルが 0.4 で、呼び出しによってボリューム レベルが 0.4 に設定されている場合、イベントは生成されません。

要件

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

こちらもご覧ください

IAudioSessionEvents インターフェイス

ISimpleAudioVolume インターフェイス

ISimpleAudioVolume::GetMasterVolume