此外,视频通话、视频会议、远程教育、互动直播等实时通信场景不断涌现,促进了实时通信技术的发展,同时随着智能终端设备的广泛使用以及5G网络的普及,用户对实时交互的需求也越来越高。
数字化后的视频数据存在大量的冗余,在统计特征层面包括空间冗余、时间冗余、信息熵冗余;在人类认知层面包括视觉冗余、知识冗余和结构冗余[2];视频分辨率、帧率、动态范围的增加也导致视频数据量不断增长,通过预测编码和变换编码可以显著减少这些冗余,从而减少视频的数据量,为了规范各种视频编码方法生成的码流格式,国际国内制定了相应的视频编码标准。
实时视频通信的关键环节在于实时视频编解码和实时视频传输,视频编码、传输、解码等各模块需要协调配合,确保能够在给定的时间段内完成。为了减小系统延迟,编解码环节需要合理地权衡编码效率和延迟的关系,同时考虑到压缩码流中会因视频内容的差异而出现突发式数据流。进行网络传输时容易引起拥塞,因此在编码端也需要设计合理的码率控制算法以保证码率的平稳,从而实现在受限带宽网络中的实时流传输,并平滑视频的整体质量。
视频传输系统的延迟主要包括3部分:编码器延迟、传输延迟和解码器延迟[3]。编码器延迟由视频采集延迟、帧重新排序延迟和编码器处理延迟组成;传输延迟由编码缓冲区延迟、网络传输延迟和解码器缓冲延迟组成;解码器延迟由解码器处理延迟和帧重新排序延迟组成。
传输延迟主要由网络抖动和缓冲区大小决定,解码器延迟由客户端设计决定,本文主要从编码角度阐述低延迟视频编码器设计思路,以适配端到端的低延迟应用场景。具体包括减少编码处理的延迟,避免出现帧重新排序延迟以及降低编解码缓冲区的延迟。互联网行业的迅速发展催生了各式各样的低延迟应用,而不同的应用场景所要求达到的编码延迟不同,体育赛事、互动直播等直播类场景的目标编码延迟在秒级;无线投屏、视频会议等场景要求的编码延迟在百毫秒级别;对于云VR和第一人称云游戏(射击类和MOBA类云游戏)等应用,用户体验极易受到系统延迟的影响,编码延迟一般维持在十毫秒级;另外在无人驾驶和无人飞机等超低延迟场景下,编码延迟基本控制在毫秒级以实现对外部信息的及时反馈。
在视频编码领域,目前暂未查阅到总结低延迟视频编码技术的综述类论文,本文从编码延迟的来源出发,系统地归纳了学术界和工业界在低延迟视频编码方面的优化手段,对低延迟场景下编码方案的选择和编码器的设计具有重要的指导意义。
1 视频编码标准 视频编码技术解决了视频数字化产生的海量数据的存储和传输问题,但是不同的编码方法得到的码流格式可能存在差异,为了让编码码流可以在不同的平台上解码播放,就需要制定统一的视频编码标准。
1.1 标准简介 当前国际上主流的视频编码标准主要包含H.264/AVC、H.265/HEVC和H.266/VVC,由ITU-T的VCEG(Video Coding Experts Group)和ISO/IEC的MPEG(Moving Picture Experts Group)联合制定,比较流行的标准还有Google发布的VP9和AV1。在国内,AVS工作组发布了AVS标准,现在已经走到了AVS3。
上述编码标准以不断提升编码性能为导向,追求更高的压缩效率和更好的观看质量,往往较少地考虑编码延迟对系统的影响,虽然在实际应用中已经衍化出了x264、x265、rav1e、xAVS2等实时编码器,但是仍然无法满足低延迟场景的需求。
1.2 编码工具 混合编码框架主要包括块划分、帧内预测、帧间预测、变换、环路滤波等核心模块。
将图像划分为块可以更好地适应视频图像的纹理特征,随着视频编码标准地不断演进,编码块的划分结构越来越灵活,编码树单元(Coding Tree Unit, CTU)的尺寸越来越大,满足了复杂多变的视频场景的需要。
帧内预测利用图像中空间相邻像素的相关性来减少空间冗余,主要采用角度预测的方式,使用当前编码块邻近的重建像素预测当前块,通过增加帧内预测模式的数量和帧内插值滤波器的抽头数提升预测精度。
帧间预测利用视频时间域的相关性去除数据的时间冗余,在已编码的重建图像中寻找当前块的最佳匹配块以实现基于块的运动补偿,根据视频中的运动类型构建合适的运动模型以及使用更高精度的运动矢量可以有效提升预测精度。
变换编码可以将像素的能量集中到频域中少数几个低频系数上,并将图像的高频信息转化为较小的高频系数值,从而更紧凑地表示图像信息,对变换后的低频系数使用小的量化步长,对高频系数采用大的量化步长可以有效降低视频信号的空间相关性。
对视频图像进行块划分后,编码块的边界处会产生失真和不平滑,同时基于块的运动预测、变换量化等处理也会导致边缘效应,对重建图像进行环路滤波可以平滑边界处的视频质量,被用作参考图像后也可以提高编码效率。
2 率失真优化技术 率失真理论要解决的基本问题是在给定码率下,如何让失真最小,香农的“保真度准则下的信源编码定理”证明了率失真函数的存在性。在视频编码中,率失真优化(Rate-Distortion Optimization, RDO)的任务是为每一块图像区域选择最高效的编码参数(划分结构、预测模式、运动矢量、量化等级等),由于不同的编码选项在不同的码率(失真等级)、不同的场景内容下具有不同的压缩效率,所以率失真优化的过程比较复杂,在低延迟视频编码中,应该增加编码延迟作为一个新的约束条件。
2.1 基本原理 率失真优化的目的是在一定的码率约束下最小化失真,由于图像不同区域所分配的编码模式具有不同的率失真特性,所以编码器的目标是优化整体的保真度,这个约束优化问题可以表示为
(1) |
式中:D为编码视频的失真;R为所消耗的比特数;Rc为最大允许的比特数。式(1)中的有约束优化问题可以通过拉格朗日乘数法转化为无约束优化问题[4],最小化问题的拉格朗日公式为
(2) |
式中:J为率失真代价;λ为拉格朗日乘子,可以用于调整优化目标。在给定λ下,式(2)的每一个解对应式(1)的一个最优解,所以率失真优化技术可以从优化的角度对大量可能的编码选项进行评价。
在实际进行视频编码优化时,编码决策之间的一些相互影响是被忽略的,而在进行运动估计和预测模式决策时,当前编码区域和空间以及时间上的后续区域存在级联效应,所以会带来一定的性能损失。假设不同编码决策之间的失真和码率互不相关时,式(2)可以分解为多个子任务的率失真函数:
(3) |
(4) |
式中:N为编码决策的数量;Ji、Di、Ri和λi分别为第i个编码决策的率失真代价、编码失真、消耗比特数和拉格朗日乘子。
考虑到编码单元内部和编码单元之间的编码参数广泛存在依赖关系,许多研究对率失真优化中的空域和时域依赖关系进行了分析。在空域依赖方面,Bichon等[5]在进行帧内预测时对垂直方向上的2个编码块进行了联合率失真优化(Joint Rate-Distortion Optimization, JRDO),从编码参数集中选择全局率失真代价最小的编码参数;后来Bichon等[6]对上述文献中的方法进行了改进,根据图像内容自适应地进行JRDO和RDO,从而显著降低了计算复杂度;Pang[7]和Wu[8]等建立了边界像素失真和编码块失真的空间预测依赖关系,通过空域失真传播模型进行RDO。在时域依赖方面,后续编码单元的率失真性能受到被参考编码单元的编码决策的影响,Yang等[9]提出了一种信源失真时域传播模型,通过估计当前编码单元对时域传播链上的后续编码单元的影响获得了对应的拉格朗日乘子;Li等[10]分析了当前编码单元的性能对后续帧的影响,通过调整拉格朗日乘子实现了时域依赖RDO方案;González-de-Suso等[11]通过对视频中静态背景和非静态背景的预分析自适应地估计拉格朗日乘子,此外,有的研究根据实验统计[12-13]和理论分析[14]的方法建立时域依赖的率失真模型。上述方法在不显著增加计算复杂度的条件下可以取得4%~15%的性能增益。
2.2 延迟约束的率失真优化 在跨层无线视频通信系统中,为了实现最优的端到端服务质量,需要根据端到端延迟约束和给定的最大电源功率为视频编码器合理地分配编码时间和编码功率。对视频编码器的延迟和功率消耗的约束可以从2个方面进行说明:一方面,高效的视频压缩可以降低视频数据的码率,从而减少在物理层的传输功率和传输延迟,或者减少数据链路层的传输速率和传输误码率;另一方面,高效的视频压缩具有更高的计算复杂度,从而在应用层产生大的编码器功率消耗和编码延迟,这2个矛盾的方面表明,在设计视频编码器时需要权衡延迟、功率消耗、码率和视频失真的关系。为了找到最优的权衡方案,Li等[15]提出了一种理论分析框架用于建模视频编码器的延迟-功率-码率-失真(delay-Power-Rate-Distortion,dPRD)特性,推导出了码率R、失真D、延迟d和功率P关于运动搜索范围和量化参数的分析模型,并把信源码率控制问题表示为dPRD优化问题。
在上述文献的基础上,Li等[16]提出了基于延迟-码率-失真优化(delay-Rate-Distortion Optimization,dRDO)模型的码率控制方案,使用信源编码延迟和缓冲区延迟、信源码率和信道编码产生的冗余码率这2种权衡最小化端到端总失真的平均值,即相对于无线视频通信系统中已有的码率控制方案增加了端到端延迟的约束条件。
随着编码工具的增多,编码器的压缩效率显著提升,同时计算复杂度也大大增加,Huang等[17]在率失真性能损失和复杂度之间进行了权衡,通过建立编码模式的子集得到了码率-失真-复杂度优化(Rate-Distortion-Complexity Optimization,RDCO)模型,RDCO不仅适用于不同编码模式决策的算法设计,而且可以在不同的码率-失真和复杂度的权衡要求下灵活地调整编码器的计算复杂度。
3 视频编码延迟优化技术 用户对4K/UHD等高分辨率视频的观看需求推动着视频编码标准不断更新换代,与以往单纯地追求高压缩性能不同,编码延迟逐渐成为设计编码器时需要考虑的重要因素之一,虽然率失真优化技术可以选择最优的编码参数,但是求解过程复杂,不适合用在实际编码器中,因此还需要考虑其他的技术手段。编码延迟具体是指从视频帧进入编码器到编码完成生成码流所消耗的时间,编码过程中的参考关系、编码流水线的设计和编码模块的复杂度是导致编码延迟的3个主要因素。
在设计低延迟编码技术之前,首先需要分析编码的哪些部分会影响视频传输系统的端到端延迟。在视频采集端,视频输入编码器的顺序为时序,但是时序与编码/解码顺序并不一致,一些帧需要等待,带来了编码前延迟。在编码器内部,编码任务调度差,编码各模块计算量大导致了编码本身的延迟。对于传输过程,在固定带宽的网络中传输码率波动的视频流会导致拥塞,导致后续帧的延迟和缓冲延迟。
3.1 低延迟参考结构 在离线编码中,一般会使用双向预测(前向预测和后向预测)B帧,B帧一方面能够使当前帧被很好地预测,另一方面采用了较高的量化参数,因此压缩率较高,但是双向预测B帧由于需要在编码前对帧进行重排序,会带来不可避免的延迟。Carballeira等[18]描述了参考关系对编码延迟的影响,可用式(5)~式(9)进行说明。
(5) |
(6) |
(7) |
(8) |
可以进一步推导出编码延迟的形式为
(9) |
式中:L为编码延迟;tcodi为第i帧编码完成的时刻;tcapti为第i帧的采集时间;M为帧数; tstarti为第i帧开始编码的时刻;Δtproci为第i帧的处理时间;tr≥0为参考路径中前一帧带给后一帧的延迟;R(i)为第i帧的参考路径所包含的参考图像集;tcaptr、Δtprocr和tcaptr+1分别为R(i)中第r帧的采集时间、第r帧的处理时间和第r+1帧的采集时间。可以看出,编码延迟受预测结构和每一帧的处理时间的影响。
图 1描述了HEVC的RA(Random Access)模式的参考关系,图像编号(Picture of Count, POC)为1的帧会在I帧之后首先到来,但是由于参考关系,该帧需要在POC为2和4的帧编码完成之后才能进行编码,而在实时视频源中,POC位置与采集时间相对应,因此,在不考虑编码计算延迟的前提下,该参考架构会直接带来额外的3帧延迟。在50帧/s的场景中,3帧延迟对应60 ms,对于延迟不敏感的场景,例如离线编码,B帧可以保留,以追求最大化压缩性能。
图 1 HEVC的RA模式的参考关系 Fig. 1 Reference structure of RA mode for HEVC |
图选项 |
为了适配低延迟场景,HEVC也设计了LDP(Low-delay P)模式,该模式的帧间参考关系如图 2所示,Wenger[19]研究了帧结构对编码性能的影响,文献基于H.263+比较了不同结构,包括含有B帧的结构和纯P帧结构的编码性能,实验证明,只使用P帧虽然节省了编码延迟,但是编码性能损失从9%到42%不等。事实上,鉴于不同应用场景的延迟要求,各家标准/私有编码器都设计了不同的参考帧结构,在延迟允许的条件下最大化编码性能。
图 2 HEVC的LDP模式的参考关系 Fig. 2 Reference structure of LDP mode for HEVC |
图选项 |
多参考帧结构会增加运动估计的时间,同时不同帧之间的依赖关系会对编码延迟产生影响,Pan等[20]根据父预测单元和子预测单元的内容相似性获取子预测单元的参考帧选择信息,在LD和RA模式下分别减少了54.29%和43.46%的编码时间,性能损失分别为1.07%和0.90%;Park等[21]利用了QTBT(Quadtree plus Binary Tree)结构的相关性,基于父节点的预测信息最小化运动估计中每一个编码单元的参考帧搜索范围,以0.29%的性能损失为代价减少了13%的编码时间。
通过上述帧级别的延迟优化,理论上输入的每一帧都可以立即编码,不需要等待,本质上不会引入新的延迟,但是仍存在后续条(slice)需要等待前面的条编码完成后才能启动编码,这种情况下编码延迟为前面的条的编码时间。对于一些超低延迟场景,为了降低这种延迟,出现了条级甚至宏块(macroblock)级的编码方案,在本条/宏块编码完成后立即将码流传输、解码并显示,可将编码延迟从1帧降为条/宏块,如图 3所示[22],同时也可以进一步通过并行化计算提升处理速度。
图 3 帧级编码和条/宏块级编码的端到端延迟[22] Fig. 3 End-to-end latency of frame-level encoding and slice/macroblock-level encoding[22] |
图选项 |
3.2 编码流水线优化 对于单线程离线编码,编码效率完全由编码标准决定,但是对于多线程/实时编码器,编码框架也有重大的影响。编码器内部的架构设计,一方面决定了编码器的延迟,另一方面决定了编码器的可并行程度。编码器的整体架构可以分为3种,如图 4[23]所示。图 4(a)中,编码器不同编码模块,包括运动估计、运动补偿、变换(Discrete Cosine Transform, DCT)、量化(Quantization, Q)、编码、反变换和反量化,都是以帧为单位进行同步。图 4(b)中,则以宏块为单位同步。类似地,图 4(c)中,以条为单位进行同步,一个条包含多个宏块。每次同步之后,编码器就能把已编码的数据输出,这也意味着,对于当前帧架构图 4(a)的延迟为帧级,图 4(b)为块级,图 4(c)为条级。
图 4 帧、条、块级编码任务分解[23] Fig. 4 Encoding processes at frame, slice and block levels[23] |
图选项 |
虽然理论上按照上述思路可以将延迟降为块级别,但是实际应用中,当一帧被切的越小,每一块编码时间差异越大,Schreier和Rothermel[3]描述了不同宏块的计算量相差2~3倍,会导致一些同步问题和等待的额外开销,所以很多低延迟方案仍然采用条带级方案。
随着硬件性能的提升,CPU具备了多线程并行处理的能力,这为编解码器的并行化操作提供了基础,在实际应用中主要分为任务级分解和数据级分解2部分[24]。
在任务级分解中,运动补偿、变换和量化等任务被分配给不同的处理器,处理器之间需要交流和同步,在帧、条、块级编码方案中(基于图 4),可以通过不同编码任务的流化处理降低编码延迟。在数据级分解中,数据被切割并分配给不同的处理器,主要分为帧级并行、条级并行、片(tile)级并行、波前并行处理(Wavefront Parallel Processing, WPP)等。片级并行和WPP可以用于低延迟操作中,把图像细分为片或者WPP子图像,如图 5所示。图 5(a)是片的编码过程,叉号标记的3个片属于同一个编码单元,图 5(b)包含了6个WPP子图像,每一个子图像为一个编码单元,则延迟量级由编码单元的数量决定[22]。
图 5 片级并行和波前并行处理[22] Fig. 5 Tile parallelization and wavefront parallel processing[22] |
图选项 |
并行方法主要通过横向扩展的方式增加编码速度,通过并行运算间接实现延迟的降低,不会降低因为参考关系导致的延迟[25]。Mohamed等[26]对HEVC帧级并行进行了性能评估,采用8个线程并行实现HEVC编码器(HEVC test Model,HM),每个线程被分配给一个核心处理器来编码一个单独的帧,使用All Intra配置打破连续帧之间的编码依赖,结果显示在没有编码性能损失的情况下,编码速度提升到4.35倍。
近几年WPP受到越来越多的关注,Chi等[25]提出了一种基于WPP的重叠波前方法,实现了比片级并行和WPP更高的性能和效率。然而在计算资源充足的情况下,仍可以改进波前编码顺序设计,以进一步提高编码速度。Chen等[27]提出集数据级和任务级方法于一体的波前高并行度算法。在任务级别,通过有效降低波前并行处理的依赖性,开发了一种新颖的帧间波前方法,利用三级线程管理方案,以最好地利用帧间波前方法的并行性实现相应的编码速度。Wang等[28]提出了一种基于协同调度的HEVC编码并行解决方案,包括自适应并行模式决策、异步帧级像素插值和多粒度任务调度过程,以克服WPP的缺点,进一步提高在多核平台上HEVC编码的并行性。然而基于协同调度的并行解决方案专注于帧内编码的并行化,将此方案与基于GOP或基于帧的多线程并行方案集成在一起可以进一步加快编码速度。
3.3 编码模块简化 使用并行的手段对编码框架进行优化,本质上是进行编码的调度优化,并没有减少编码模块本身的搜索,事实上,编码过程中,为了确定最终的编码模式,进行了大量冗余的搜索。同时为了适应视频内容的不同局部特征,更加高效地表示不同场景的纹理细节,图像需要被划分为一系列的编码块,AVC中使用了固定大小的宏块,HEVC中采用了四叉树的划分方式,VVC中使用了嵌套多类型树的四叉树划分,通过不断增加划分类型细化了对图像细节的处理,相应地计算复杂度也显著提升。HEVC与AVC相比,码率大约节省50%[29],复杂度成倍增加[30];VVC相对于HEVC约有30%的增益,编码复杂度约增加为7倍[31],因此可以通过权衡编码效率与计算复杂度的关系以降低编码延迟。
如1.2节所述,当前的视频编码标准普遍采用了基于块的混合编码框架,包括预测编码和变换编码2部分[32],计算复杂度主要来自帧内预测、帧间预测(运动补偿)、变换、量化、去块效应滤波、熵编码等模块。HEVC参考软件的复杂度测试结果显示,在采用未经优化的RA模式编码的情况下,各主要模块编码时间约为:参考块搜索占7%,量化占10%,运动估计占39%,运动补偿中的插值滤波占20%,熵编码占1.5%[30],可见编码时间主要集中于帧间预测过程。
在复杂度优化层面,现有研究工作主要包括传统的基于统计信息的快速算法[33-36]以及最新的利用机器学习、数据挖掘等新理论降低计算复杂度的方法[37-40],传统方法易于实现,但是无法准确建模复杂的图像划分过程,基于学习的方法可以利用大规模数据充分发掘图像划分的广泛特征,提高预测精度,缺点是训练参数增加了额外的开销。通过以上方法将编码模式降到最简后,计算瓶颈主要来自熵编码和数据访存。基于参考软件,现有的低复杂度方法普遍同时考虑在性能损失合理的情况下尽可能降低编码复杂度,结合不同模块的加速算法,在压缩性能损失5%及以下的前提下,降低20%~70%的编码复杂度。
3.4 低延迟码率控制 码率控制的目标是在满足码率约束的同时提高视频质量,通过选择合适的编码参数完成比特分配过程,因为传统方法要求编码的视频整体性能最优,而低延迟场景需要保证分配比特数的平稳,因此需要改进传统的码率控制算法以适应场景需要。
一方面,对于基本的视频编码方式,I帧通常以周期性整帧的方式插入,然而I帧一般比P、B帧多出数倍的数据量。这种编码结构对编码本身而言更为简洁,但会导致编解码缓冲区的较大延迟,这种延迟同样会影响许多实际应用中的传输质量。因而考虑到系统整体的低延迟,更好的做法是进行帧内刷新编码。
帧内刷新技术是指将原有I帧的码流分配到其他非I帧中,对于编码而言,即以特定方式将非I帧中的无重叠区域以帧内预测方式编码,共同分担I帧参考的任务。帧内刷新通过多帧帧内编码替代单个关键帧,可以起到降低缓冲区延迟、平稳码率的作用,避免I帧峰值码率带来的带宽压力。
在各类帧内刷新方法中,周期性帧内刷新(PIR)[41]由于其简洁性、有效性被广泛采用。PIR是在限定的帧周期内,对每一帧固定位置的编码块进行帧内编码。除此之外,还有随机帧内刷新(RIR)[42]、自适应帧内刷新(AIR)[43-44]等方法。
Hendry等[45]提出了一种新的图像类型GRA(Gradual Random Access)/GDR(Gradual Decoding Refresh)图像,图像中包含刷新区域和未刷新区域,在刷新条内的编码块只能参考属于同一GRA周期的参考图像中刷新区域的参考块,在未刷新区域内的编码块可以参考属于不同GRA周期的参考图像中刷新区域的参考块或者属于同一GRA周期的参考图像中的任何参考块。图 6给出了对刷新区域和未刷新区域的编码块的参考约束,GRA图像既可以平稳码率又有利于错误图像的解码恢复[45]。
图 6 刷新和未刷新区域的编码块参考[45] Fig. 6 Encoding block reference structure for refreshed and unrefreshed regions[45] |
图选项 |
另一方面,超低延迟场景下编解码端的缓冲区很小,而采用条/块级编码后,子图像(宏块集)的比特数目会出现分配不均的情况,导致码率波动较大,因此在实际应用中需要避免出现缓冲区上溢的现象[46]。子图像级的比特分配策略如下:
(10) |
(11) |
式中:BSubPic为每个子图像分配的比特数;BPic为每帧图像分配的比特数;BCoded为已编码的子图像分配的比特数;ωSubPic为每个子图像的权重,可由前面已经编码的子图像的内容特性确定;ωSubPicCur为当前子图像的权重;fSize为缓冲区的大小;fUsed为缓冲区的充盈度。
近年来对码率控制的研究主要以Q域[47-48]、ρ域[49]和λ域[50]的码率控制算法为基础展开,码率控制过程包含GOP级、帧级、基本编码单元级的比特分配和编码参数选择2部分,现有码率控制算法对平均码率的控制精度较高,但是对基本单元级的比特控制不够精准,无法适用于缓存区较小的情况,而且不能有效处理包含快速运动物体、存在显著物体遮挡和场景变换的动态视频,所以需要改善现有的码率控制模型,实现不同编码级别的比特的精确控制。最新的码率控制研究中使用了机器学习[51]和深度强化学习[52]理论,可以显著提升码率控制的精度,但是训练模型参数耗时过多,这2种算法以及HM16.19的原始算法可以实现的帧级(F)和序列级(Seq)码率控制精度的对比情况如表 1所示,使用式(12)中的失配误差进行衡量[52]:
表 1 不同方法的码率控制精度对比[52] Table 1 Rate control accuracy comparison of different methods[52]
序列 | HM16.19 | 文献[51] | 文献[52] | |||||
F/% | Seq/% | F/% | Seq/% | F/% | Seq/% | |||
Mobisode | 2.55 | 0.010 | 1.98 | 0.010 | 1.01 | 0.003 | ||
RaceHorses | 1.53 | 0.008 | 1.43 | 0.007 | 0.66 | 0.004 | ||
PartyScene | 2.33 | 0.009 | 2.11 | 0.008 | 0.29 | 0.003 | ||
Chromakey | 2.55 | 0.010 | 2.32 | 0.009 | 0.33 | 0.003 | ||
Wave | 2.22 | 0.009 | 2.01 | 0.008 | 0.28 | 0.002 | ||
Parkrun | 2.73 | 0.011 | 2.38 | 0.009 | 0.41 | 0.003 | ||
Kimono | 1.22 | 0.007 | 1.34 | 0.008 | 0.67 | 0.004 | ||
Tennis | 2.76 | 0.011 | 2.41 | 0.009 | 0.44 | 0.004 | ||
Average | 2.24 | 0.009 | 2.00 | 0.009 | 0.51 | 0.003 |
表选项
(12) |
式中:Ract和Rtar分别为实际消耗的比特数和目标比特数,误差越小代表算法的性能越好。从实验结果可以看出,基于学习的方法在精确控制码率方面具有更大的潜力。
3.5 硬件编码加速 不同于CPU计算平台,硬件计算平台具有更强的并行数据处理能力,主要包括现场可编程门阵列(Field Programmable Gate Array,FPGA)和图形处理器(Graphical Processing Unit,GPU)等。
FPGA芯片内部的逻辑门单元达到了千万量级,在并行处理和可扩展性方面具有明显的优势,可同时支持硬件和软件编码算法实现,已有针对帧内/帧间预测、变换、量化和熵编码等模块的FPGA实现,相关技术已经比较成熟。
GPU采用了SIMT(Single Instruction Multiple Threads)模型,通过对数千个线程的有效调度提升了指令的执行效率,广泛用于多种视频编码工具的加速中,适合插值、计算SAD(Sum of Difference)等编码过程中分布集中的运算,基于GPU的视频编码加速是近年来的研究热点。
在软件算法的基础上,可以利用异构处理平台的协同计算对计算复杂度进行优化,利用GPU完成可并行化的编码模块,如视频预分析、码率分配、帧内预测模式选择、帧间预测运动估计、样点自适应补偿等,利用CPU完成率失真优化决策、环路滤波及熵编码等难以并行化的过程。
随着GPU在通用计算领域的广泛应用,已有许多针对以往视频编码并行优化的研究工作。这些工作大部分集中在并行化特定的编码模块,这些模块可以被SIMT模型加速,比如像素插值滤波和运动估计。Jiang和Nooshabadi[53]利用GPU的运算能力和对数据使用的动态规划,开发了一种可扩展的并行搜索方法来加速多视点视频编码的运动估计和视差估计。Shahid等[54]提出了一种并行运动估计算法,最大程度地减少了宏块之间的数据依赖性,除了GPU,此并行运动估计算法也在ASIC和FPGA上实现了。然而这些方案侧重于利用GPU对一个或多个特定模块进行并行化,而缺乏对CPU和GPU之间协作的研究,这不可避免地降低了异构系统在视频编码中的优势。也有一些研究开始利用异构处理平台的协同计算对计算复杂度进行优化。Xiao等[55]提出了一种多粒度并行解决方案,使用大规模并行运动估计算法来并行化GPU上的部分编码模块,同时通过WPP和自适应并行模式决策算法的配合,在CPU上加速了其他几种编码模块。Momcilovic等[56]提出了任务分配和动态负载平衡的方法,在混合CPU+GPU平台上并行化H.264/AVC帧间编码,与仅使用GPU的编码方案相比,该方法可以实现高达2.5倍的编码速度,然而Momcilovic也指出编码效率的损失一直是并行化视频编码器的一个重要考虑因素,它并没有得到很好的研究。相对于参考软件,现有GPU加速方案在压缩性能损失5%以内的前提下可以减少40%~80%的处理时间。
4 低延迟视频编码方案 本节总结了业界具有代表性的几种低延迟编码方案,分别对SVT-HEVC、TPCast、JPEG-XS和WHDI的编码实现方式做了分析。
SVT-HEVC编码器由英特尔于2018年发布至开源社区[57],支持HEVC Main和Main10 profile文件,并支持高达8K@60 fps、4∶2∶0、8位和10位的视频输入格式,和多达13个预置(M0~M12)的档次,在选择质量与数据密度之间进行权衡时提供了良好的粒度,用在基于视频云的直播场景中。
TPCast为VR(Virtual Reality)、AR(Augmented Reality)和MR(Mixed Reality)提供无线解决方案,编码方案基于H.264,可以实时传输2K画面[58],在质量上是视觉无损的。
JPEG-XS标准是TICO SMPTE RDD35的演进标准[59],是一种图像编码标准,具有目前良好的轻量级编码功能,可用于直播、电视/移动设备、AR/VR系统等场景的图像编码中。
WHDI技术是以色列Amimon公司最早开发的一种无线高清接口技术[60],专门为视频通信设计无线调制解调的方案,支持1080p@60 fps视频的浅压缩传输,主要用于家庭视频源设备与显示设备的连接。
表 2列出了H.265(SVT-HEVC)、H.264(TPCast)、JPEG-XS、WHDI 4种低延迟编码方案的配置。由于所采用的基础编码器和面向的应用场景不同,各类标准的方案和延迟差异较大,从H.265到WHDI的延迟依次降低,覆盖了1~1 000 ms的延迟范围,如图 7所示,视频质量相近时,不同编码方案对编码延迟和压缩率的权衡力度不同,编码延迟越小表示编码速度越快,压缩率越大表示编码器的性能越好,本节将对表中几种标准的优化方案进行详细介绍与分析。
表 2 编码方案配置 Table 2 Configuration of different encoding schemes
编码方案 | SVT-HEVC | TPCast | JPEG-XS | WHDI | |
编码模块 | 帧间/帧内预测 | √ | √ | × | × |
变换 | √ | √ | √ | √ | |
量化 | √ | √ | √ | √ | |
熵编码 | √ | √ | 极简 | × | |
延迟优化技术 | 参考关系简化 | √ | √ | × | × |
硬件加速 | √ | √ | √ | × | |
帧内刷新 | × | √ | × | × | |
并行 | √ | × | √ | × |
表选项
图 7 编码方案对比 Fig. 7 Comparison of different encoding schemes |
图选项 |
4.1 H.265低延迟方案 目前,H.265已经拥有了针对不同平台的实现方案,如基于CPU的x265、SVT-HEVC,NETINT基于专用芯片设计的Codensity编码器[61],以及NVIDA基于GPU设计的NVENC编码器等。在硬件编码器中,Codensity和NVENC都在H.265编码标准的基础上获得了超低的编码延迟,其中Codensity的编码延迟约5 ms,NVENC的编码延迟约为3~10 ms。在软件编码器中,SVT-HEVC相比于x265优势更加明显,SVT-HEVC的M11视觉模式与x265的very slow档次的视觉质量相似,加速因子为176倍,SVT-HEVC的M9视觉模式与x265的medium档次的视觉质量相似,加速因子为15倍,同时SVT-HEVC的使用成本更低,与硬件编码器相比可塑性更好。
SVT-HEVC基于可伸缩视频技术(Scalable Video Technology, SVT)架构开发而来。SVT是一种基于软件的视频编码技术,允许编码器在可伸缩处理器上实现性能、延迟和视觉质量之间的最佳折中[62]。SVT-HEVC是H.265标准面向低延迟场景被广泛认可的版本,其最快档次的延迟在百毫秒级别,压缩比在300∶1左右,配合其他低延迟技术可以到100 ms甚至几十毫秒级别。
SVT架构较为灵活,其将原有视频编码流程拆解为资源调度、图像预分析、运动估计、码率控制、核心编解码、熵编码等模块,并基于此形成流水线,如3.2节所述。SVT的流水线分为帧级和帧内编码超级块(Super Block, SB)级,2种程度的流水线因编码模块/任务的特点均有2种方式,以SB级流水线为例,一种方式为:编码模块开启多个进程等待上一个模块输出数据,相应数据输入便开始作业。另一种方式为:编码模块开启单个进程,等待足够多的SB数据输入方可进行按序的作业。
基于上述流水线方式,SVT-HEVC在H.265标准上实现了进程级、帧级和块级三维并行的低延迟编码,同时根据整体复杂度目标和编码单元的人类视觉系统(Human Visual System, HVS)重要性决策SB划分模式,实现了编码速度和视觉质量的联合优化。
4.2 H.264低延迟方案 H.264标准已经被工业界广泛认可和应用,其作为H.265的上一代标准,本身的编码复杂度相对较低,开源软件编码器x264虽然侧重实用性,但是对高压缩效率的追求导致编码延迟过高,现有低延迟方案大都基于硬件设计,以TPCast方案为例,通过采用帧内刷新等优化,可以达到50∶1的压缩比和10 ms级别的延迟。
TPCast使用CAST公司的H264-E-BPF IP核编码器[63]。其基于H.264 Baseline Profile,因而与常规的混合视频编码结构相同,由预测、变换、量化、熵编码等步骤组成。为实现低延迟的无线VR,TPCast编码方案采用了CAVLC熵编码选项以降低熵编码复杂度。
除熵编码外,该编码器最重要的是采用了帧内刷新技术克服由编码方式引起的延迟。H264-E-BPF可以使用CQP模式得到码流,同时也可以通过宏块级别的码率控制得到恒定比特率(Constant Bit Rate, CBR)的视频流。在CBR模式中,编码器可以快速响应视频内容在时域和空域上的变化,并与帧内刷新技术相结合,有效降低比特率峰值、编解码缓冲区延迟,同时保留周期性帧内编码的参考关系。
4.3 JPEG-XS低延迟方案 JPEG-XS是一种低延迟图像编码标准,没有考虑帧间/帧内参考关系,同时简化了去相关变换、熵编码等模块,官方称标准延迟控制在毫秒甚至微秒的级别,同时压缩比与前述2种标准差距也较大,视觉无损情况下通常为2∶1~6∶1。
联合图像专家组(JPEG)在2017年初推出了第一版JPEG-XS测试模型(JPEG-XS test Model, XSM)[64],同年发布JPEG-XS的第一个“委员会草案”版本,基本上确定了核心技术。在XSM测试模型设计方案中,输入图像依次经过拉伸、DC偏移去除、可逆颜色变换、小波变换、预量化(8位右偏移)、常规量化、熵编码后得到压缩信号。
JPEG-XS标准在提案征集阶段便对编码延迟作出了严格要求。从定稿的XSM模型中可以看到,JPEG-XS没有引入视频编码中有效提升效率的基于参考块的预测过程,而是以去相关变换和熵编码为核心实现低延迟、高质量、压缩比适中的图像压缩。
低延迟要求同样对变换等模块的设计和选取有限制。与基于块的编码方案中采用的变换方法不同,JPEG-XS最终选取了低复杂度、保证质量、更为灵活的DWT变换作为主要的去相关方式,并在5/3、13/7等不同长度的滤波器中选择了长度短、延迟低的5/3小波,其可以在1~2个垂直分解级别中运行。依据垂直分解级别及其产生的延迟、质量的差异,标准定义了Main、Light、Light-subline、High 4个配置文件用于不同内容、不同传输环境的编码,以支持不同级别的延迟和复杂度设置。
JPEG-XS对压缩比的要求相对宽松,因而设计的熵编码模块极简单。其将变换量化后的4个水平相邻小波系数组合成编码组,对于每个编码组,计算组合内系数的数据密度最大的位平面,记录位平面特征的数在标准中称为“MSB(Most Significant Bit)位置”,熵编码进而在此基础上传递MSB位置和量化小波系数的绝对值等信息。可见熵编码过程产生的延迟较小,因而作为毫秒级甚至微秒级的图像编码标准,JPEG-XS产生的延迟主要集中在去相关变换上。
4.4 WHDI低延迟方案 WHDI标准是高清数字家电接口协议,具体实施时可以提供足够的无线传输带宽,通过采用浅压缩视频编码方案保证了毫秒级的编码延迟,压缩比约为1.7∶1。由于其总体方案面向短距离无线传输,因而需要编码器同时具备低延迟和配合系统发送数据的能力。WHDI中信源编码端发送压缩数据的系统采用视频数据分组的思想,根据视频数据的重要性将数据打包为不同的分组,通过适当地选择发送时间窗的长度来传输分组,可以权衡视频质量和系统延迟两者的关系,高质量视频对应着更大的延迟,低质量视频对应着更小的延迟[65]。
WHDI标准中为了追求低编码延迟,在编码端不涉及编码预测模块,仅采用DCT变换进行空间去相关,同时,还有块交织等模块用于增强系统的抗差错能力[60],减少了数据重传带来的传输延迟。
5 结论 在实时视频通信中,以用户的QoE(Quality of Experience)为优化目标,即提供更低的系统延迟和更好的视频质量。低延迟视频编码器是实时视频通信系统的重要组成部分,本文总结了常用的低延迟视频编码技术,并分析了这些技术在业界低延迟编码方案中的应用,为低延迟视频编码器的设计提供了借鉴思路。
随着云游戏等超低延迟场景的出现,低延迟视频编码技术的重要性日益凸显,但同时也存在标准兼容性差、缺乏完整的理论支撑、延迟与性能失调等问题,仍然有进一步的研究空间:
1) 完善传统的率失真优化模型,现有的延迟约束的率失真优化模型应用在H.264标准上,没有充分考虑影响编码延迟的因素,理论分析框架比较简单,随着视频编码标准的不断演进,出现了许多新的编码工具,编码延迟的来源也越来越多,需要在新的标准下继续拓展率失真优化模型。
2) 在编码器的计算复杂度方面利用机器学习等新方法充分发挥数据的潜力,提高编码单元划分和编码参数选择的准确性,同时采用轻量高效的方案减少数据训练的额外开销。
3) 在码率控制方面提升细粒度编码单元的比特控制精度,结合强化学习等新思路维持码率的平稳,从而降低缓冲区延迟。
4) 以低延迟编码器为基础构建实时视频传输系统,通过系统的整体架构优化,在视频观看质量和系统延迟之间进行权衡。
未来的低延迟编码方案应能够按照不同应用场景的需求实现编码延迟的弹性配置,并通过与低延迟传输协议配合,最终达到超低延迟视频通信的目标。
参考文献
[1] | CULLEN C. The global internet phenomena report[EB/OL]. [2020-08-26]. https://www.sandvine.com/press-releases/sandvine-releases-2019-global-internet-phenomena-report. |
[2] | 高文, 赵德斌, 马思伟. 数字视频编码技术原理[M]. 2版. 北京: 科学出版社, 2018: 17. GAO W, ZHAO D B, MA S W. Principles of digital video coding technology[M]. 2nd ed. Beijing: Science Press, 2018: 17. (in Chinese) |
[3] | SCHREIER R M, ROTHERMEL A. A latency analysis on H. 264 video transmission systems[C]//Proceedings of the 2008 Digest of Technical Papers-International Conference on Consumer Electronics. Piscataway: IEEE Press, 2008: 307-308. |
[4] | SULLIVAN G J, WIEGAND T. Rate-distortion optimization for video compression[J]. IEEE Signal Processing Magazine, 1998, 15(6): 74-90. DOI:10.1109/79.733497 |
[5] | BICHON M, LE T J, ROPERTOPERT M, et al. Inter-block dependencies consideration for intra coding in H. 264/AVC and HEVC standards[C]//Proceedings of the 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Piscataway: IEEE Press, 2017: 1537-1541. |
[6] | BICHON M, LE T J, ROPERT M, et al. Low complexity joint RDO of prediction units couples for HEVC intra coding[C]//Proceedings of the 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Piscataway: IEEE Press, 2018: 1733-1737. |
[7] | PANG C, AU O C, ZOU F, et al. Optimal distortion redistribution in block-based image coding using successive convex optimization[C]//Proceedings of the 2011 IEEE International Conference on Multimedia and Expo Workshops. Piscataway: IEEE Press, 2011: 1-5. |
[8] | WU Q, XIONG J, LUO B, et al. A novel joint rate distortion optimization scheme for intra prediction coding in H.264/AVC[J]. IEICE Transactions on Information and Systems, 2014, 97(4): 989-992. |
[9] | YANG T, ZHU C, FAN X, et al. Source distortion temporal propagation model for motion compensated video coding optimization[C]//Proceedings of the 2012 IEEE International Conference on Multimedia and Expo Workshops. Piscataway: IEEE Press, 2012: 85-90. |
[10] | LI S, ZHU C, GAO Y, et al. Lagrangian multiplier adaptation for rate-distortion optimization with inter-frame dependency[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2016, 26(1): 117-129. DOI:10.1109/TCSVT.2015.2450131 |
[11] | GONZáLEZ-DE-SUSO J L, MARTíNEZ-ENRíQUEZ E, DíAZ-DE-MARíA F. Adaptive Lagrange multiplier estimation algorithm in HEVC[J]. Signal Processing: Image Communication, 2017, 56: 40-51. DOI:10.1016/j.image.2017.04.010 |
[12] | YANG K, WAN S, GONG Y, et al. An efficient Lagrangian multiplier selection method based on temporal dependency for rate-distortion optimization in H.265/HEVC[J]. Signal Processing: Image Communication, 2017, 57: 68-75. DOI:10.1016/j.image.2017.05.006 |
[13] | ZHANG F, BULL D R. An adaptive Lagrange multiplier determination method for rate-distortion optimisation in hybrid video codecs[C]//Proceedings of the 2015 IEEE International Conference on Image Processing (ICIP). Piscataway: IEEE Press, 2015: 671-675. |
[14] | WANG X, SONG L, LUO Z, et al. Lagrangian method based rate-distortion optimization revisited for dependent video coding[C]//Proceedings of the 2017 IEEE International Conference on Image Processing (ICIP). Piscataway: IEEE Press, 2017: 3021-3025. |
[15] | LI C, WU D, XIONG H. Delay-power-rate-distortion model for wireless video communication under delay and energy constraints[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2014, 24(7): 1170-1183. DOI:10.1109/TCSVT.2014.2302517 |
[16] | LI C, XIONG H, WU D. Delay-rate-distortion optimized rate control for wireless video communication[C]//Proceedings of the 2014 IEEE International Conference on Image Processing (ICIP). Piscataway: IEEE Press, 2014: 5996-6000. |
[17] | HUANG B, CHEN Z, CAI Q, et al. Rate-distortion-complexity optimized coding mode decision for HEVC[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2020, 30(3): 795-809. DOI:10.1109/TCSVT.2019.2893396 |
[18] | CARBALLEIRA P, CABRERA J, ORTEGA A, et al. A graph-based approach for latency modeling and optimization in multiview video encoding[C]//Proceedings of the 20113DTV Conference: The True Vision-Capture, Transmission and Display of 3D Video (3DTV-CON). Piscataway: IEEE Press, 2011: 1-4. |
[19] | WENGER S. Temporal scalability using P-pictures for low-latency applications[C]//Proceedings of the 1998 IEEE Second Workshop on Multimedia Signal Processing. Piscataway: IEEE Press, 1998: 559-564. |
[20] | PAN Z, JIN P, LEI J, et al. Fast reference frame selection based on content similarity for low complexity HEVC encoder[J]. Journal of Visual Communication and Image Representation, 2016, 40: 516-524. DOI:10.1016/j.jvcir.2016.07.018 |
[21] | PARK S H, DONG T, JANG E S. Low complexity reference frame selection in QTBT structure for JVET future video coding[C]//Proceedings of the 2018 International Workshop on Advanced Image Technology (IWAIT). Piscataway: IEEE Press, 2018: 1-4. |
[22] | DESHPANDE S, HANNUKSELA M M, KAZUI K, et al. An improved hypothetical reference decoder for HEVC[C]//International Society for Optics and Photonics. Bellingham: SPIE-INT SOC Optical Engineering, 2013: 866608. |
[23] | SCHREIER R M, RAHMAN A M T I, KRISHNA-MURTHY G, et al. Architecture analysis for low-delay video coding[C]//Proceedings of the 2006 IEEE International Conference on Multimedia and Expo Workshops. Piscataway: IEEE Press, 2006: 2053-2056. |
[24] | MEENDERINCK C, AZEVEDO A, JUURLINK B, et al. Parallel scalability of video decoders[J]. Journal of Signal Processing Systems, 2009, 57(2): 173-194. DOI:10.1007/s11265-008-0256-9 |
[25] | CHI C C, ALVAREZ-MESA M, JUURLINK B, et al. Parallel scalability and efficiency of HEVC parallelization approaches[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12): 1827-1838. DOI:10.1109/TCSVT.2012.2223056 |
[26] | MOHAMED M, NEJMEDDINE B, NOUREDDINE B, et al. Performance evaluation of frame-level parallelization in HEVC intra coding using heterogeneous multicore platforms[C]//Proceedings of the 2018 International Conference on Applied Smart Systems (ICASS). Piscataway: IEEE Press, 2018: 1-6. |
[27] | CHEN K, SUN J, DUAN Y, et al. A novel wavefront-based high parallel solution for HEVC encoding[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2016, 26(1): 181-194. DOI:10.1109/TCSVT.2015.2418651 |
[28] | WANG H, XIAO B, WU J, et al. A collaborative scheduling-based parallel solution for HEVC encoding on multicore platforms[J]. IEEE Transactions on Multimedia, 2018, 20(11): 2935-2948. DOI:10.1109/TMM.2018.2830120 |
[29] | OHM J R, SULLIVAN G J, SCHWARZ H, et al. Comparison of the coding efficiency of video coding standards-Including high efficiency video coding (HEVC)[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12): 1669-1684. DOI:10.1109/TCSVT.2012.2221192 |
[30] | BOSSEN F, BROSS B, SUHRING K, et al. HEVC complexity and implementation analysis[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12): 1685-1696. DOI:10.1109/TCSVT.2012.2221255 |
[31] | TOPIWALA P, KRISHNAN M, DAI W. Performance comparison of VVC, AV1 and EVC[C]//Proceedings of Applications of Digital Image Processing XLⅡ. Bellingham: SPIE-INT SOC Optical Engineering, 2019. |
[32] | SULLIVAN G J, OHM J R, HAN W J, et al. Overview of the high efficiency video coding (HEVC) standard[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12): 1649-1668. DOI:10.1109/TCSVT.2012.2221191 |
[33] | ZHANG T, SUN M T, ZHAO D, et al. Fast intra-mode and CU size decision for HEVC[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2017, 27(8): 1714-1726. DOI:10.1109/TCSVT.2016.2556518 |
[34] | MIN B, CHEUNG R C C. A fast CU size decision algorithm for the HEVC intra encoder[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2015, 25(5): 892-896. DOI:10.1109/TCSVT.2014.2363739 |
[35] | XIONG J, LI H, WU Q, et al. A fast HEVC inter CU selection method based on pyramid motion divergence[J]. IEEE Transactions on Multimedia, 2014, 16(2): 559-564. DOI:10.1109/TMM.2013.2291958 |
[36] | PAN Z, KWONG S, SUN M T, et al. Early MERGE mode decision based on motion estimation and hierarchical depth correlation for HEVC[J]. IEEE Transactions on Broadcasting, 2014, 60(2): 405-412. DOI:10.1109/TBC.2014.2321682 |
[37] | LIU Z, YU X, GAO Y, et al. CU partition mode decision for HEVC hardwired intra encoder using convolution neural network[J]. IEEE Transactions on Image Processing, 2016, 25(11): 5088-5103. DOI:10.1109/TIP.2016.2601264 |
[38] | RYU S, KANG J. Machine learning-based fast angular prediction mode decision technique in video coding[J]. IEEE Transactions on Image Processing, 2018, 27(11): 5525-5538. DOI:10.1109/TIP.2018.2857404 |
[39] | XU M, LI T, WANG Z, et al. Reducing complexity of HEVC: A deep learning approach[J]. IEEE Transactions on Image Processing, 2017, 27(10): 5044-5059. |
[40] | AMESTOY T, MERCAT A, HAMIDOUCHE W, et al. Tunable VVC frame partitioning based on lightweight machine learning[J]. IEEE Transactions on Image Processing, 2019, 29: 1313-1328. |
[41] | TRAN T D, LIU L K, WESTERINK P H. Low-delay MPEG-2 video coding[C]//Proceedings of the SPIE-The International Society for Optical Engineering. Bellingham: SPIE-INT SOC Optical Engineering, 1997: 510-516. |
[42] | TOURAPIS A M, LEONTARIS A, SUHRING K, et al. H. 264/14496-10 AVC reference software manual[EB/OL]. [2020-07-04]. http://iphone.hhi.de/suehring/tml/JM%20Reference%20Software%20Manual%(JVT-AE010).pdf. |
[43] | DELA CRUZ A R, CAJOTE R D. Low complexity adaptive intra-refresh rate for real-time wireless video transmission[C]//Proceedings of the Signal and Information Processing Association Annual Summit and Conference (APSIPA). Piscataway: IEEE Press, 2014: 1-5. |
[44] | ZHOU Y R, LI G Q, NING S S. A new feedback-based intra refresh method for robust video coding[C]//Proceedings of the 2015 International Conference on Computer Science and Applications (CSA). Piscataway: IEEE Press, 2015: 218-221. |
[45] | HENDRY, WANG Y K, CHEN J L, et al. CE11/AHG14: Test 3.1-An approach for support of GRA/GDR[EB/OL]. [2020-07-04]. http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/15_Gothenburg/wg11/JVET-O124-v3.zip. |
[46] | LEE Y G, SONG B C. An intra-frame rate control algorithm for ultralow delay H.264/advanced video coding (AVC)[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2009, 19(5): 747-752. DOI:10.1109/TCSVT.2009.2017413 |
[47] | CHOI H, NAM J, YOO J, et al. Rate control based on unified RQ model for HEVC[EB/OL]. [2020-07-04]. http://phenix.int-evry.fr/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H0213-v3.zip. |
[48] | CHOI H, YOO J, NAM J, et al. Pixel-wise unified rate-quantization model for multi-level rate control[J]. IEEE Journal of Selected Topics in Signal Processing, 2013, 7(6): 1112-1123. DOI:10.1109/JSTSP.2013.2272241 |
[49] | WANG S, MA S, WANG S, et al. Quadratic ρ-domain based rate control algorithm for HEVC[C]//Proceedings of the 2013 IEEE International Conference on Acoustics, Speech and Signal Processin(ICASSP). Piscataway: IEEE Press, 2013: 1695-1699. |
[50] | LI B, LI H, LI L, et al. λ domain rate control algorithm for high efficiency video coding[J]. IEEE Transactions on Image Processing, 2014, 23(9): 3841-3854. DOI:10.1109/TIP.2014.2336550 |
[51] | GAO W, KWONG S, JIA Y. Joint machine learning and game theory for rate control in high efficiency video coding[J]. IEEE Transactions on Image Processing, 2017, 26(12): 6074-6089. DOI:10.1109/TIP.2017.2745099 |
[52] | KWONG S, ZHOU M, XUEKAI W E I, et al. Rate control method based on deep reinforcement learning for dynamic video sequences in HEVC[J]. IEEE Transactions on Multimedia, 2020, 99: 1. |
[53] | JIANG C, NOOSHABADI S. A scalable massively parallel motion and disparity estimation scheme for multiview video coding[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2016, 26(2): 346-359. DOI:10.1109/TCSVT.2015.2402853 |
[54] | SHAHID M U, AHMED A, MARTINA M, et al. Parallel H.264/AVC fast rate-distortion optimized motion estimation by using a graphics processing unit and dedicated hardware[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2015, 25(4): 701-715. DOI:10.1109/TCSVT.2014.2351111 |
[55] | XIAO B, WANG H, WU J, et al. A multi-grained parallel solution for HEVC encoding on heterogeneous platforms[J]. IEEE Transactions on Multimedia, 2019, 21(12): 2997-3009. DOI:10.1109/TMM.2019.2916462 |
[56] | MOMCILOVIC S, ROMA N, SOUSA L. Exploiting task and data parallelism for advanced video coding on hybrid CPU + GPU platforms[J]. Journal of Real-Time Image Processing, 2016, 11(3): 571-587. DOI:10.1007/s11554-013-0357-y |
[57] | INTEL. Scalable video technology for HEVC encoder (SVT-HEVC Encoder)[EB/OL]. (2020-08-20)[2020-08-26]. https://github.com/OpenVisualCloud/SVT-HEVC. |
[58] | SURUR. TPCAST's wireless Adapter coming to the Oculus Rift next week[EB/OL]. (2017-11-08)[2020-08-26]. https://mspoweruser.com/tpcasts-wireless-adapter-coming-oculus-rift-next-week/. |
[59] | BUYSSCHAERT C, DESCAMPE A, FÖßEL S, et al. Overview of JPEG XS[EB/OL]. 2018[2020-08-26]. https://jpeg.org/jpegxs/index.html. |
[60] | AMIMON, Ltd. Wireless home digital interfaceTM specification v1.0 Revision 33[EB/OL]. [2020-07-04]. https://www.amimon.com/proavl. |
[61] | NETINT. Codensity T408 video transcoder product brief[EB/OL]. [2020-08-26]. https://www.netint.ca/product/t400_transcoder/. |
[62] | INTEL. Scalable video technology for the visual cloud[EB/OL]. [2020-08-26]. https://01.org/sites/default/files/documentation/svt_aws_wp.pdf. |
[63] | CAST. H264-E-BPF ultra-fast AVC/H. 264 baseline profile encoder[EB/OL]. [2020-08-26]. https://www.cast-inc.com/compression/avc-hevc-video-compression/h264-e-bpf/. |
[64] | RICHTER T, KEINERT J, FOESSEL S, et al. JPEG-XS-A high-quality mezzanine image codec for video over IP[J]. SMPTE Motion Imaging Journal, 2018, 127(9): 39-49. DOI:10.5594/JMI.2018.2862098 |
[65] | REZNIC Z. Successive refinement video compression: USA, WO2018025211A1[P]. 2018-02-08. |