AudioContext:sinkchange 事件
当输出音频设备(以及因此,AudioContext.sinkId
)发生更改时,AudioContext
接口的 sinkchange
事件将被触发。
语法
在诸如 addEventListener()
之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("sinkchange", (event) => {});
onsinkchange = (event) => {};
事件类型
事件
.
示例
sinkchange
事件侦听器可用于报告音频输出设备的更改。请注意,如果 sinkId
包含 AudioSinkInfo
对象,则表示音频已更改为不在任何输出设备上播放。
js
audioCtx.addEventListener("sinkchange", () => {
if (typeof audioCtx.sinkId === "object" && audioCtx.sinkId.type === "none") {
console.log("Audio changed to not play on any device");
} else {
console.log(`Audio output device changed to ${audioCtx.sinkId}`);
}
});
有关工作代码,请参阅我们的 SetSinkId 测试示例。
规范
规范 |
---|
Web Audio API # eventdef-audiocontext-sinkchange |
浏览器兼容性
BCD 表仅在启用了 JavaScript 的浏览器中加载。