LiveVideoStackCon2018干货分享(一)————编码篇之AV1

LiveVideoStackCon2018结束了,但技术话题的热度在微信群中仍持续不减。本次峰会主题是多媒体技术赋能新世界,共13个专场,既有底层技术层面的讲解,也有高层架构层面的探讨,还有业务层面的交流。知识丰富,内容颇多,现对自己关注且参与的部分进行总结分享。分享分为编码篇、硬件篇、架构篇、其他篇四个篇章。其中编码篇分为AV1、AVS3、HEVC优化三节内容,硬件篇分为Intel、Xilinx、Nvidia三节内容,架构篇分为互动架构、X-CDN架构、视频云三节内容,其他篇分为AI+音视频、QoE、FFMpeg演进三节内容,共计九节内容。

1. 编解码

1.1 AV1

涉及到AV1的有三篇演讲分别是Google工程师Debargha Mukherjee的《From VP9 to AV1 and beyond》、《A Technical Overview of the coding tools in AV1》和Intel工程师Faouzi Kossentini的《Accelerated Growth of the Visual Cloud Through Open Sourcing SVT-HEVC and SVT-AV1》。

我现场听了第一篇和第三篇,第二篇由于和第一篇是同一作者,且第二篇内容仅是第一篇的补充增强,故前两篇统一进行介绍。

(1) Alliance for Open Media and AV1

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第1张图片

首先给出了一份数据:2021年每秒钟产生100万分钟的视频,这可以作为论述视频发展重要性观点的一项数据来源。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第2张图片

AV1的理念是OpenMedia,目标即免税编码,进而用来和ITU高专利费的HEVC、VCC对抗。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第3张图片

AOM成员主要是互联网公司(尤其是视频网站)和传统软件硬件企业,和以政府部门、电信企业为主导的ITU不太一样。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第4张图片

在这里可以看到国内的公司金山云和爱奇艺,金山云在HEVC的编码优化上做了很多底层的工作,在下一节中会单独分享。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第5张图片

AV1采纳百家众长,以VP10为基础,算法和工具融合了Mozilla的Daala、Cisco的Thor,未来差异化的编码器可能会越来越少。性能指标目标是比VP9还能压缩30%的冗余。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第6张图片

AOM的四个工作组:编码工作组、硬件工作组(毕竟AV1算法复杂度特别高)、助教组和测试组。

(2) Coding Tools

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第7张图片

预测编码有四种模式:帧内模式、单帧帧间模式、复合帧间模式和帧内帧间模式,后三种都可以看成广义的帧间预测。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第8张图片

有10种递归的划分方式,从HEVC的CTU开始,宏块划分就以树形递归来实现了。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第9张图片

帧内预测的模式细分有8个子类。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第10张图片

帧内预测方向预测子类上有56种。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第11张图片

平滑模式进行四分之一内插和Paeth模式(该模式未展开介绍)。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第12张图片

通过重构的亮度来对色差预测子模式进行选择,这类似于VVC的方法。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第13张图片

递归的帧内预测,以4x2为单位,用8个7抽头滤波器获取预测值。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第14张图片

根据屏幕内容进行帧内块拷贝。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第15张图片

根据屏幕内容的调色板模式。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第16张图片

帧间预测,三大亮点:支持更多参考帧、动态运动矢量参考、亚像素滤波;三大帧间预测模式:单帧帧间模式、复合帧间模式和复合帧内帧间模式;OBMC运动补偿模式;仿射变换。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第17张图片

动态运动矢量参考,时域邻居和空域邻居中寻找参考列表。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第18张图片

单帧帧间预测的场景,排序了4个MV组成的候选列表;同时有4种单帧模式下的MV,分别是最近MV、邻近MV、最新MV和全局MV。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第19张图片

复合帧间预测的场景,排序了4个MV组成的候选列表;同时有8种复合模式下的MV,分别是最近MV、邻近MV、最新MV、全局MV、新的最近MV、最近新的MV、邻近的新MV和新的邻近MV。其中"最近"、"邻近"是空间域上的关系,"新"是时间域上的关系。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第20张图片

亚像素滤波,分为水平上平滑、常规、边缘以及垂直上平滑、常规、边缘的组合。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第21张图片

Scaled Inter Prediction就是等比例的帧帧预测,每次待预测块可以以1/2、1、2个像素进行水平或垂直方向的移动。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第22张图片

复合帧间预测是指将一下两种帧间预测进行组合,包括平均权重、距离权重、差异权重和楔形权重。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第23张图片

详细讲了一下楔形权重码书样式(无论是方形还是矩形,都有16个码本),以及最终传输比特数(5bit,含4bit形状编号+1bit符号)。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第24张图片

应用举例,衣领就是一个楔形,对应上一页的第三行第一列码本。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第25张图片

帧内帧间预测有两种模式:渐进模式和楔形模式,渐进模式用的就是帧内模式的4种情况。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第26张图片

灵活宏块尺寸的帧间预测运动矢量补偿。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第27张图片

