Audio worker and AudioWorklet in web audio API



根据这个W3C工作草案,ScriptProcessorNode已被弃用,将被AudioWorkerNode取代。
Chrome最近实现了AudioWorklet来取代ScriptProcessorNode。
这两个 API 是一回事吗?Chrome 只是用不同的名称实现它吗?

是的,它刚刚被重命名为AudioWorklet,即使在规范中也可能是为了标记此 API 和 Web Worker 之间的区别,因为此 API 更像是 CSS-WG 提出的 Worklets API。

他们的关键点 Worklet确实与工人不同(根据Houdini页面)

Worklet 类似于 Web 工作者,但它们:

  • 与线程无关。也就是说,它们未定义为在特定线程上运行。渲染引擎可以在他们选择的任何位置运行它们。

  • 能够为并行性目的创建全局范围的多个重复实例。

  • 不基于事件 API。相反,类在全局作用域上注册,其方法将由用户代理调用。

  • 在全局范围内具有较小的 API 图面。

  • 具有由后续规范或用户代理定义的全局范围的生存期。它们与文档的生存期无关。

由于工作日志的开销相对较高,因此应谨慎使用。因此,工作集预计将在单独的脚本之间共享。

最新更新