VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文

Over-The-Top自适应流媒体技术已成为通过互联网传输高质量视频内容的一种流行方法,可根据用户的互联网连接速度和设备功能调整视频质量。它使用多比特率编码技术,将视频划分为不同比特率和分辨率的较小片段。由于编解码器的限制,片段必须以所谓的封闭GOP进行编码,而在广播中,更有效的开放GOP编码被广泛使用。新兴的通用视频编码(VVC)标准也允许在自适应流中使用更有效的开放GOP编码方法。本文描述并讨论了开放GOP编码在云转码中的集成和实时编码自适应流应用。此外,一项非正式的主观测试证实了所提出的开放GOP技术的好处,表明与封闭GOP编码相比,主观质量显著提高。

标题:BEST OF BOTH WORLDS – VVC ENABLES OPEN GOP CODING IN ADAPTIVE STREAMING WORKFLOWS
来源:https://www.ibc.org/technical-papers/ibc2023-tech-papers-best-of-both-worlds-vvc-enables-open-gop-coding-in-adaptive-streaming-workflows/10285.article
作者:M. Alvarez-Mesa, B. Bross, C. C. Chi, C. Feldmann, S. Sanz-Rodriguez, A. Wieckowski
内容整理:李江川

简介

随机接入点(RAPs)在视频娱乐应用中非常重要。它们指的是编码视频流中的特定点,观众可以在这些点开始播放,而不必等待整个码流加载。这个技术在调谐或切换频道的广播以及自适应流中尤为重要,在自适应流中,视频流通常被划分为较小的片段,并根据观众的带宽和设备能力动态传输。

在视频编码中,一组图片(GOP)定义了RAPs之间的分层参考结构。RAPs总是以帧内预测为标志,并且视频编解码器经常在两个RAPs之间使用多个GOP。为了避免混淆,使用intra-period来表示两个RAPs之间的距离。传统上,RAPs处的GOP是“封闭的”,即编解码器的帧间预测不能参考RAPs之前GOP的图片。这降低了编码效率,因为它限制了要利用的时间冗余。最近的标准,例如高效视频编码(HEVC),促进了所谓的“开放”GOP编码,以获得更高的压缩效率。在广播界,开放的GOP已经被广泛使用。在自适应流媒体世界中,封闭GOP用于随机访问以及切换模式,例如空间分辨率或比特率。当切换空间分辨率时,由于需要空间缩放,传统编解码器禁止在GOP之间打开GOP的图片间引用。最新的通用视频编码(VVC)标准引入了一种称为参考图片重采样(RPR)的功能来解决这一问题。除此之外,VVC编码器的限制可以防止令人不快的视觉伪影,这可能是由不同GOP间分辨率切换引起的。

在本文中,首先回顾了使用封闭GOP的自适应流媒体的最新技术及其缺点。之后,简要描述了VVC如何使用参考图片重采样和某些编码器约束来启用开放GOP自适应流。最后,描述了在高度可扩展的云转码解决方案以及实时编码工作流中集成开放GOP编码的好处和挑战。

自适应流中的SOTA

自适应流,例如HTTP实时流(HLS)或基于HTTP的动态自适应流(DASH),以及最先进的视频编解码器仅限制使用封闭的GOP。在本节中,将解释该限制背后的原理、开放和封闭GOP之间的差异以及它们与随机接入点的关系。最后讨论了封闭GOP自适应流的缺点。

开放GOP和封闭GOP

MPEG-2允许通过利用画面内预测的空间冗余(I)或通过利用画面间预测的空间和时间冗余来对视频画面进行编码。帧间帧可以是预测性的(P),其使用来自一个先前解码的图片的数据来对块进行时间预测,或者是双预测(B),其对来自多达两个先前解码图片的平均数据进行预测。

将I帧插入视频比特流中的频率称为intra-period。RAPs通常使用I帧创建,I帧可以独立编码,并允许解码器开始解码视频序列。intra-period由应用程序定义。对于广播,intra-period通常设置为1秒,以最大限度地减少调谐和频道切换延迟。然而,对于流式应用程序,可以使用2到4秒的较长intra-period来提高压缩效率,从而减少交付视频内容所需的数据量。

