IAudioSessionControl::SetGroupingParam メソッド (audiopolicy.h)

SetGroupingParam メソッドは、セッションのグループにセッションを割り当てます。

構文

HRESULT SetGroupingParam(
  [in] LPCGUID Override,
  [in] LPCGUID EventContext
);

パラメーター

[in] Override

新しいグループ化パラメーター。 このパラメーターは、グループ化パラメーター GUID への有効な NULL 以外のポインターである必要があります。 詳細については、「解説」を参照してください。

[in] EventContext

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

戻り値

メソッドが成功した場合は、S_OK を返します。 失敗した場合、次の表に示す値が含まれますが、これに限定されません。

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

解説

クライアントはこのメソッドを呼び出して、セッションのグループ化パラメーターを変更します。 同じグループ化パラメーター値を持つすべてのオーディオ セッションは、システム ボリューム制御プログラム Sndvol の同じボリューム レベル スライダーの制御下にあります。 詳細については、「 グループ化パラメーター」を参照してください。

クライアントは、 IAudioSessionControl::GetGroupingParam メソッドを呼び出すことによって、セッションの現在のグループ化パラメーターを取得できます。

クライアントがセッションにグループ化パラメーターを割り当てるために SetGroupingParam を呼び出したことがない場合、セッションはどのグループにも属していません。 グループ化に属していないセッションには、Sndvol プログラムに独自の専用のボリューム レベル スライダーがあります。

要件

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

関連項目

IAudioSessionControl インターフェイス

IAudioSessionControl::GetGroupingParam

IAudioSessionEvents インターフェイス