基于纯块划分的帧间预测面对平移的情况较为适用,但对于旋转和带有景深的移动则效果很差,需要通过仿射函数的变换来实现更准确的运动补偿。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第28张图片

整体仿射变形模式和局部仿射变形模式。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第29张图片

提供16种变换基,对于普通信号进行DCT变换,对于边缘不进行变换IDTX,对于残差能量单调变化进行ADST(非对称离散正弦变换)或flip-ADST(翻转非对称离散正弦变换)。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第30张图片

变换分割相比HEVC的TU有矩形情况。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第31张图片

对于帧内预测帧,TU需要有相同尺寸;对于递归预测、重建一定要在TU之上进行;16个变换基是指水平方向和垂直方向DCT、IDX、ADST或flip-ADST的组合。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第32张图片

系数编码仍为Zig-zag但处理过程中会保留一些高频信号变换后所在的位置。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第33张图片

环路滤波和后处理滤波的整个流程,包括传统的环路滤波、方向限定增强滤波、上采样滤波、环路恢复滤波和胶片颗粒合成后处理滤波。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第34张图片

CDEF是一种针对边缘的滤波,由之前Daala和Thor的组合而成;而后进行方向估计与非线性滤波。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第35张图片

环路重建单元有两种类型,7抽头维纳滤波或双自引导滤波器,这一部分是之前任何编码算法中所没有的。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第36张图片

用离散对称正规化的维纳滤波器处理如上,在退化的x上去拟合y,用到了非离散线性贝叶斯估计量(LMMSE)。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第37张图片

带有自引导的图像滤波器及过程参数。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第38张图片

双自引导滤波器在子空间上的投影。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第39张图片

超分辨率可以通过环路重建和上采样来实现,表格上介绍的是可以将信源图像进行下采样再编码,重建与最后输出都能通过超分技术还原回同信源同尺寸的图像。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第40张图片

胶片颗粒(Film-grain)特别难以压缩(Film grain - Wikipedia) ,AV1通过胶片颗粒合成方法在后处理过程中实现,这个后处理过程对于编码循环来说是带外流程。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第41张图片

这一合成算法分为三个步骤,产生高斯白噪声、产生胶片颗粒模板、对每个32x32块进行伪随机偏移等操作。

(3). 最新编码结果

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第42张图片

VP9(libvpx实现)、HEVC(X265实现)、AV1(libaom实现)的客观质量对比,baseline是VP9,AV1完胜HEVC,HEVC在色差峰值信噪比、结构相似度以及CIEDE2000(新色差公式)上要逊色于VP9。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第43张图片

在VP9使用了金字塔型结构改进之后的客观质量对比,baseline仍是VP9,AV1仍完胜,HEVC在HVS峰值信噪比上逊色于改进后的VP9。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第44张图片

固定质量模式的测试,AV1优于HEVC(HM实现),HEVC优于VP9。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第45张图片

Facebook关于AV1和H264(X264实现)和VP9对比,原文见地址。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第46张图片

MSU关于AV1、HEVC(多种编码器、多种参数)、VP9、AVS2(uACS2)、H264(多种编码器)的对比,原文见地址。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第47张图片

Bitmovin关于AV1、HEVC、VP9的对比,原文见Multi-Codec DASH Dataset: An Evaluation of AV1, AVC, HEVC and VP9 - Bitmovin。

(4) AV1 Deployment

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第48张图片

AV1的实施的四个阶段。第一阶段是创建工具,以及Bit-stream freeze(大概是码流格式定义);目前处于第二阶段,工具集选择以及桌面浏览器实现(软编软解实现);第三阶段是软硬混合(硬件加速)以及纯硬件实现;第四阶段是获得主流芯片的支持。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第49张图片

AV1计划时间线,目前处于浏览器支持阶段。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第50张图片

AV1在Google的推进计划,需要关注的是浏览器支持、WebRTC支持、Android支持、硬件实现的时间点。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第51张图片

目前软编软解已经完成,编码上cpu实现,需要扩展实现基于机器学习的模式决策或宏块划分决策,解码端做的是SIMD的优化。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第52张图片

编码优化进展,横坐标2018年的日期,纵坐标编码480P每一帧的毫秒数,随着优化的进行,当前达到了8秒一帧的编码性能。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第53张图片

解码优化进展,横坐标2018年日期,纵坐标帧率,随着优化的进行达到每秒300帧的解码性能。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第54张图片

质量提升的四个方面:帧的层级排列与码控,基于感知的自适应量化、前向参考关键帧实现和智能超分辨率编码。

(5) Beyond AV1

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第55张图片

AV1是当下最好的编码器,比VP9压缩能力提升30%(达到了之前预设的目标),比HEVC压缩能力提升20%;但面对即将到来的VVC是有一定挑战,AV2将会提上日程。

LiveVideoStackCon2018干货分享(一)————编码篇之AV1_第56张图片

AV1优越的性能从传统角度来看得益于更好的预测模式、变换模式等;以及在运动上的非平移运动模式;编码恢复模式;学习图像压缩的非线性变换等等。

你可能感兴趣的:(LiveVideoStackCon2018干货分享(一)————编码篇之AV1)