当前主流视频编码技术浅析

本文将简要介绍当下主流的互联网视频编码技术,并尝试从多个角度分析各项方案的优缺点,希望能为刚开始了解音视频开发领域的开发人员和应用厂商提供一个参考视角。

主流视频编码技术

H.264

诞生于 2004 年的 H.264 是今天互联网应用最为广泛、占据份额最大的视频编码技术标准。H.264 终结了旧时代视频编码规格众多、质量参差不齐的局面,提供了当时同等画质下最为出色的压缩比,并获得了业界几乎所有巨头的一致支持。经过十余年的推广应用,今天所有视频网站、应用、视频拍摄设备、播放设备均默认支持 H.264 的主要编码分支(Main level 到 High Level 5.1),其已成为业界无可争议的事实标准。

然而,成型于世纪初的 H.264 编码在今天已经难以满足新时代互联网视频服务的更高要求,为更多新一代解决方案的诞生创造了市场机遇。

优点

兼容性极佳;拥有最丰富的社区生态支持;在需求不高的场景中能够提供不错的压缩比;主流 CPU、GPU 与 DSP 等专有硬件均提供了良好的 H.264 硬件编解码支持。

缺点

在需求更高的场景(4k、8k、高帧率、HDR、VR)中压缩比明显不如新一代编码方案,带来更高的存储、带宽与成本需求。

私信我,领取最新最全C++音视频学习提升资料,内容包括(C/C++LinuxFFmpeg webRTC rtmp hls rtsp ffplay srs

 

H.265/HEVC

H.265 又名 HEVC(高效视频编码),诞生于 2013 年,是业界为 H.264 推出的换代方案。与 H.264 相比,HEVC 在同等画质下提供的压缩比可提升 50%-100%,同时对 4k、8k、HDR、高帧率视频等场景有着很好的支持能力。

在 PC 和智能手机等硬件厂商的推动下,HEVC 已成为采用率仅次于 H.264 的主流视频编码选项。近年生产的绝大多数智能手机都提供了 HEVC 硬件编解码能力,有效解决了消费端编解码 HEVC 对算力要求过高的问题。然而,由于谷歌选择支持 VP9 视频编码格式,使 HEVC 未能像 H.264 一样实现“大一统”的理想,也让更多厂商意识到了推动其他编码格式的市场机遇。

优点

与 H.264 相比能够提供同等画质下更高(50%-100%)的压缩比,能够很好地支持各类高需求应用场景。得到了主流硬件和设备厂商的一致支持,拥有广泛的软硬件生态环境。

缺点

未能获得全球最大的长视频网站 YouTube 的充分支持,YouTube 推荐用户采用 VP9 作为替代方案,对 HEVC 的全面普及是沉重打击。另一方面,HEVC 相较 H.264 的编解码算力需求提升了数倍乃至十倍以上,迫使视频服务厂商和云服务提供商提升硬件采购支出来弥补算力缺口,部分抵消了 HEVC 带来的成本下降优势。此外,厂商采用 HEVC 方案往往需要支付授权费用,这在业界普遍追求开放、开源的今天无疑是一大劣势。

AV1

VP9 的成功让谷歌等主推开放视频编码方案的组织大为振奋。在 VP9 远未达到生命周期末端时,谷歌就与其他厂商联合推出了 AV1 编码格式。AV1 的目标是将视频编码的压缩比再提升 50%-100%,并同时取代 HEVC 与 VP9,成为新一代视频编码方案的标准选项。各大厂商为 AV1 的生态发展注入了强大动力,让 2018 年发布的 AV1 在短短几年间就获得了极高的关注度与社区支持。由于 HEVC 的正统后继——H.266 VVC 标准推出时间较晚,且依旧需要授权费用,其声势明显被 AV1 压过一头。

优点

下一代视频编码标准,提供比 HEVC/VP9 高 50%-100%的压缩比,同时不需要授权费用。AV1 已经开始获得多家硬件厂商的支持,新一代智能手机、PC CPU/GPU 已开始提供 AV1 硬件编解码能力,为 AV1 的广泛普及提前铺设基础。包括 YouTube 在内的视频网站也开始尝试采用 AV1 解决方案,令 AV1 在新一代视频编码标准的竞争中取得了先发优势。

缺点

相比上代编码方案更高的算力需求再次限制了 AV1 的推广速度。另一方面,AV1 的技术方案与社区生态远未成熟,仍需一段时间的发展才能得到广泛认可。与此同时,AV1 必须面对 H.266/VVC 标准的强大竞争,能否扭转 VP9 的劣势,在视频拍摄等场景中击败 VVC 成为主流选项仍是未知数。

其他

除上述方案外,业界还存在其他一些视频编码标准,但基本都没有或尚未形成较大影响力。

应用开发者应如何选择

对于应用开发者而言,选择支持哪种视频编码方案是一个需要谨慎考虑的主题。首先,由于 H.264 的市场地位,任何应用都必须默认支持 H.264 作为基础视频编码选项。真正的困难在于需求更高的场景中应该如何选择。

  • 如果应用不存在或者只有很少场景中需要 4k、高帧率、HDR 等特性,开发者可以继续停留在 H.264 上,待将来需求增长后再做选择。

  • 如果应用服务端有大量高质量视频数据需要向用户提供,可以选择使用 HEVC 作为主要编码方案,以有效降低存储和带宽需求。这里要注意用户端设备必须普遍提供 HEVC 解码支持,否则仍需留在 H.264 方案上。

  • 如果云服务厂商提供支持甚至优惠选项,用户也有尝鲜需求和设备支持,可以试点应用 AV1 编码方案应用在少量极高质量(如 8k、120fps、HDR)视频场景中。

  • 考虑到很多终端用户设备尚不支持 VP9 硬件解码,不推荐使用 VP9 作为应用主要视频编码选项。

总结

过去十年来,视频编码标准领域逐渐从 H.264 一家独大转向了多种编码方案共存、共同竞争的局面。对于整体市场而言,更多竞争无疑能够打破垄断、带来更多选择,推动行业技术更快进步。展望未来,我们很可能会看到 H.264、HEVC、VVC、VP9、AV1 乃至更多编码方案共存的局面,应用开发者也需要为此做好准备,提前了解相关知识,根据自身情况作出最佳决策。

猜你喜欢

转载自blog.csdn.net/m0_60259116/article/details/124364156