Google工程师Debargha Mukherjee访谈:AV1视频标准发展历程、关键技术优势及评估新编解码器的实用建议
Mark Donnigan
总结:
Debargha Mukherjee,Google首席工程师,深入探讨了AV1视频编解码器从2015年到2018年的发展历程、其核心优势以及未来方向。
主要内容包括:
- AV1的历史沿革:起源于Google收购的On2 Technologies及其VP8,随后发展出VP9,并最终在2015年由Google、Netflix、亚马逊、Facebook、微软、思科和Mozilla等多家公司共同成立AOM(开放媒体联盟)并发布AV1。
- 协作与开发模式:AOM联盟采用每周电话会议与半年一次的线下会议结合的方式,通过良性竞争推动技术进步,避免专利费用成为政治阻碍。
- AV1的核心技术优势:
- 先进的循环内滤波:包括在编码分辨率下应用的去块效应、CDEF(约束定向增强滤波器),以及在升采样分辨率下应用的循环恢复工具(维纳滤波器和引导滤波器),支持内置超分辨率。
- 屏幕内容编码工具:专为屏幕共享等实时通信(RTC)应用设计,包含调色板模式、帧内块复制模式和身份变换类型,这些工具被纳入主配置文件,便于硬件支持。
- 丰富的复合预测模式:通过多种方式结合不同预测器,例如基于像素距离、参考帧距离,以及楔形模式(将块划分为不同区域应用不同预测),显著提升编码效率。
- 评估新编解码器的建议:避免根据早期慢速编码器性能草率下结论,鼓励与开发团队直接沟通以获取最佳配置和理解其真实潜力。
Google首席工程师Debargha Mukherjee介绍了AV1视频标准的发展历程,以及其背后关键的行业合作。
- Google收购On2 Technologies和VP8开源 [00:00:51]
- 2010年,Google收购了On2 Technologies,获得了其VP8编解码器。
- Google将VP8开源并免费提供专利使用权,这标志着WebM项目的诞生,VP8至今仍广泛应用于实时视频通信。
- VP9的开发与YouTube的采用 [00:01:25]
- VP8发布后,Google随即开始开发VP9,目标是在与HEVC同期(2012-2013年)发布,并实现相同的编码效率。
- VP9的性能良好,YouTube在2013年开始采用VP9进行视频流传输,推动了VP9的广泛普及,每日视频消费量达到数十亿。
- AOM联盟的成立与AV1的诞生 [00:02:48]
- 鉴于VP9的成功,Google开始考虑VP10。
- 同时,Netflix、亚马逊、Facebook、微软等在线视频公司对开放、免版税的编解码器表现出强烈兴趣。
- 2015年,行业内启动谈判,最终于2015年底成立了AOM(Alliance for Open Media,开放媒体联盟)。
- 联盟决定不再单独发布VP10,而是将Google的VP10项目与思科的Thor、Mozilla的Daala项目合并,共同开发名为AV1的新编解码器。
- AV1的开发于2016年初正式启动,由Google、思科、Mozilla、微软、Netflix等多家公司共同参与。
- AV1的比特流于2018年中期最终确定,比HEVC和VP9晚了大约五年。
- AV1实现了比VP9高出约30%的压缩率,成为当时标准化编解码器中压缩效率最佳的选择。
Debargha详细阐述了AV1在开发过程中不同公司如何协作,以及AV1所包含的创新工具。
- 联盟内部的协作与竞争 [00:05:22]
- 与传统MPEG会议模式(每三个月一次线下会议,期间激烈争论)不同,AOM联盟采取每周电话会议和大约每半年一次的线下会议模式。
- 线下会议主要用于解决悬而未决的提案和实验结果。
- 这种模式虽然初期结构不如MPEG严谨,但允许更快地推进开发,使得AV1能在VP9发布五年内完成。
- 来自不同公司的提案之间存在健康的技术竞争,互相推动改进,使得最终方案更快、更简洁。
- 由于是非营利性的免版税标准,开发过程中排除了专利政治斗争,决策主要基于技术考量。
- 选择VP9作为基础代码库的原因 [00:07:36]
- 在AV1开发初期,VP10的代码库已经准备就绪,且在编码效率上已比VP9提升10-15%。
- Daala主要是一个图像编解码器,其代码库无法直接用于视频编解码。
- Thor虽然适用于实时视频会议等快速编码场景,但功能不如VP9丰富,无法满足高性能VOD(视频点播)的需求。
- 因此,VP9(经过某些转换类型修改后的“VP9+”)被选作AV1的起始代码库,并在此基础上逐步整合了VP10、Thor和Mozilla的新工具。
- AV1的三个核心优势工具 [00:10:00]
- AV1仍是基于混合运动补偿的视频编解码器,而非完全基于机器学习的新范式。其创新主要体现在以下三个主要领域:
- 1. 循环内滤波(In-Loop Filtering) [00:11:17]
- 内置超分辨率 [00:11:32]:AV1允许以低于原始分辨率(例如1080p视频编码为720p)进行编码。解码器在重建帧时,会先在低分辨率下进行去块效应处理,然后将其放大到原始分辨率,并通过进一步的滤波(“超分辨率”)来提升质量。这使得预测过程能够跨分辨率进行。
- CDEF(约束定向增强滤波器) [00:14:06]:这是一个由思科和Mozilla联合贡献的新工具。它能识别小图像块中的主导方向,并沿着该方向进行滤波,同时对正交分量进行处理,类似于根据主导方向进行定向滤波。
- 循环恢复工具(维纳滤波器和引导滤波器) [00:14:49]:这些工具在升采样分辨率下应用,旨在通过学习算法进一步提升图像质量。
- 维纳滤波器:根据输入和目标源帧学习滤波参数,这些参数会随比特流发送,解码器使用这些参数进行滤波,使输出更接近原始源。AV1中使用的是更易实现的“可分离维纳滤波器”。
- 引导滤波器:这是一种在计算机视觉领域常用,但首次应用于视频编解码器的工具,其使用方式也极具创新性。
- 整个循环内滤波管道集成了多项创新工具,显著提升了AV1的艺术水平。
- 2. 屏幕内容编码工具(RTC应用) [00:18:24]
- 虽然新编解码器通常首先应用于VOD(因为时间不敏感,可以投入大量计算),但AV1的实时通信(RTC)应用是其早期主要驱动力,尤其是屏幕共享。
- 这些工具被纳入AV1的主配置文件,这意味着任何符合AV1标准的硬件解码器都必须支持它们,使其比HEVC的屏幕内容扩展更易于硬件实现。
- 调色板模式 [00:19:06]:适用于屏幕或图形内容中颜色数量有限的块(如文本通常只有少量颜色),通过发送像素颜色掩码而非传统编码来高效传输。
- 帧内块复制模式 [00:20:02]:对于纯屏幕内容非常有效,尽管其在混合内容中表现不佳且硬件支持有一定难度,但作为主配置文件的一部分,它仍能方便地支持屏幕内容应用。
- 变换类型(身份变换) [00:21:09]:对于具有锐利边缘的文本或图形内容,传统的针对自然图像优化的变换效果不佳。AV1允许使用“身份变换”跳过变换过程,直接编码像素差异,这对于大部分相同而仅边缘变化的屏幕内容更为高效。
- 3. 复合预测模式 [00:26:39]
- AV1在预测模式上投入了大量精力,特别是复合模式。
- 复合帧间模式:结合两个不同的预测器生成新的预测。例如,可以基于像素距离或参考帧距离进行组合,或使用“楔形模式”(将块划分为两部分,每部分使用一个预测器,并在边缘处进行混合)。
- 帧间-帧内复合模式:例如,在楔形模式中,楔形的一边可以是帧内预测,另一边是帧间预测,并在此边缘进行混合。还有“帧间-帧内平滑预测器”,它在块内逐渐混合帧内和帧间预测器的权重。
- 这些复合预测模式虽然单独带来小幅增益,但作为一个整体能带来显著的编码增益,并推动硬件发展以支持更复杂的预测。
Debargha强调了正确评估新编解码器的重要性,并提供了实用建议。
- 避免基于早期性能的快速判断 [00:31:26]
- AV1在2018年最终确定时,编码器侧的优化不足,导致其初始性能(如速度)远低于HEVC软件。
- 尽管性能在短时间内迅速提升,但“千倍慢”的最初印象却根深蒂固,这导致了对AV1的误解。
- 新编解码器发布时,人们常关注其在VOD场景下的压缩效率提升(如10-40%),但这往往基于非常慢速的编码器。对于像YouTube这样每小时上传数百万视频的平台,或实时场景,编码复杂度是一个巨大挑战。
- 与开发人员沟通的重要性 [00:32:47]
- 当评估新编解码器(无论是AV1、EVC还是VVC)时,如果结果不符合预期或宣传,最有效的方式是直接联系开发人员。
- 许多负面测试结果是由于使用了错误的参数配置造成的,例如无意中关闭了乱序编码等关键优化。
- 开发人员乐意提供帮助,因为他们希望自己参与开发的标准能够成功。
- 现在,AV1的代码库和文档已经比发布之初完善得多,能提供更多信息。