在最近的 web.dev 现场活动中,谷歌 V8 产品经理 Thomas Nattestad 解释了一些提议的 Web 附加功能,为 Zoom 和其他视频会议提供 Web 浏览器支持。
Nattestad 解释说,WebRTC在大约十年前就已经标准化,并为所有主要浏览器的视频会议功能提供了全栈解决方案。可惜的是,WebRTC 具有局限性,所以有很多服务(如 Zoom)使用了各种 API 的低级访问能力。
三种新 API 打算在 Web 浏览器中支持当今视频会议解决方案的功能,不过这些 API 尚未最终确定,仍在积极设计中。
WebAssembly SIMD(单指令多数据)提供了可移植的高性能 SIMD 运算子集,可在大多数现代架构中使用。诸如音频/视频编解码器和图像处理器之类的计算密集型应用程序通常会在 Web 浏览器之外使用 SIMD。例如,Zoom 使用虚拟背景替换用户的真实背景。
Chrome 84 引入了 SIMD 的初始试用版,开发人员可以与用户一起测试功能,但无需将其交付给所有 Chrome 用户。
WebTransport是一个 WICG 提案,与 WebSockets 相似,但与 WebSocket 的单个流相比,它支持多个可取消流。WebTransport 通过不可靠的数据报和可靠的基于流的机制提供双向传输。
最后,新的WebCodecs API为开发人员提供了直接访问权限,可以利用浏览器提供的编解码器对流和信号进行编码或重新编码。以前,如果开发人员想要控制编解码器,需要将编解码器作为 JavaScript 或 WebAssembly 代码库的一部分。
尽管基于浏览器的视频会议解决方案与桌面客户端实现的功能不完全相同,但这些 API 消除了创建类似桌面客户端的基于浏览器的视频客户端的障碍。
观看完整的 webdev.live视频,获取有关这些新 API 的更多信息。
https://www.youtube.com/embed/nhTxJBgTywc
原文链接:
Zoom on Web: WebAssembly SIMD, WebTransport, and WebCodecs
评论