av1:为互联网提供开放免费的视频编解码工具

LiveVideoStack_ LiveVideoStack_     2022-12-01     522

关键词:


从学术研究到进入工业界,Zoe Liu一直在算法和音视频领域,目前在谷歌编解码团队为编解码器AV1做开发支持。Zoe畅谈了评定编解码器的标准,以及AV1的最新进度。本文是『下一代编码器』系列采访之一,欢迎自荐或推荐技术人加入『下一代编码器』系列采访,请邮件editors@livevideostack.com。


文 / Ant


LiveVideoStack:请简要介绍下自己,以及目前主要的工作方向,对哪些技术或领域感兴趣?10多年来一直做多媒体相关的研发,是巧合吗,还是兴趣使然?


Zoe Liu:我目前在谷歌(Google)做软件工程师,主要从事视频编码与视频通信算法设计与实现。曾在美国贝尔实验室(Bell Labs), 诺基亚研究中心(Nokia Research Center), 以及惠普实验室(HP Labs)等处从事理论算法研究,后转入工业届,参与了如下视频通话产品的设计与推出:苹果(Apple)的FaceTime,谈客 (TangoMe)Video Calls,以及 谷歌眼镜(Google Glass)专属Hangouts Video Calls。目前在谷歌从事下一代开源免版权费(Open Source, Royalty Free)的AV1视频编码的标准制作。从学校到现在一直从事视屏编码跟视频通信方面的工作,有机缘巧合,也有兴趣使然。


LiveVideoStack:什么样的编解码器是一个好的编解码器?视频质量、码率、算法复杂度、对数据丢失或错误的鲁棒性等。


Zoe Liu:视频编解码发展的根本还是在于视频压缩效率的不断提高,也就是在一定视频质量下追求最低可能的码率,亦或在一定视频码率下追求最佳视频质量。视频质量的评测,传统上还是使用峰值信噪比,尽管这一指标在很多情形下与人眼主观的评测结果不能够一致的吻合。视频质量评测本身就是一个非常活跃的研究领域。


视频产品不同的应用场景,决定了视频编解码器的评估策略也不尽相同。在视频广播,视频直播等领域,解码器的解码效率和性能是关键环节之一。在视频通话,视频会议等应用场景,编码器的效率跟性能同样关键。目前视频码流都有关键帧的周期性嵌入。关键帧均采用帧内预测,其编解码是与其他帧独立,因此可以用于同步帧,有效的恢复纠错,但通常也会消耗大量的码率。除关键帧的采用之外,另一比较有效的容错策略是利用数据链路层的ACK/NACK结合视频编码的长距离参考帧,一旦网络出现错误(由于网络拥塞造成的包丢失),可利用确认成功传送的参考帧做帧间预测产生同步帧,编码效率会显著提升。但ACK/NACK的发送与接收取决于网络的往返延迟时间等状态参数。其他容错传输,比如向前纠错编码(FEC),在网络丢包概率小于一定限度的情形下十分有效,丢包严重时纠错性能则大大下降。编解码器的编码效率与其容错能力通常是相互矛盾的。编码效率的算法大多得益于多种预测与基于上下文(context-based)的编码工具的采用,而这些工具对于网络错误非常敏感。所以任何一款编解码器的研制,都会以牺牲一定的编码效率来增强其容错能力。


LiveVideoStack:你在LiveVideoStackCon上的分享AOM联盟以及AV1编解码器,能否在这里review一下?


Zoe Liu:首先介绍了我们在谷歌的视频编码团队。我们团队隶属于Chrome Media部门。Chrome Media的工作使命在于为互联网上的多媒体应用提供开放和免费的多媒体压缩技术。视频方面,我们的产品主要有VP8,VP9,以及AV1,其中AV1是目前和开放媒体联盟(AOM)的合作伙伴共同开发的。除视频之外,我们的产品还包括静态图像压缩标准WebP,音频编码器Opus,以及专门为3D图形数据研发的Draco编码软件。


多样化的视频应用在近几年呈现井喷的趋势,目前视频应用提供者的背景也是千差万别,在考虑压缩软件时,对成本和需求的考量也变得多样化了,这就是为什么压缩行业在单一的国际标准之外也需要产品的多元化,让用户来作出适合自己的选择。


谷歌一直以来都在坚持一个理念:所有奠基互联网应用的技术,应该是开放的、免费的,比如Chrome浏览器,Android系统就是这一理念下的实例。先进的开源、免费视频编解码技术,可以带来视频相关领域最大可能的发展,尤其为小型内容所有者以及相应企业在互联网激烈的竞争年代,提供更多平等的机会,与运营的大型公司平等抗衡,从而促进更加丰富、多样化的互联网络市场的发展。