研究表明,将图片重新排列到所谓的GOP中以获得分层参考结构可以提供一些显著的编码效率增益。图1显示了有8张图片的两个这样的GOP的示例。GOP#2的图片没有参考来自先前GOP#1的图片。这种时间参考结构的中断被称为闭合GOP。在随机访问的情况下,来自GOP#2的最后I帧和所有先前B帧可以独立于来自GOP#1的先前帧而被解码和显示。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
图1 封闭GOP编码结构

另一方面,图2说明了一个开放GOP的结构。这里,GOP#2帧会参考在相关联的I帧之前的来自GOP#1的图片。在对最后一个I帧进行随机访问的情况下,需要跳过编码顺序10-16中的所有后续B帧,因为它们依赖于之前的图片帧0-8。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
图2 开放GOP编码结构

HEVC引入了不同的图片帧类型。对于闭合GOP,瞬时解码刷新(IDR)图片表示解码器被重置,包括解码图片帧缓冲器也会被重置。随机访问可解码前导(RADL)图片用于标记不参考在相关IDR图片帧之前的帧间预测帧的图片,即在随机访问的情况下可解码的图片(如图1)。对于开放GOP,约束随机存取(CRA)图片会将参考帧保留在解码图片缓冲区中,随机存取跳过前导(RASL)类型用于标记以下的图片,这些图片在显示顺序中引用了相关CRA图片之前的帧间预测帧,即在随机存取的情况下需要跳过(如图2)。VVC使用相同的图片帧类型来发出关闭和打开GOP的信号。

封闭GOP自适应流的不足

在客观性能方面,对于1s和4s长度的视频片段,在相同峰值信噪比(PSNR)的情况下,使用开放GOP可以分别提供8.5%和2%的比特率节省。

使用开放GOP所得到的比特率节省是基于在所有视频帧上取得相同的平均的PSNR值。然而,在封闭的GOP结构中,误差不是均匀分布在整个视频中,而是主要集中在随机接入切换点,即帧内图片周围。这可能导致令人不快的伪影,即在切换点可以观察到所谓的时间泵浦效应。这是因为闭合GOP破坏了运动补偿预测,从而导致不同的失真模式。当切换到更高质量的格式副本时,情况会更糟。

VVC用开放GOP编码改进自适应流

在上一节中,已经解释了开放GOP方法的好处以及它不用于自适应流的原因。为了在自适应流中的切换点启用开放GOP,最新的VVC标准使用了名为参考图片重采样(RPR)的工具。这个工具与编码器约束相结合,实现了自适应流中的开放GOP。

VVC中的参考图片重采样(RPR)

在自适应流媒体中,当播放具有特定分辨率的视频时,如果带宽允许或需要,客户端可以决定切换到更高或更低的分辨率。因此,新片段中的图片与前一片段中的图片具有不同的空间分辨率。图3展示了使用开放GOP编码结构从高清(HD)到4K的切换。可以看出,来自片段#N的4K图片参考了来自片段#(N-1)的HD图片。在VVC中,分辨率不再是一个问题,因为引入了RPR技术,该技术指定了一组重采样滤波器,允许将高清图片升级到4K,以便可以参考。为了便于实现,特别是在硬件上实现,缩放因子被限制为大于或等于1/2(从参考图片到当前图片的2倍下采样),并且小于或等于8(8倍上采样)。在图3的示例中,使用了2倍上采样。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
图3 开放GOP编码结构中的分辨率切换

在必须从高分辨率切换到低2倍以上的分辨率的极端情况下,由于上述限制,不能使用RPR。因此,需要对非常低的分辨率进行封闭GOP回退再现。然而,在这种情况下,带宽的显著下降将对视觉质量产生严重影响,开放GOP无论如何都不会带来任何好处。

分辨率切换时的VVC约束

