一文读懂 VVC 视频编码标准:从原理到应用
在当今数字化时代,视频内容的数量和基于多媒体信息的应用数量与日俱增。据 Cisco 的研究,视频内容占全球互联网流量的 82%,视频流媒体占互联网流量的 58%。如此庞大的视频流量,对视频编码技术提出了更高的要求。本文将为你详细介绍最新的视频编码标准 —— 多功能视频编码(Versatile Video Coding,VVC)。
一、VVC 诞生的背景
过去二十年,消费电子应用取得了令人瞩目的发展,多媒体应用,尤其是视频编码、广播、存储和解码,发挥着关键作用。随着不同消费电子产品对多媒体内容的大量消耗,人们对视频质量的要求越来越高,如更高的分辨率(大于 4K)、更高的质量(HDR 或 10-bit 分辨率)和更高的帧率(100/120 帧每秒),同时还希望这些功能能集成在资源有限、电池电量有限的设备中。因此,开发新的视频编码标准,在合理增加计算负载的情况下提高压缩率和其他重要特性,成为了一项挑战 。
ITU-T 和 ISO/IEC 的联合视频编码团队(JCT-VC)从 2010 年开始致力于开发更高效的视频编码标准,高效视频编码(HEVC)标准就是这一合作的成功范例,它相比之前的视频标准 —— 高级视频编码(AVC),在相似视觉质量下可将比特率降低 50%。而 VVC 则是最新的视频标准,代表了当前的技术前沿。
二、VVC 的应用场景和标准集成
VVC 标准覆盖的应用范围比以往的视频编解码器更广泛,这对基于 VVC 的解决方案的部署成本和互操作性问题可能产生积极影响。它既可以用于改进现有的视频通信应用,也能支持依赖新兴技术的新应用。
为了满足市场需求并实现大规模部署,VVC 需要得到面向应用的标准开发组织(SDO)规范的引用和采用。例如,数字视频广播(DVB)正在努力将下一代视频编码解决方案纳入其规范,预计在 2022 年初发布的新版本 TS-101-154 规范将支持 VVC 用于 8K 电视应用;第三代合作伙伴计划(3GPP)也在研究 VVC 在 5G 应用中的采用情况 。
此外,VVC 在许可结构上采取了不同的方法,创建了媒体编码行业论坛(MC-IF)来处理许可和商业开发等非技术问题,将补充增强信息(SEI)消息的规范转移到名为 VSEI(Versatile SEI)的专用规范中,并在其高级语法(HLS)中定义了通用约束信息(GCI)结构,以应对特定知识产权许可问题。
三、VVC 编码工具详解
VVC 编码器基于传统的混合预测 / 变换编码,由七个主要模块组成:亮度正向映射、图像划分、预测、变换 / 量化、逆变换 / 量化、环路滤波和熵编码。
- 图像划分:将图像分割为大小相等的编码树单元(CTU),最大 CTU 尺寸为 128×128 样本,可根据视频信号是单色还是包含三色分量,由一个或三个编码树块(CTB)组成。CTU 按光栅扫描顺序从左上角到右下角处理,每个 CTU 根据多类型树(MTT)划分方案递归分割为更小的矩形编码单元(CU),CU 大小范围为 64×64 到 4×4。在帧内切片中,亮度和色度分量可根据各自的编码树递归分割,VVC 还引入了二叉树(BT)和三叉树(TT)分割,使 CU 可以是矩形。
- 帧内编码工具:利用局部图像纹理中的空间相关性,VVC 提供了一系列编码工具。例如,引入双树工具,允许亮度和色度通道类型有单独的划分树;帧内预测模式(IPM)扩展到 67 种,通过包含六个 IPM 的最可能模式(MPM)列表进行编码;宽角帧内预测(WAIP)工具可自适应地为非正方形块移动 65 个角度方向的 IPM;引入多参考线(MRL)工具,改善帧内预测参考;位置相关预测组合(PDPC)工具将块的预测信号与其未滤波和滤波的边界隐式组合;帧内子分区(ISP)工具可将帧内块分割为两个或四个子块;矩阵基帧内预测(MIP)工具通过基于 AI 的数据驱动方法设计,用参考线的矩阵乘法代替传统 IPM 的方向投影;交叉分量线性模型(CCLM)工具用于利用亮度和色度通道之间的局部相关性 。
- 帧间编码工具:依赖于从解码图像缓冲区(DPB)中先前重建的图片对运动和纹理数据进行帧间预测。VVC 支持平移模型和仿射模型两种运动模型,运动向量精度更高,支持多种运动编码模式和新的运动候选类型,如历史运动向量预测(HMVP)和成对 MV。在运动补偿方面,采用不同的滤波器和相位,还支持参考图片重采样(RPR)工具,以适应网络带宽变化和可伸缩性编码。对于 360° 视频内容,水平环绕运动补偿可减少接缝伪影。在运动预测混合方面,支持多种新模式,如具有 CU 级权重的双向预测(BCW)和几何分区模式(GPM)。此外,还引入了组合帧内 - 帧间预测(CIIP)和基于光流的预测增强步骤,如双向光流(BDOF)和预测精修与光流(PROF) 。
- 变换和量化:变换模块由多变换选择(MTS)和低频非分离变换(LFNST)两个块组成。MTS 涉及离散余弦变换(DCT)-II、DCT-VIII 和离散正弦变换(DST)-VII 三种变换类型,根据块大小和类型选择合适的变换,以最小化率失真成本。LFNST 通过矩阵乘法在编码器侧的正向主变换和量化之间应用,有不同大小的内核和变换集,根据帧内预测模式选择 。
- 环路滤波:为减轻编码伪影,VVC 定义了四个环路滤波器:去块滤波器(DBF)、样本自适应偏移(SAO)、自适应环路滤波器(ALF)和交叉分量自适应环路滤波(CC-ALF)。此外,亮度映射与色度缩放(LMCS)工具在帧间模式下对亮度预测信号进行亮度映射,并在逆变换和逆量化后对残差进行色度缩放。DBF 用于减少块边界的块效应,SAO 对去块后的样本进行分类并添加偏移值,以减轻振铃伪影和校正局部平均强度变化,ALF 和 CC-ALF 分别对亮度和色度样本进行基于块的线性滤波和自适应裁剪 。
四、VVC 的复杂度和编码性能
为评估 VVC 编码工具的优势,进行了 “工具关闭” 测试,使用一组 42 个 UHD 序列,在随机访问(RA)配置下,使用 VVC 参考软件(VTM11.0)进行评估。结果表明,当所有新工具都禁用时,与启用所有工具的设置相比,PSNRYUV 的 BD-rate 变化为 43.18%,VMAF 为 30.22%,MS-SSIM 为 27.67%,编码和解码运行时间分别变化 19% 和 49%,这证明了 VVC 新工具带来的显著编码性能提升。同时,大多数评估工具的结果与 JVET 文档中的评估结果一致,说明工具性能并非针对 JVET 测试序列优化。例如,LMCS 在本文中的增益低于 JVET 文档,表明该工具需要非常准确和依赖内容的调优;SAO 在客观指标上增益较小,但对主观质量很重要,且实现成本极低,在 ALF 禁用时非常有用 。
从工具类别来看,所有工具类别对整体编码增益都有重要贡献。在解码器中,最耗费计算资源的部分是环路滤波和帧间编码(运动补偿、子块运动补偿和预测增强);在编码器中,最耗费时间的是帧间部分,占编码时间增加的 2/3,另一大部分编码运行时间由分区消耗,但本文未评估和报告 。
五、VVC 的实时实现
目前,VVC 有工业和开源实现,促进了端到端价值链的出现。
- OpenVVC 实时解码:世界上第一个用 C 语言从头开发的实时软件 VVC 解码器,支持 VVC 主配置文件工具,对最复杂的操作在 Intel x86 和 ARM Neon 平台上进行了单指令多数据(SIMD)优化,支持切片、瓦片、波前和帧的并行解码,与知名视频播放器如 FFplay、GPAC 和 VLC 兼容 。
- VVdeC 实时解码:由 Fraunhofer Heinrich Hertz Institute 开发,自 2020 年 10 月开始致力于提供公开可用的优化 VVC 软件解码器,支持多核架构,针对 x86 平台优化,利用功能(多线程)和数据并行化(SIMD 指令),与 VTM 解码器相比,在 x86 平台上解码时间减少了 50% 到 90% 。
- VVenC 实时编码:由 Fraunhofer Heinrich Hertz Institute 开发的开源快速 VVC 编码器,用 C++ 语言编写,通过针对 Intel x86 平台的 SIMD 指令进行低级优化,支持并行处理,定义了五个预设,在编码效率(质量)和速度(复杂度)之间提供广泛的权衡,还集成了基于 XPSNR 视觉模型的感知优化,以提高主观视频质量,支持帧级单通道和双通道可变比特率(VBR)编码 。
- TitanLive 实时编码和封装:ATEME TitanLive 解决方案提供基于软件的多种音视频编码、封装和传输标准实现,用于广播和 OTT 前端部署。通过升级组件支持 VVC,利用 VVC 和 HEVC 的结构相似性,升级 HEVC 工具以符合 VVC 规范,实现 VVC 实时编码,相比 HEVC 有 10% 到 15% 的增益,还升级了打包器以支持 VVC 封装到 MPEG2-TS 和 ISOBMFF 。
六、VVC 的首次商业试验
- 世界首次 VVC 无线广播:2020 年 6 月进行,由 ATEME 提供编码和封装单元,SES 提供卫星转发器和网关,VideoLabs 提供媒体播放器(VLC),IETR 提供 VVC 实时解码库。UHD 源用 VVC 编码,封装在 MPEG-TS 中,通过卫星传输,由 VLC 播放器利用 OpenVVC 解码器实时解码显示 。
- 世界首次 VVC OTT 交付:2020 年 6 月进行,ATEME 提供编码单元,Telecom Paris 提供 DASH 打包器(MP4Box)和播放器(MP4Client),IETR 提供 VVC 实时解码库。UHD 源用 VVC 编码,格式化为 ISOBMFF mp4 文件,封装成 DASH,通过互联网推送到源服务器,由 MP4Client 利用 OpenVVC 解码器解复用和播放 。
- 世界首个 VVC 4K 直播 OTT 频道:2020 年 9 月进行,ATEME 提供编码单元,Telecom Paris 提供 DASH 打包器和播放器,IETR 提供 VVC 实时解码库,Akamai 提供支持 HTTP 块传输编码的内容交付网络(CDN)基础设施以实现低延迟。输入视频由 TitanLive 平台实时编码,进行低延迟 CMAF 打包,推送到 Akamai CDN,由 GPAC 播放器播放,实现低延迟交付 。
七、VVC 的未来展望
VVC 作为最新的视频编码标准,在编码性能上有显著提升,虽然带来了一定的复杂度增加,但随着实时实现技术的不断发展和商业试验的成功进行,其在消费电子产品中的广泛应用前景十分可观。可以预见,在不久的将来,VVC 将融入大多数消费电子设备,为我们带来更高质量、更高效的视频体验。