IAudioSessionManager 接口 (audiopolicy.h)
IAudioSessionManager 接口使客户端能够访问跨进程和特定于进程的音频会话的会话控件和音量控件。 客户端通过调用 IMMDevice::Activate 方法获取对 IAudioSessionManager 接口的引用,并将参数 iid 设置为 REFIID IID_IAudioSessionManager。
此接口使客户端能够访问现有会话的控件,而无需首先打开流。 此功能对于基于 WASAPI 构建的更高级别 API 的客户端非常有用,这些客户端在内部使用会话控件,但不向其客户端授予对会话控件的访问权限。
在 Windows Vista 中,使用 WASAPI 的更高级别的 API 包括 Media Foundation、DirectSound、Windows multimedia waveInXxx、 waveOutXxx 和 mciXxx 函数,以及第三方 API。
当客户端通过更高级别的 API 创建音频流时,该 API 通常会将流添加到客户端进程的默认音频会话 (由会话 GUID 值(GUID_NULL) )标识的会话,但同一 API 可能不提供客户端访问该会话控件的方法。 在这种情况下,客户端可以通过 IAudioSessionManager 接口访问控件。
有关使用 IAudioSessionManager 接口的代码示例,请参阅 旧版音频应用程序的音频事件。
继承
IAudioSessionManager 接口继承自 IUnknown 接口。 IAudioSessionManager 还具有以下类型的成员:
方法
IAudioSessionManager 接口包含以下方法。
IAudioSessionManager::GetAudioSessionControl GetAudioSessionControl 方法检索音频会话控件。 |
IAudioSessionManager::GetSimpleAudioVolume GetSimpleAudioVolume 方法检索简单的音量控件。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | audiopolicy.h |