Skip to content

宿主静音控制 ​

静音按组件实例保存,默认关闭,由 Services 原子提交,无需授权。显示抽屉在隐藏/显示按钮右侧提供当前实例的静音图标按钮。配置草稿不影响该即时操作,停用保留选择;新实例默认不静音。实例静音保存在当前显示器布局中,布局保存复制该选择,应用和恢复按布局覆盖;包切换不回滚静音。

设置页与托盘提供全局静音。有效静音为 globalMuted || instance.muted;解除全局覆盖后恢复每个实例自己的选择。当前和随后创建的 WebView 在内容运行前应用有效策略,隐藏或失焦不自动静音,也不以静音替代暂停。

运行时使用 WebView2 ICoreWebView2_8::put_IsMuted 与原生 IsMutedChanged 事件,握手和 audio.changed 只提供 {muted:boolean},读取实际原生静音状态;功能标志仍为 context.audio。SDK先更新 context 再通知监听器。

作者仍可控制自己页面中的音频音量,但不能解除宿主原生静音。其他应用、系统声音、设备总音量和 Windows 混音器不由该设置控制。默认设备的系统音量读写使用独立系统输出音量能力,不改变组件静音策略。

正常关闭或组件故障先静音再释放 WebView 原生音频接口。原生静音读取/写入只在窗口线程操作,事务与持久化仍由 Services 持有。

计算画布、花园等验证组件的试听仍由用户主动触发,维持原有有界恢复、取消、节点断开和离开收尾规则;页面只显示宿主静音状态,不显示已移除的音量或会话就绪字段。验证范围以实现说明(宿主文档:../implementation.md)为准。

系统音频回环 audio.capture.* 是无需声明和授权的基础接口,不属于播放静音策略;接口、格式、配额和终止条件见桌面扩展。附属WebView沿用所属实例和全局有效静音。

当前宿主协议 · SDK 0.1.1 · MIT