虽然VVC中的RPR解决了引用来自具有不同空间分辨率的先前图片帧的问题,但仍然存在一个问题。在切换具有开放GOP结构的分辨率之后,解码器侧参考图片与编码器侧不同。这种漂移只发生在RASL图片中,它会导致视觉上令人不快的伪影。这些伪影源于对参考样本的变化敏感的编码工具,如解码器侧的运动矢量细化。防止这种情况发生的一种方法是约束编码器不使用这些工具。此外,这些限制仅适用于图3所示的RASL图片,并且相关研究已经表明,对编码效率的总体影响是微不足道的,最坏情况下比特率增加了0.65%。

在VVC中,定义了受约束的RASL编码指示SEI消息,以通知封装器(例如对于DASH或HLS)应用了这些编码约束。这样,可以在表示相同源视频内容的码流之间进行切换,而不会在RASL图片的重构采样值中具有较多的视觉上可注意或令人讨厌的伪影。

云传输用例

在第一个用例中,重点关注视频点播(VoD)应用。在开始编码时,完整的视频输入可以使用。这允许Bitmovin编码器同时对输入的多个部分进行操作,从而在云计算资源池中并行扩展。Bitmovin编码器通过集成Fraunhofer HHI的VVenC VVC编码器软件,支持开放GOP编码方案。

与Bitmovin的集成

Bitmovin编码器采用分割和拼接的方法。基于预先配置的输出格式,将整个编码任务划分为各个编码子任务。例如,对于具有4秒的段大小的分段DASH或HLS输出,每一个段都表示一个不同的编码任务。然后,所有编码任务都被调度并分布在亚马逊网络服务、谷歌云平台或微软Azure云中运行的虚拟机集群上。将编码细分为许多小部分可以实现出色的并行性。此外,单个任务越小,就可以越灵活地将它们调度到可用的虚拟机上,这允许在整个编码时间内高度利用整个虚拟机集群,这反过来又最小化了整个编码时间。如果段很长,则调度效率较低,并且在编码的后期观察到拖尾效应,视频编码没有完成,因为一些较长的运行任务尚未完成。

我们在编码过程中观察到,如果段更长,许多核心编码器的速率控制性能更好。更长的分段还允许在整个过程中降低开销(例如,调度、上传、下载、解码、滤波等)。随着智能分块的引入,我们实现了一个功能,将多个后续的分段编码作业合并到一个更大的任务中,我们将其称为编码分段(见图4)。合并后的段为一个编码任务。编码器被要求放置随机接入点,比特流随后被分段、多路复用并上传到输出。如上所述,这些段的长度是一种折衷,其中较长的段导致改进的编码性能、较低的开销,但也降低了调度效率。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
图4 将四个输出段合并为一个编码段的示例

对于开放GOP的切换,Smart Chunking是一个完美的选择。我们可以将多个片段的编码合并为更大的编码片段,其中除了第一个片段之外的所有片段都可以用开放GOP预测进行编码。由于新的编码器必须在每个编码段的开头开始,因此我们必须使用闭合GOP(使用IDR帧)对每个编码段的开头片段进行编码。至于Smart Chunking,这是一种权衡。编码段越长,开放的GOP就越多,并且可以受益于更高的编码效率和段边界处的自适应开放GOP切换。但由于调度效率降低和潜在的更高编码成本,较长的分段也意味着较长的编码时间。

以上用例的实际实现非常简单,因为我们已经将VVenC集成到Bitmovin编码器中。用于每个编码任务的编码器被配置为使用开放GOP,还启用了自适应分辨率切换的约束。然后,我们通过配置编码器将随机接入点准确地放置在每个子段的开头,然后启用了智能分块方法。

实验结果

为了评估较长编码段的影响,我们设置了一些不同长度的编码。在实验中,每个输出片段的大小为4秒96帧(对于帧率为24的情况)。然后,我们将1、4、8和16个片段合并为编码片段,分别得到4、16、32和64秒的长度。VVenC编码器被配置为将IDR帧放置在编码段的最开始处,并且将具有受约束的开放GOP预测的RAPs放置在其余段的开始处。该实验中的intra-period等于片段大小(4s),并且对从360p到4k的多个不同分辨率进行编码。具有1个分段的情况仅由闭合GOP组成,并作为我们测量的参考基线。编码段越长,开放的GOP就越多。例如,对于16s编码段,有一个闭合的GOP段,后面跟着3个开放的GOP分段。我们测量整体编码时间以及编码的整体云成本。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
表1 不同数量的段合并为编码段的相对云成本和编码时间

