AudioWorklet: port
port 只读属性是 接口的一部分,它返回一个 AudioWorkletMessagePort 对象,该对象可用于在主线程和相关的 AudioWorkletGlobalScope 之间发送和接收消息。
这允许主线程中的代码与音频工作线程的全局作用域之间进行自定义、异步通信,例如接收控制数据或全局设置。
值
连接 AudioWorklet 及其相关的 AudioWorkletGlobalScope 的 MessagePort 对象。
示例
有关更多示例,请参阅 AudioWorkletNode.port。
使用端口进行全局消息传递
在以下示例中,我们可以使用 port.onmessage 来接收数据,使用 port.postMessage 来发送数据。
js
const context = new AudioContext();
// Load the module that contains worklet code
await context.audioWorklet.addModule("processor.js");
// Listener for messages from AudioWorkletGlobalScope
context.audioWorklet.port.onmessage = (event) => {
console.log("Message from global worklet:", event.data);
};
// Set a global config, for example:
context.audioWorklet.port.postMessage({
volume: 0.8,
});
规范
| 规范 |
|---|
| Web Audio API # dom-audioworklet-port |
浏览器兼容性
加载中…
另见
—AudioWorkletGlobalScopeAudioWorklet的全局执行上下文。- Web Audio API
- 使用 Web Audio API
- 使用 AudioWorklet