微软 Teams 会议中基于 AI 的视频和屏幕共享质量优化
视频和屏幕共享是高效、有影响力地传递信息的基本方法。无论内容类型或网络限制如何,微软都专注于优化这些功能,以提供优质、可靠和有弹性的体验。
之前,微软已经分享了 微软如何使用 AI 来减少背景噪音并通过微软的 Satin 编解码器改进音频编码,使其在较差的网络中更具弹性。本博客介绍了如何扩展 AI 的使用,以提高微软Teams会议的视频和屏幕共享质量,从而即使在网络受限的环境中也能提高质量和可靠性。
虽然大多数组织的网络基础设施在过去几年中得到了很大改善,但 COVID-19 期间的远程工作指导导致来自家庭网络的实时会议和协作激增。此类网络通常有两个关键限制:
- 网络带宽受限:许多场景,例如多人使用同一个 Wi-Fi 网络接入点,或某些地区的互联网服务提供商过载,由于可用带宽的波动,需要不断调整。
- 网络丢失:与 Wi-Fi 或移动网络接入点的连接不良或设备上运行的其他应用程序造成网络拥塞可能会导致视频数据无法成功传输,从而导致视频质量下降。在许多情况下,网络损失不是随机分布的,而是突发性的,这会进一步加剧问题。
受限的网络带宽和网络丢失可能会导致视频冻结、帧速率低或图片质量不佳。让我们探索 Teams 创新如何解决可能影响会议期间视频质量的限制。
Teams 使用 AI 在带宽受限的情况下提高视频质量
在没有足够带宽可用于最高质量视频的情况下,编码器必须在更好的图像质量与更平滑的帧速率之间进行权衡。为了优化用户体验,这种权衡必须考虑尝试编码的源内容的各个方面。共享屏幕内容(例如使用小字体的文档)需要优化空间分辨率以使文档保持清晰。或者,如果用户在播放视频时共享他们的桌面,优化高帧率很重要,否则共享的视频看起来会不流畅。由于共享屏幕内容通常是两种场景的混合,因此优先考虑高空间质量还是平滑运动是一个挑战。一些应用程序要求最终用户通过为此公开设置来做出选择,这可能是一个繁琐且可能令人困惑的步骤。
为了让最终用户更轻松,Teams使用机器学习来了解用户共享的内容的特征,以确保参与者在带宽受限的情况下体验最高的视频质量。如果检测到文档或幻灯片等静态内容,我们会针对可读性进行优化。如果检测到运动,那么会进行优化以获得流畅的播放体验。此检测在用户的 Teams客户端上持续运行,以便可以轻松地来回切换。为确保这种跨设备体验非常好,分类器针对硬件卸载进行了优化,并且能够实时运行,对 CPU 和 GPU 使用的影响最小。
此外,当用户在启用网络摄像头的情况下共享内容时,Teams 会根据每种内容类型的需求自适应地分配带宽,从而平衡对视频和共享内容的要求。 通过使用机器学习来训练使用不同网络特征和源内容的模型来改进此功能。这使 Teams 能够以更高的质量和帧速率传输视频,同时保持屏幕共享体验,同时使用相同的带宽。
如何在网络丢失期间提高质量?
Teams使用三种互补机制来防止网络丢失:
- 前向纠错 (FEC):微软有意引入数据包冗余,以便能够重建丢失的数据包。由于此过程会占用可用于改进源内容编码的带宽,因此微软会不断分析网络质量,以确定将保留多少可用带宽来解决 FEC 的破坏性数据差距。
- 长期参考帧:通常在视频编码中,对两帧之间的差异进行编码。这意味着在解码器端,使用前一帧作为参考来重建当前视频帧。如果一个帧由于网络丢失而无法解码,那么所有未来的帧也将无法解码。为了缓解这个问题,引入了“长期参考帧”以确保解码器可以继续,即使前一帧丢失。这些长期参考帧受到更严格的网络丢失保护,并且需要更多带宽进行编码。
- 重传:FEC 和参考帧都不能防止突发网络丢失的极端情况。在这种情况下,接收客户端请求发送客户端重新传输丢失的数据包。这种方法帮助我们恢复丢失的视频帧,而无需重新传输整个帧。
真正的挑战是平衡这三种方法,以最大限度地减少用于防止网络丢失的带宽,并最大限度地增加用于编码源内容的带宽。为了实现正确的权衡,微软使用来自遥测数据的数据驱动洞察力,了解网络特征及其对最终用户感知质量的影响。
不久前,由于网络限制,演示者很少使用视频和屏幕共享。 今天,AI 驱动的优化允许 Teams用户实现视频的好处,而不必担心带宽不足会影响他们的消息。