IAudioSessionEvents::OnStateChanged 方法 (audiopolicy.h)

OnStateChanged 方法通知客户端会话的流活动状态已更改。

语法

HRESULT OnStateChanged(
  [in] AudioSessionState NewState
);

参数

[in] NewState

新的会话状态。 此参数的值是以下 AudioSessionState 枚举值之一:

AudioSessionStateActive

AudioSessionStateInactive

AudioSessionStateExpired

返回值

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

注解

客户端无法生成会话状态更改事件。 系统始终是此类事件的源。 因此,与其他一些 IAudioSessionEvents 方法不同,此方法不提供上下文参数。

在客户端打开会话中的第一个流时,系统会将会话的状态从非活动状态更改为活动状态。 客户端通过调用 IAudioClient::Initialize 方法打开流。 在客户端关闭会话中的最后一个流时,系统会将会话状态从活动状态更改为非活动状态。 释放对 IAudioClient 对象的最后一个引用的客户端将关闭与该对象关联的流。

有关实现 IAudioSessionEvents 接口中方法的代码示例,请参阅 音频会话事件

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 audiopolicy.h

另请参阅

IAudioClient 接口

IAudioClient::Initialize

IAudioSessionEvents 接口