表1显示,对于12-20分钟的短编码,编码的开销可能相当显著。对于16个合并段的情况,总编码时间几乎是原来的三倍。虽然对总体成本的影响较低,但也在增加。对于长输入(60分钟),我们能够观察到相对编码时间的变化非常相似,而相对成本的增加要低一点。总之,虽然在云编码传输用例中可以很容易地启用开放GOP自适应流,但在可以从中受益的分段数量和并行扩展编码的能力之间存在折衷。

实时编码用例

第二个用例侧重于实时应用程序,其中视频是实时编码的,并通过互联网传输。自适应流允许具有各种设备和网络状况的多个终端用户不间断地访问内容。与离线VoD应用程序不同,在离线VoD中可以进行(例如分段级)并行化,在直播的情况下,编码器必须依赖细粒度并行化(例如:波前、片或帧级),以便能够确保在目标帧速率下的实时操作,同时满足低延迟约束(通常为1到2秒)。

此外,编码器最好在单个服务器上实时生成所有格式副本,因为这有助于时间同步和打包。在整个现场工作流程中,编码器通过IP上的SDI或TS接收来自现场制作的视频和音频信号,在单个服务器上使用多个格式进行实时编码,将生成的比特流打包到HLS或DASH中,并将其发送到CDN,最终交付给终端用户。

Spin Digital为超高清实时自适应比特率(ABR)应用程序开发了一种VVC软件编码器,该编码器满足所有上述要求:在VVC中进行实时编码,用于单个服务器中的多个副本,低延迟编码,在HLS或DASH中打包,并交付到CDN。

使用开放GOP的实时ABR的VVC

Spin Digital Live VVC编码器已通过开放GOP和所提出的约束进行了增强,以减少切换点处的误差传播。我们进行了一些实验来评估这些新技术的影响,其中我们使用Spin Digital VVC实时编码器以恒定QP模式对11个4K-UHD-60fps视频片段进行编码,QP在24到38之间。GOP大小(即RASL图片的数量)被设置为16帧,并且intra-period在16到128帧的范围内。值得注意的是,在实时ABR流中,通常将intra-period设置为与分段相同的大小,并定义相对较小的分段大小(2到4秒),以减少端到端延迟。在实时ABR流中,分段大小是延迟和上传效率之间的折衷:较大的分段可以更有效地上传到原始服务器(较少的连接开销),但会导致较长的延迟,而较短的分段大小会导致较短的延迟,但传输效率较低。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
表2 对于不同的intra-period,不同编码器的BD-rate损失

如表2所示,比较的基线是无约束的开放GOP编码,与所使用的intra-period无关,约束开放GOP编码导致相对于开放GOP编码的最小BD-rate损失(高达0.10%)。另一方面,正如预期的那样,封闭GOP编码在所有情况下都会产生BD-rate损失。例如,对于64帧的intra-period,BD-rate增加为6.21%。由于编码视频中闭合GOP的存在增加,压缩效率的损失随着intra-period的减少而变得更加显著。最坏的情况发生在intra-period具有与GOP相同的大小(即16帧)时,其中BD-rate损失甚至可以超过20.0%。

实时性能:单个服务器上的实时ABR编码

VVC实时编码器已针对最新一代CPU架构进行了广泛优化,以实现实时自适应流应用程序所需的性能和压缩级别。因此,编码器能够在单个服务器中同时处理包括UHD在内的多个格式副本,与HEVC相比,压缩效率显著提高。例如,当在具有两个Intel Xeon Platinum 8368 CPU(2×38核)的双插槽服务器上运行时,编码器能够处理4K(2160p)、1080p和720p,所有这些副本都以60帧/秒的速度以10bit的深度进行处理,并将它们封装在HLS或DASH中以流式传输到CDN。最后,实时编码器还支持开放GOP和封闭GOP副本的同时、对齐的混合,这允许接收器快速切换回低分辨率副本作为后备,如前一节关于参考图片重采样处所述的,从高分辨率切换到低2倍以上的分辨率的极端情况。

