AOMedia Video 1

開放、免專利影片編碼格式
(重定向自AV1

AOMedia Video 1(简称AV1)是一個開放免專利影片編碼格式,專為通过网络进行串流传输而设计。它由開放媒體聯盟(AOMedia)開發,該聯盟由半導體企業、隨選視訊供應商和網頁瀏覽器開發商於2015年成立。互聯網工程任務組(IETF)也將這項工作標準化為互聯網視頻編解碼器(NetVC英语NetVC[2]

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/

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).