Skip to main content

IAudioStateMonitor::RegisterCallback 方法

注册一个回调函数;当与 IAudioStateMonitor 关联的流的音频级别发生变化时,系统将调用该函数。

Syntax

Parameters

callback
Type: AudioStateMonitorCallback*
指向回调函数的指针;当与 IAudioStateMonitor 关联的流的音频级别发生变化时,系统将调用该函数。 context
Type: void*
指向应用定义的上下文数据的指针;该数据将被传递给 callback 参数指定的函数。 registration [out]
Type: AudioStateMonitorRegistration*
一个 64 位整数,用于标识回调注册。若要注销 callback 参数指定的函数,请将此值传递给 IAudioStateMonitor::UnregisterCallback

Return value

Type: HRESULT 如果方法成功,则返回 S_OK。如果失败,可能的返回代码包括(但不限于)下表中列出的值。

Remarks

请思考以下场景:游戏仅在明确知道操作系统不会因策略而将音频静音时,才选择播放 GameMedia 音频。为此,游戏在默认主机终结点上为 AudioCategory_GameMedia 流类别注册 SoundLevel 通知。如果此类别的 SoundLevel 被设置为 “Muted”,游戏将停止播放其 GameMedia 流;如果 SoundLevel 是其他任何值,游戏将选择播放其 GameMedia 流。

Requirements

头文件: Audiostatemonitorapi.h 支持的平台: Windows、XBOX One 系列主机和 XBOX Series 主机

See also

IAudioStateMonitor 关于 WASAPI
最后修改于 2026年8月24日