主观实验

VVC编码器的新功能已在非正式主观测试中进行了验证。在这项测试中,使用了四个1分钟的8K(7680×4320,10位,60帧/秒)视频剪辑。表3显示了关于测试片段的详细信息,其中还规定了它们在空间和时间信息(SI,TI)方面的时空特征,这两个信息在ITU-R BT.500中定义。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
表3 8K视频剪辑片段的详细信息

为了测试结果的可再现性,创建了预配置的格式副本,模拟具有多个分辨率开关切换的场景。特别地,Spin Digital VVC实时编码器被配置为使用受约束的开放GOP、intra-period为1s和恒定比特率(CBR)控制。使用这些编码设置,视频序列首先以不同的分辨率(2K、4K、5K、6K、8K)和比特率进行编码(见表4),并打包成每个5秒的HLS段。

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
表4 主观测试选定的分辨率和比特率

然后,通过获取12个不同分辨率的5秒HLS段,创建了几个1分钟的VVC比特流(见图5),以便解码器的RPR滤波器可以在每个维度上使用以下上下缩放因子:放大系数:1.20、1.25、1.33、1.50、2.00、4.00 缩小系数:1.20、1.25、1.33、1.50、1.60、2.00、4.00

VVC在自适应流式处理工作流程中支持OPENGOP编码 | IBC2023论文
图5 具有不同分辨率切换模式的测试视频

出于比较的目的,重复此工作流程以生成用封闭GOP编码的HLS比特流。使用Spin Digital开发的VVC解码器和8K电视播放比特流。该播放器被配置为将解码的图片上采样到电视的分辨率。

主观实验的结果总结如下:

模式1

在该比特流中,分析了开放GOP分辨率随分数RPR比例因子的变化。根据主观实验,在比特流中呈现的任何组合的分辨率变化之后,都没有观察到可见的编码伪影。在每个intra-period开始时没有观察到泵送伪影。封闭GOP版本显示了周期性的泵浦伪影,尤其是在显示2K版本时。值得注意的是,泵浦效应在分辨率变化时并不那么关键,但在随后的intra-period中却如此关键。

模式2

第二种模式包括允许RPR滤波器使用整数缩放因子:2倍缩小和4倍放大。与第一种情况一样,在分辨率改变之后没有检测到编码错误。此外,观察到,当从8K切换到4K和从4K切换到2K时,测试片段变得更模糊,当从2K切换到8K时,测试片段变得更清晰,但在质量上没有明显的泵浦效应。还观察到,与具有大量运动(由于时间掩蔽)或很少空间复杂性的视频片段相比,具有大量空间细节和相对较少运动的视频镜头对分辨率上的转变更敏感。

模式3

第三个实验主要集中在当视频分辨率从8K变为2K(4倍下采样)时测试RPR的表现,以验证当RPR下采样因子高于VVC标准中允许的最大值(2倍)时,编码伪影或漂移是否可见。根据主观分析,没有观察到编码错误,这表明RPR下采样因子可以增加到4甚至8,而不会对感知质量产生负面影响。这将需要调整滤波器系数或滤波器长度,以便增加重新采样的图片的保真度,从而进一步减少误差传播。此发现可用于VVC标准的未来配置或扩展。

结论

VVC允许通过启用开放GOP编码来改进自适应流,该编码允许针对随机接入点周围的特定类型的图片(RASL)参考来自相同内容的不同副本的图片。这不仅需要VVC中称为参考图片重采样的新功能,还需要某些编码器约束来消除视觉上令人不快的伪影。在本文中,我们描述了两个应用程序的开放GOP自适应流的实际实现。一种是用于视频点播的分布式云编码,结果表明开放GOP编码可以与智能分块方法相结合。第二种是实时自适应流,其中实时编码器可以将开放GOP应用于所有编码的副本,并与封闭GOP相比在没有负面副作用的情况下提高压缩效率。一项非正式的主观测试证明了所提出的开放GOP技术的主观优势,表明与封闭GOP编码相比,主观质量显著提高,并且在分辨率切换时没有与开放GOP相关的可见伪影。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论