2013年,VP9的诞生,在压缩效率上达到与H264相比节约50%的码率性能,除了基本的8比特、420格式外,同时支持更高像素精度和多种颜色空间采样格式。到现在为止,数十亿的终端设备支持VP9;Chrome,火狐,Edge,以及Opera等浏览器均支持VP9;在手机上,4.4或更高版本的安卓系统也支持VP9。在电视、游戏机、数字电视棒等家庭娱乐设备上VP9也有非常广泛的支持。


VP9最初的客户是谷歌的视频分享网站YouTube。从2013年到现在,除了大幅降低带宽成本外,VP9给YouTube的业务创造了更多的机会。在投入使用的第一年,基于VP9压缩的视频在YouTube上播放时长即达到25亿小时。目前YouTube上VP9视频用户,日均观看达到20多亿次。采用VP9压缩,使得播放起始延迟时间(首屏耗时)大大降低(平均降低15%),与此同时,缓冲效率大大提高。在成熟的在线视频消费市场,VP9使得YouTube市场占有率提高了25%,在尚未成熟的市场则提高了100%。特别是在受制于带宽限制、尚未成熟的市场中,YouTube高清视频在VP9成为主导编解码后,播放数量提升高达25%。


2015年,谷歌推进了开放媒体联盟(AOM)的创立,致力于开发开源、免费版权的新一代媒体格式,以及相应的编解码技术。目前,AOM董事会成员已经涵盖了Adobe,Amazon,AMD,Broadcom,Cisco,Facebook,Google,Hulu,IBM,Intel,Microsoft,Mozilla,nVIDIA,Netflix,nVidia等33家以上的技术巨头。


LiveVideoStack:对于应届生或从其他研发领域转行学习编解码、多媒体开发的技术人,有哪些建议?能否推荐一些系统学习编解码、多媒体开发的图书、资料?


Zoe Liu:目前流行编解码技术的基本框架是帧间运动矢量预测+二维变换+熵编码。当然人工智能的发展会不可避免的更新或者颠覆这一框架。了解编解码技术,国内在微博、微信以及知乎平台上都有很好的总结性文章,深入浅出,比阅读书籍会上手快许多。如果需要进一步了解编解码的各个模块与技术细节,最好具备图像处理、信号处理、信息理论的一些基本知识。建议可以阅读IEEE期刊上的一些关于H264/HEVC/VP9的总结性论文。目前视频编码开源代码很多,可以下载试运行,从而对编解码有更加直观的概念。


关于受访者


谷歌(Google)软件工程师,主要致力于视频编码与视频通信的算法设计与实现。曾在美国贝尔实验室(Bell Labs), 诺基亚研究中心(Nokia Research Center), 以及惠普实验室(HP Labs)等处从事理论算法研究,后转入工业届,尤其参与了如下视频通话产品的设计与推出:苹果(Apple)的FaceTime,谈客 (TangoMe)Video Calls,以及 谷歌眼镜(Google Glass)专属Hangouts Video Calls。目前在谷歌从事下一代开源无版权费(Open Source, Royalty Free)的AV1视频编码的标准制作。


Zoe Liu 谷歌(Google)软件工程师


本文是『下一代编码器』系列采访的第五篇,该系列采访将围绕视频编解码器领域的工业界与学术界的工程师,探讨编解码器的演进与应用。欢迎自荐或推荐技术人加入『下一代编码器』系列采访,请邮editors@livevideostack.com


LiveVideoStack招募社区编辑


LiveVideoStack是专注在音视频、多媒体开发的技术社区,通过传播最新技术探索与应用实践,帮助技术人员成长,解决企业应用场景中的技术难题。如果你有意为音视频、多媒体开发领域发展做出贡献,欢迎成为LiveVideoStack社区编辑的一员。你可以翻译、投稿、采访、提供内容线索等。


通过contribute@livevideostack.com联系,或在LiveVideoStack公众号回复『社区编辑』了解详情。

聊聊视频中的编解码器,你所不知道的h264h265vp8vp9和av1编解码库

...h265/vp8/vp9编解码库吗?我们日常生活中使用最广泛的五种视频编码:H264(AVC)、H265(HEVC)、vp8、vp9、av1都分别是什么?由哪些组织/公司实现的?编解码库的授权协议都是什么?他们又分别有什么优点?今天就让博主带领诸位小伙伴... 查看详情

聊聊视频中的编解码器,你所不知道的h264h265vp8vp9和av1编解码库

...vp8/vp9编解码库吗?我们日常生活中使用最广泛的五种视频编码:H264(AVC)、H265(HEVC)、vp8、vp9、av1都分别是什么?由哪些组织/公司实现的?编解码库的授权协议都是什么?他们又分别有什么优点?今天就让博... 查看详情

视频的编解码-编码篇

