作者:Miska Hannuksela
原文:https://www.nokia.com/blog/fast-forwarding-video-takes-more-than-a-swipe/
每当你在视频流中跳转到想要的场景、在稍后时间继续观看电影、切换电视频道,或是加入已经开始的视频会议时,你都在使用一种名为随机访问(random access)的视频解码功能。虽然如今难以想象没有这些功能的生活,但视频编码中的随机访问功能却经历了数十年的创新发展才得以实现。

视频编码中随机访问功能的演进
当今的视频压缩标准,包括高级视频编码(AVC,2003年)、高效视频编码(HEVC,2013年)以及通用视频编码(VVC,2020年)标准,都是是历经数十年国际协作的成果。每一代编解码器相较前代均实现了 50% 的比特率降低,且不影响图像质量。除卓越的压缩效率外,每项新编解码技术还在随机访问等功能领域带来突破性改进。
随机访问面临的一个关键技术挑战是,它以牺牲压缩效率为代价,因为它没有利用视频序列中帧之间的时间相关性。未压缩的视频由连续的静态图像组成。一秒钟的视频通常包含约 24 到 60 帧。最简单的随机访问形式是通过一种称为即时解码刷新 (IDR) 帧的特殊帧实现的,该帧独立于任何其他帧,并且其后不能跟依赖于 IDR 帧之前任何帧的帧。
干净的随机访问 (CRA) 帧可实现更复杂的随机访问形式。CRA 也独立于任何其他帧。但与 IDR 帧不同的是,CRA 帧之后的帧可能按显示顺序位于其之前,并且依赖于 CRA 帧之前的一个或多个帧,从而提高压缩效率 [ 1 ] 并确保不同帧之间的图像质量一致。
图 1展示了视频序列中 IDR 和 CRA 帧的示例。箭头表示帧间预测,这意味着每个帧被划分为多个块,然后通过指向参考帧中近似匹配的块进行编码。这样,帧间预测消除了帧之间的时间相关性。在图 1 中,预测箭头从可用的参考帧出发,指向帧间预测帧。

单个用户的网络吞吐量体验可能因多种原因而异,例如网络流量总量。当视频比特率超过网络吞吐量时,接收方没有足够的带宽进行实时播放,因此需要暂停播放以重新缓冲。为了避免此类中断,需要调整流式视频比特率,以确保其不超过网络吞吐量。相同的视频内容被多次编码,并提供具有不同分辨率和比特率的多个版本,播放器根据片段选择要流式传输的版本。每个片段都以 IDR 或 CRA 帧开头,以便可以解码。仅当编解码器支持不同分辨率的帧之间的帧间预测时,才能使用 CRA 帧。通过使用 CRA 帧代替 IDR 帧,所需的比特率最多可再降低 9% [ 2 ]。
在渐进解码刷新 (GDR)中,帧的内容会在若干帧内刷新,如图 2 所示。在 GDR 帧中,只有一小部分帧被压缩,且不进行帧间预测,因此从 GDR 帧开始解码时,可以正确恢复。在后续帧中,刷新区域要么被压缩,不进行帧间预测,要么仅使用前几帧中刷新的区域进行预测。因此,从 GDR 帧开始解码并逐渐覆盖整个帧时,可以正确重建刷新区域。
GDR 有助于避免 IDR 和 CRA 帧引起的暂时性比特率波动。因此,它能够实现极低的端到端延迟,非常适合云游戏等需要低延迟的应用,以及 5G 移动网络等提供低延迟传输的网络。

视频编码标准规定了所有符合标准的解码器必须实现的强制功能和可选功能,编码器可以在比特流中指示这些功能,但解码器无需支持。表 1 总结了视频编码标准中不同随机访问类型如何被启用为强制或可选。如您所见,就随机访问功能而言,VVC 无疑是最先进的编解码器。

诺基亚在提高随机接入能力方面处于领先地位
说到随机访问,VVC 无疑是最先进的视频编码标准,因为它支持包括 IDR、CRA 和 GDR 在内的所有类型。
从 AVC 到 VVC 乃至更远的未来,诺基亚从一开始就一直处于视频编码标准开发的前沿。诺基亚也是所有类型随机接入的先驱,例如 IDR [ 3 ]、CRA [ 4 ]、分辨率变化的 CRA [ 5 ] 和 GDR [ 6 ] 等部分参考标准化贡献。
除了规范随机访问的比特流语法和解码器操作外,我们还帮助整个行业将 GDR 融入编码器。虽然在解码器中实现 GDR 相对简单,但它需要非常复杂的非标准化编码器操作。诺基亚发表了多篇论文(例如 [ 7 ])并进行了演示,介绍了如何在 VVC 编码中实现 GDR,并在 VVC 参考编解码器[ 8 ] 以及Fraunhofer 的 VVenC 编码器中提供了 GDR 源代码。
随着世界对视频的需求不断增长,我们的发明者不断致力于改进标准,并与我们的行业合作伙伴合作,确保所有人都能享受无缝流媒体。
参考
[1] A. Fujibayashi and T. K. Tan, “Random access support for HEVC”, JCTVC-D234, Jan. 2011.
[2] R. Skupin, C. Bartnik, A. Wieckowski, K. Suehring, Y. Sanchez, and B. Bross, “Constrained RASL encoding for bitstream switching”, JVET-W0133, July 2021.
[3] M. M. Hannuksela, “Signaling of “clean” random access positions”, JVT-C083, May 2002.
[4] Y.-K. Wang and M. M. Hannuksela, “On random access”, JVT-D097, July 2002.
[5] M. M. Hannuksela and A. Aminlou, “Use cases and proposed design choices for adaptive resolution changing (ARC)”, JVET-M0259, Jan. 2019.
[6] Y.-K. Wang and M. M. Hannuksela, “Gradual decoder refresh using isolated regions”, JVT-C074, May 2002.
[7] L. Wang, S. Hong, and K. Panusopone, “Gradual decoding refresh for Versatile Video Coding“, IEEE International Conference on Image Processing, Sep. 2021.
[8] S. Hong, L. Wang, and K. Panusopone, “GDR software”, JVET-U0097, Jan. 2021.
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。