playback.ready event
输出缓冲释放空间后发送。该事件是继续写入的提示,可以合并。
Event payload
{ output, writableFrames: u32 }
Examples
host.events.on('playback.ready', async ({ output, writableFrames }) => {
if (output !== stream.output) return;
const frames = Math.min(writableFrames, 1024);
await host.playback.write(output, mixer.renderBytes(frames));
});
应用仍以 write() 的实际返回值为准;事件到调用之间可写空间可能变化。
Delivery rules
事件按输出句柄区分,有界合并;stop() 开始 draining 或 immediate 终止后都不得再发送。
Requirements
- 事件声明:
playback.ready - 来源:活动 audio-output 句柄
- 信任档位:继承
playback.open的 yellow