...用CPU资源,效率低下,俗称软编解码.而苹果在2014年的iOS8中,开放了VideoToolbox.framwork框架,此框架使用GPU或专用的处理器来进行编解码,俗称硬编解码.而此框架在此之前只有MACOS系统中可以使用,在iOS作为私有框架.终于苹果在iOS8.0中得... 查看详情

webrtc视频编解码类型的选择vp8h264还是其他?(openh264编码,ffmpeg解码)

...P9添加到Firefox。微软当他们将Edge切换到Chromium时,他们“免费”获得了它。还有苹果……嗯……苹果。VP9应该在他们的Safari技术预览中,但主要是因为使用VP9的GoogleStandiaApple决定将HEVC作为他们自己的可选编解码器添加到WebRTC-只... 查看详情

rte领域的发展,为视频编解码标准带来哪些新变化?丨devfordev专栏

本文为「DevforDev专栏」系列内容,作者为声网资深视频算法负责人戴伟。01视频编解码标准的历史和现在1990年左右H.261标准的制定,开启了视频编解码标准化的历程。经过30多年的努力,视频的编码效率得到了极大幅... 查看详情

选择用于屏幕录制的视频编解码器

...样,哪种视频编码和容器格式更适合屏幕录制?请为两者提供建议:主副本(用于编辑和存档。(几乎)无损)分发副本(高压缩,损失可接受)需要考虑的要点:高品质视频 查看详情

移动通信最先进的音频编解码器evs及用好要做的工作

...移动语音通信的竞争对手是OTT(OnTheTop)语音,OTT语音是互联网厂商提供的服务,一般免费,如微信语音。目前语音通信技术上就分成了两大阵营:传统通信阵营和互联网阵营,互相竞争,推动着语音通信技术的发展。具体到编... 查看详情

你会在你的webrtc应用程序中使用哪种视频编解码器呢?

当为WebRTC应用程序来选择正确的视频编解码器已经成为了一件非常棘手的事儿时...你是应该使用VP8?H.264?VP9?还是AV1?或者HEVC呢? 文/TsahiLevent-Levi原文链接/https://bloggeek.me/webrtc-video-codec/  WebRTC视频编解码器–小提示 We... 查看详情

视频物联网智能编码,机器视觉编码新体系,aiimagecodec,走向实用的ai图像编解码...

...;自主研发超大规模视频物联网,基于智能物联网终端提供多媒体通信服务,支持电信级可靠性的超高清视频通信、视频监控、智能云广播、智能对讲等功能;为解决物联网终端低功耗、低算力、低成本限制,支持... 查看详情

常用视频格式与视频编解码标准介绍转

...常见的VCD便是一例。其二是流式视频文件,这是随着国际互联网的发展而诞生的后起视频之秀,比如说在线实况转播,就是构架在流式视频技术之上的。流式视频(StreamingVideo)采用一种“边传边播”的方法,即先从服务器上下载... 查看详情

音视频编解码流程与如何使用ffmpeg命令进行音视频处理(代码片段)

...既可以使用它的API对音视频进行处理,也可以使用它提供的工具,如ffmpeg,ffplay,ffprobe,来编辑你的音视频文件。本文将简要介绍一下FFMPEG库的基本目录结构及其功能,然后详细介绍一下我们在日常工作中,如... 查看详情

视频编解码

所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。视频流传输中最为重要的编解码标准有国际电联的H.261、H.263、H.264,运动静止图像专家组的M-JPEG和国际标准化组织运动图... 查看详情

附加:ffmpeg概念理解

...其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的... 查看详情

视频编解码的理论和实践2:ffmpeg视频编解码

近几年,视频编解码技术在理论及应用方面都取得了重大的进展,越来越多的人想要了解编解码技术。因此,网易云信研发工程师为大家进行了归纳梳理,从理论及实践两个方面简单介绍视频编解码技术。 相关阅读推荐《视... 查看详情

【ios】ffmpegsdk开发手册

...其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的... 查看详情

h264转av1后大小相差多少

...一定格式,对视频编码层输出的数据进行打包和封装,并提供包头(header)等信息,以在不同速率的网络上传输或进行存储VCL层(VideoCodingLayer):视频编码层,主要用于数据编码,NAL提供围绕VCL的一层保护。在H.265/HEVC中,NAL单元... 查看详情

HTML5 视频编解码器支持

...些视频格式浏览器应该在视频中支持标签。用户代理可以免费支持他们认为的任何视频格式合适。HTML5是草稿格式,这可能会改 查看详情

平台支持vp8硬件解码,播放器就可以支持吗

...AWebRTC是一个实时的视频通信功能,Android平台上的Chrome也提供了支持,在Chrome29之后WebRTC功能趋于稳定,所以在之后的版本中默认被打开。也就是说不需要在”chrome://flags”中手动去打开该功能。本节主要介绍一下android平台上Chrom... 查看详情