本页使用了标题或全文手工转换

AOMedia Video 1

维基百科,自由的百科全书
跳到导航 跳到搜索
AOMedia Video 1
AV1 logo 2018.svg
开发者开放媒体联盟
初始版本2018年3月28日,​3年前​(2018-03-28
最新版本
1.0.0 Errata 1[1]
2019年1月9日,​2年前​(2019-01-09
格式类型压缩影片
专门由
延伸自
标准AOM AV1
自由格式
网站aomedia.org/av1-features/

AOMedia Video 1(简称AV1)是一个开放免专利影片编码格式,专为通过网络进行串流传输而设计。它由开放媒体联盟(AOMedia)开发,该联盟由半导体企业、随选视讯供应商和网页浏览器开发商于2015年成立。互联网工程任务组(IETF)也将这项工作标准化为互联网视频编解码器(NetVC英语NetVC[2]

AV1的目标是取代其前身,即由Google开发的VP9视频压缩格式,并与动态图像专家组(MPEG)领导开发的高效率视讯编码(HEVC)竞争[3][4]

AV1可以与Opus音频格式一起封装在WebM容器格式中,并可用于HTML5网络视频和网页即时通信[5]

历史进程[编辑]

开放媒体联盟(AOMedia)创建AV1主因包括涉及HEVC的高成本专利许可与模糊空间,此外,由MPEG设计之编解码器有望取代AVC[6][7]。 联盟最初由七间公司,AmazonCiscoGoogleIntelMicrosoftMozillaNetflix所组成,并宣布技术重点为提供高品质网路影像[8]。于2015年7月21日,HEVC Advance ,现为ACCESS Advance,初始授权被宣布增加对AVC 的权利金[9]。进而促成同年9 月1日,开放媒体联盟发布AV1的官方公告并宣布成立。除了权利金所增加的成本外,还增加了授权复杂度。与过往MPEG 规范不同,MPEG可以只从MPEG-LA获得许可,而当完成HEVC 规范时,已经形成了两个专利池,第三个专利池也即将出现。普遍而言,专利持有人拒绝将专利共享于专利池上,这增添 HEVC 授权的不确定性。据微软的 Lan LeGrow 所说,开源免版税可视为不确定性消除的方法[6]

此外,创建 AV1 另一个原因是专利授权对免费开源软件的负面影响[7]。例如在浏览器中实现H.264 ,将被禁止使用,除非向 MPEG-LA 支付权利金[10]。 欧洲自由软件基金会认为,由于与自由软体许可证的各种不兼容,公平及合理非歧视条款许可实践使标准的自由软体实施成为不可能[11]

AV1 的组成来自联盟成员过往的研究与工作内容,分别在几年前就开始实现实验性平台,如:Xiph 与Mozilla 的Daala,Google实验性质的 VP9提升为 VP10,并于2014 年9月12日公布[12], 以及Cisco的Thor于 2015年8月11 日发布。AV1以 VP9 的代码库为基础,与其他技术结合产生[13],AV1 编解码器参考规范初始版本0.1.0,并于2016年4月7日发布。

2017 年 10 月下旬,尽管对于开发的冻结开始生效,但数个重要功能仍在继续发展。其中一项正在开发的功能──比特流格式,原定于 2018年1月冻结开发,但仍有关键错误,以及需要对转换方法、语法设计、运动矢量预测的修改,也有法律的妥善性问题,最终发布日期延期至同年3月28 日,联盟发布官方 AV1 比特流规范与软体的编解码器参考规范[14],2018年6 月 25 日发布经验证过后的比特流规范 1.0.0 版[15],最终于2019 年 1 月 8 日,发布1.0.0 版附带的规格刊误。

据联盟成员 Bitmovin中Martin Smole表示 ,在比特流格式完成冻结后,计算效率在官方参考编解码器仍具挑战[16]。 虽然尚可处理比特流格式,但此并非商用用途,速度优化也未考量。因此,早期版本的 AV1 比现有的 HEVC 编码器慢几个数量级。近期,开发者趋于优化官方参考编码器。 发布后一年的2019 年 3 月,参考编码器的效率有大幅提升,并且与其他常见的编解码器在可比拟的效率范围内[17]

技术[编辑]

libaom
开发者开放媒体联盟
编程语言C语言汇编语言
许可协议FreeBSD 2自由
网站aomedia.googlesource.com/aom

AV1是一种使用传统的基于区块编码但也加入了新技术的频率变换格式,AV1所使用的编码技术主要来源于谷歌VP9的下一代视频压缩格式VP10,但同时也包含了由Xiph.Org 基金会的主要赞助者Mozilla开发的Daala视频压缩格式和由Cisco开发的Thor视频压缩格式中所使用的视频编码技术。

开放媒体联盟根据FreeBSD 2许可证发布了一个用C语言汇编语言编写的编解码器参考实例libaom。该参考实例的开发接受开放媒体联盟成员资助并且公开进行。此外还有另一个开源编码器rav1e,rav1e编码器以牺牲编码效率为代价,成为最简单、最快符合AV1标准的视频编码器[18]

分区(Partitioning)[编辑]

AV1 超区块分区图。它展示了如何将 128×128 超区块连续拆分为 4×4 的分区。其中,128×128 和 8×8 超区块不能使用 1:4 和 4:1 分割,8×8 超区块不能使用T形分割。

于此,帧的内容被划分为相间、相邻且大小相同的区块,称为超区块。相似于宏区块的概念,超区块呈现方形,大小可为 128×128 或 64×64 像素。超区块可以根据不同的分区模式划分为更小的区块。四方分割模式(four-way split pattern)是唯一可以递归将分区细分的模式。这允许将超区块从大区块划分为小至 4×4 像素的分区。

AV1引入了“T形”的编码单元划分方案,这取自VP10

T 形分区模式是 VP10 开发的一项新功能,水平或垂直拆分超区块分割为 4:1 和 1:4 长条形分区。分区模式的使用因超区块大小而有所限制,其中128×128 和 8×8超区块都不能使用4:1或1:4长条型分区拆分,而只有8×8 超区块则不能使用T形分割。

在不同区块空间的部分上使用两个独立预测,可以使用平滑的倾斜过渡线(楔形分区预测)。这使得对象得以准确地分割,而无需沿方形边界的传统阶梯线。

基于瓦形行列之间的可预测的相依性这使得可以实现更多的编码器平行性[19]

预测(Prediction)[编辑]

AV1 以更高的精度(10或12位样本频率)执行内部处理,由于解析度提高,图像中的四舍五入的误差较小,使得压缩效能改进。

预测可以在一个区块中以更高级的方式组合成复合预测,包括不同方向平滑与尖锐的楔形分区预测以及基于使用两个预测器探究两者之间差异的隐式掩码,这将比取平均来得优秀。这允许在同一超区块中使用两个帧间预测或帧间和帧内预测的组合[20]

于帧间预测时,一个帧可以访问 8 个可用帧缓冲区中的 6 个而不是 3 个,且可同时为双向预测,即帧间与帧内预测组合预测[21]

在AV1中的扭曲运动[19]全局运动分析工具,用于借由识别由相机运动产生的模式,以减少运动向量中的冗余资讯,如噪音即为冗于资讯[19]。这实现了以往的格式中试图却仍未被实现的做法,例如尽管采用适用于三维的新颖方法的MPEG-4 ASP。比特流中提供的帧有一组扭曲参数,隐式区域参数可根据周围的区块计算得到并于区块中使用。

切换帧(S 帧)是一种新的帧间类型,可以使用来自同一影像更高分辨率的已解码参考帧进行预测以允许切换至低分辨率,于自适性比特串流媒体实例中,无需在开始时使用完整的关键帧影像片段。

帧内预测(Intra Prediction)[编辑]

帧内预测使用当前帧中可用资讯来预测目标区块的像素。大多数情况下,帧内预测是从待预测目标区块上方和左侧的相邻像素构建的。 DC预测器借由平均区块左侧和上方像素进行预测。

根据指定的角度,方向预测器可以推断相邻像素。在 AV1 中,以 45 度角开始,每次差距22.5 度,逐步增加至203 度,共计八种模式。每个方向模式中,可以为较大的区块给予每个3度,共计六组的偏移信号,主角上方与下方各三组,从而产生总共 56 个角。

其中,真实运动预测器被替换为Paeth预测器,这将判别左上角已知像素与新像素的左侧与上方的的像素的差异,而后选择位于较小梯度方向的像素作为预测器。

另调色板预测器可用于较少颜色最多 8 个颜色的区块,如部分电脑萤幕内容,可使用基于亮度平面样本的色度块预测器来利用亮度和颜色信息之间的相关性[19]

为了减少沿帧间预测区块边界的可视边界,可使用重叠块运动补偿(OBMC) 技术,与相邻区块重叠 2 到 32 个像素,并混合重叠部分[22]

数据转换(Data transformation)[编辑]

为了将预测后剩余的误差转换到频域,AV1 编码器可以使用正方形、或2:1/1:2 和 4:1/1:4 矩形进行离散馀弦变换[21],以及非对称的离散正弦变换[23][24],对来自附近像素,预测左侧或上方边缘具有较低误差的区块,或者选择不进行变换。

这可以复合两个一维变换,使得水平和垂直维度得以使用不同的变换。

量化(Quantization)[编辑]

AV1 具有最佳化量化矩阵,每帧可选择和发送资讯八组量化参数,具有两个色度平面的单独参数,并且可以使用空间预测。在每个新的超区块上,量化参数可以通过发送偏移信号进行调整。

滤波器(Filter)[编辑]

Thor 的约束低通滤波器和 Daala 的定向去振铃滤波器,对于环路滤波有卓越的成效:结合二者之约束定向增强滤波器,超过了单独或一起使用一般滤波器的结果。

这是一种边缘定向条件替换滤波器,平滑具有可配置强度的区块沿主要边缘方向,以消除振铃效应

还有基于Wiener 滤波器和自引导恢复滤波器的环路恢复滤波器,用于去除由于区块处理引起的模糊振铃。

胶片颗粒合成使用参数视频编码方法改进了噪声信号的编码。由于胶片颗粒噪声固有的随机性,该信号分量传统上编码成本昂贵,容易遗失与损坏,并可能会留下严重的编码振铃作为残留物。使用胶片颗粒合成来规避这些问题,其使用视觉上主观视觉印象相似的部分替换部分信号而不是客观相似性。消除从信号中去除颗粒成分与分析其非随机特征,取而代之的是仅将描述性参数传输到解码器,解码器会添加回原始组成成分之后重塑并合成伪随机噪声信号。胶片颗粒合成是 AC3、AAC、Vorbis 和 Opus 音频编解码器中使用的感知噪声替代技术的视觉等效项。

熵编码[编辑]

Daala 的熵编码器 ,是一种非二进制的算术编码器,作为替代原先VP9二进制的编码器。非二进制算术编码的有利于避开现有专利,同时也让比特层级的串列过程增加了平行性,藉而降低硬体实现对于石英震荡器的速率要求。 如前文参考之适应性二元算术编码之现代二进制算术编码的有效性,其正在使用比二进制更大的字母表来实现,因此速度更快,就像霍夫曼编码一样,虽然仍不及霍夫曼编码简单而快速。 AV1 在算术编码器中拥有按编码符号而不是按帧调整符号概率的能力[19]

可适性视讯编码[编辑]

对于视讯最重要的是,可适性视讯编码是一种泛用技术而不是由 AV1 独有,以便可以从更高比特率的影像流中提取质量更好的低比特率视频流。这与自适应比特率流传输差别在于,每个更高比特率适配中的一些压缩效率被放弃,以获得整体影像流的效能。编码过程也较少冗余与较低的要求。

AV1提供了时间和空间可适性[25],帧速率和分辨率都是定义为低比特流可用的方法。

编码规范[编辑]

AV1拥有三种设定供解码器使用MainHighProfessional。Main允许8、10位元的色彩深度以及4:0:0(灰阶)和4:2:0的色度抽样。High后续会支持4:4:4的色度抽样。Professional将会完整支持4:0:0、4:2:0、4:2:2、4:4:4的色度抽样以及8、10、12位元的色彩深度[26]

不同设定下AV1编码的特性
Main (0) High (1) Professional (2)
色彩深度 8、10 8、10 8、10、12
色度抽样 4:0:0
4:2:0
4:2:2
4:4:4

软体支持[编辑]

采用[编辑]

YouTube已开始尝试在部份影片使用AV1影片格式。2020年2月5日,Netflix开始在Android装置上使用AV1影片格式播放影片,AV1的压缩效率较原先的VP9提升了20%[44]Facebook表示AV1性能超乎预期,一旦时机成熟将逐步采用AV1影片格式[45]

Twitch计划在2022年或2023年于关注度较高的影片采用AV1影片格式,并在2024年或2025年全面采用[46]

2020年4月30日,爱奇艺宣布在电脑浏览器和Android设备上支持AV1视频格式[47]

参考资料[编辑]

  1. ^ Release AV1 Bitstream & Decoding Process Specification (v1.0.0-errata1). Github.com. 9 January 2019 [31 March 2019]. (原始内容存档于2019-08-08). 
  2. ^ AV1 ist eingefroren und 30 Prozent besser als VP9. [2018-03-23]. (原始内容存档于2018-03-28). 
  3. ^ Zimmerman, Steven. Google’s Royalty-Free Answer to HEVC: A Look at AV1 and the Future of Video Codecs. XDA Developers. 15 May 2017 [10 June 2017]. (原始内容存档于2017-06-14). 
  4. ^ 谁将引领新一代视频编码标准:HEVC、AVS2和AV1性能对比报告 – 北京大学数字媒体研究中心. [2018-04-01]. (原始内容存档于2018-07-28). 
  5. ^ Tsahi Levent-Levi. WebRTC Codec Wars: Rebooted. BlogGeek.me. 3 September 2015 [1 March 2017]. (原始内容存档于2020-10-24). The beginning of the end of HEVC/H.265 video codec 
  6. ^ 6.0 6.1 Staff, Ars. Microsoft, Google, Amazon, others, aim for royalty-free video codecs. Ars Technica. 2015-09-01 [2021-07-01] (美国英语). 
  7. ^ 7.0 7.1 Shankland, Stephen. Tech giants join forces to hasten high-quality online video. CNET. [2021-07-01] (英语). 
  8. ^ Introducing the Industry’s Next Video Codec: AV1. Cisco Blogs. 2018-03-28 [2021-07-01] (美国英语). 
  9. ^ HEVC's Journey in 2015: Going Downhill and Gaining Speed. Streaming Media Magazine. 2015-12-01 [2021-07-01] (美国英语). 
  10. ^ Andreas. OpenH264 Now in Firefox. Andreas Gal. 2014-10-14 [2021-07-01] (英语). 
  11. ^ Why is FRAND bad for Free Software? - FSFE. FSFE - Free Software Foundation Europe. [2021-07-01] (英语). 
  12. ^ Shankland, Stephen. Google's Web-video ambitions bump into hard reality. CNET. [2021-07-01] (英语). 
  13. ^ A view on VP9 and AV1 part 1: specifications. GPAC Licensing. 2016-07-12 [2021-07-01] (美国英语). 
  14. ^ Shilov, Anton. Alliance for Open Media Releases Royalty-Free AV1 1.0 Codec Spec. www.anandtech.com. [2021-07-01]. 
  15. ^ AOMedia AV1 Codec v1.0.0 Appears Ready For Release - Phoronix. phoronix.com. [2021-07-01]. 
  16. ^ Hunter, Philip. Videonet. [2021-07-01] (英国英语). 
  17. ^ Good News: AV1 Encoding Times Drop to Near-Reasonable Levels. Streaming Media Magazine. 2019-03-04 [2021-07-01] (美国英语). 
  18. ^ The fastest and safest AV1 encoder.. [9 April 2018]. (原始内容存档于2020-05-29). 
  19. ^ 19.0 19.1 19.2 19.3 19.4 AV1: A Status Update. Streaming Media Magazine. 2017-08-30 [2021-07-01] (美国英语). 
  20. ^ Analysis of the emerging AOMedia AV1 video coding format for OTT use-cases (PDF). [Archived from the original (PDF) on 20 September 2017. Retrieved 19 September 2017.]. 
  21. ^ 21.0 21.1 Mukherjee, Debargha; Su, Hui; Bankoski, James; Converse, Alex; Han, Jingning; Liu, Zoe; Xu, Yaowu. An overview of new video coding tools under consideration for VP10: the successor to VP9. Applications of Digital Image Processing XXXVIII (International Society for Optics and Photonics). 2015-09-22, 9599: 95991E. doi:10.1117/12.2191104. 
  22. ^ Demuxed: A Video Engineer's Nirvana. Streaming Media Magazine. 2017-10-11 [2021-07-01] (美国英语). 
  23. ^ Han, Jingning; Saxena, Ankur; Melkote, Vinay; Rose, Kenneth. Jointly Optimized Spatial Prediction and Block Transform for Video and Image Coding (PDF). IEEE Transactions on Image Processing.: 1874–1884. 
  24. ^ R, Bhagyashree. Mozilla shares how AV1, the new open source royalty-free video codec, works. Packt Hub. 2018-11-12 [2021-07-01] (美国英语). 
  25. ^ "Into the Depths:The Technical Details Behind AV1 (PDF). [31 July 2018. Retrieved 21 December 2018]. 
  26. ^ Shilov, Anton. Alliance for Open Media Releases Royalty-Free AV1 1.0 Codec Spec. AnandTech. 2018-03-30 [2 April 2018]. (原始内容存档于2019-02-26). 
  27. ^ Millicast. Millicast demonstrates real-time video broadcasting using AV1 at CommCon 2019. Medium. 2019-07-09 [2021-07-01] (英语). 
  28. ^ Firefox brings you smooth video playback with the world’s fastest AV1 decoder – Mozilla Hacks - the Web developer blog. Mozilla Hacks – the Web developer blog. [2021-07-01] (美国英语). 
  29. ^ Chrome 70 Arrives With Option To Disable Linked Sign-Ins, PWAs On Windows, and AV1 Decoder - Slashdot. slashdot.org. [2021-07-01] (英语). 
  30. ^ Li, Abner. Chrome 90 rolling out: AV1 encoder optimized for video calls, easily hide Reading List. 9to5Google. 2021-04-15 [2021-07-01] (美国英语). 
  31. ^ How to Play AV1 Videos on YouTube in Chrome 70, Firefox, Vivaldi, Opera. Techdows. 2018-10-19 [2021-07-01] (美国英语). 
  32. ^ Opera 57 with smarter news and Netflix recommendations - Blog. Opera Desktop. 2018-11-28 [2021-07-01] (美国英语). 
  33. ^ Microsoft Launches Free AV1 Video Codec For Windows 10 - Slashdot. slashdot.org. [2021-07-01] (英语). 
  34. ^ Ødegaard, Ruarí. Quick Command Parameters – v1v4ld1 br0w53r 5n4p5h07 1337.17. Vivaldi Browser. 2018-10-18 [2021-07-01] (英语). 
  35. ^ Tung, Liam. VideoLAN: VLC 3.0's huge update brings Chromecast support, 360-degree video. ZDNet. [2021-07-01] (英语). 
  36. ^ mpv-player/mpv, mpv, 2021-07-01 [2021-07-01] 
  37. ^ Global Potplayer. potplayer.daum.net. [2021-07-01]. 
  38. ^ Changelog for K-Lite Codec Pack Full. codecguide.com. [2021-07-01]. 
  39. ^ Time to Start Testing: FFmpeg Turns 4.0 and Adds AV1 Support. Streaming Media Magazine. 2018-09-27 [2021-07-01] (美国英语). 
  40. ^ HandBrake: News. handbrake.fr. [2021-07-01]. 
  41. ^ Bitmovin Docs - Encoding Encoder Releases. Bitmovin Documentation. [2021-07-01] (英语). 
  42. ^ GStreamer 1.14.0 Released With WebRTC Support, AV1 Video & Better Rust Bindings - Phoronix. phoronix.com. [2021-07-01]. 
  43. ^ Neowin ·, Razvan Serea News Reporter. MediaInfo 18.03. Neowin. [2021-07-01] (英语). 
  44. ^ Abner, Li. Netflix starts streaming AV1 on Android to save cellular data. 9to5Google. 5 February 2020 [5 February 2020]. (原始内容存档于2020-02-05). 
  45. ^ Baumgartner, Jeff. Facebook: Tests Show AV1 Streaming Performance Is Exceeding Expectations. Multichannel. 2019-02-08 [2019-02-10]. (原始内容存档于2019-02-14). 
  46. ^ Ozer, Jan; Shen, Yueshi. NAB 2019: Twitch Talks VP9 and AV1 Roadmap. YouTube. 2 May 2019 [30 May 2019]. (原始内容存档于2020-07-12). but we're hoping, towards 2024-2025 the AV1 ecosystem's ready, we wanna switch to AV1 a 100%. … this is our projection right now. But on the other hand, as I said, our AV1 release will be, for the head content will be a lot sooner. We are hoping 2022-2023 is we are going to release AV1 for the head content. 
  47. ^ 存档副本. [2020-06-07]. (原始内容存档于2020-06-07).