新的开源编码器XVC,AV1和HEVC之外的另外选项?

简介:

视频数据是目前互联网流量中最大的一部分,占用的带宽比重较大。而通常在视频流媒体应用中,播放端可以达到的最高质量水平与可用带宽直接相关,因此高效的视频编码器对于视频内容提供商而言可以有效降低带宽成本。目前市场上最主要的视频编解码器AVC/H.264被广泛用于流媒体应用,但是构建H.264的编码技术已经过时,而像HEVC这样的新一代视频编解码器可以在保持视频质量不变的同时将带宽需求降低高达50%。但是,由于许可费用昂贵且具有不确定性,HEVC从发布到现在已经有四年多的时间了,目前还没有被广泛部署。近期,总部位于斯德哥尔摩的一家名为Divideon的公司发布了一款新的视频编解码器xvc(开源地址:https://github.com/divideon/xvc),采用了一种新颖的设计来简化编解码器的定价问题。

xvc codec是于2017年9月首次发布的一款新的视频编解码器。该编解码器是一种灵活的基于软件实现的视频压缩工具,其中包括参考编码器和参考解码器。 xvc编解码器包含的视频压缩技术工具主要来源于MPEG标准(例如AVC/H.264和HEVC),但它同时也包含了一些超越这些标准的压缩技术,能够实现较高的视频压缩性能。xvc codec已有的测试结果表明,与HEVC相比,保持同等视频质量所需的带宽可以进一步减小。下面将介绍xvc编解码器的特点、性能表现以及独特的许可授权。

特点:

xvc编解码器由大约60个独立编码工具构成,它们共同提供xvc高效的视频压缩性能。 有关这些工具的详细信息,请根据参考资料中给出的源码地址查阅相关内容。

xvc是基于目前先进的编码技术构建的基于块的混合(帧间/帧内)视频编解码器。xvc codec对原始YUV图像数据进行处理并将其压缩为NAL(网络抽象层)单元结构化比特流,内部同样包括帧内帧间预测,DCT变换,量化,上下文自适应熵编码以及边界滤波后处理等模块。每个模块中的各种技术工具可以通过码流中的控制信息在运行时进行开关控制。

xvc编解码器的设计主要是以流媒体服务为主要用途,部分原因是因为这是一个迅速增长的领域,需要非常高效的压缩技术,而且在这种场景下客户端远程连接到服务器并且支持远程更新(与许可证有关,详见本文后续介绍)。此外,它还具有轻量级的高级语法层,以及在自适应比特率(ABR)应用中进行码流间转换的新方法。

xvc编解码器在视频格式方面非常灵活。 图像尺寸可以从例如256×144和320×180到4K,8K甚至16K视频。位深度bitdepth和色度格式chroma format也同样支持多种组合。 xvc编解码器原生支持的色度格式和位深度的各种组合如下表所示,而解码器的输出格式可通过解码器配置进行控制。

表1 xvc支持的chroma format和bitdepth组合

性能:

视频编解码器最重要的一个方面就是能够尽可能地将视频序列压缩到尽可能小的同时视觉质量尽可能高。将新旧不同的编解码器进行比较时,通常观察在维持特定质量水平时比特率可以降低多少。下面使用JCTVC-Z1100中描述的测试条件,将xvc(2017年9月发布)的版本1.0与HEVC参考软件HM(版本16.15)和x265(版本2.5)进行比较。编码使用的CPU为Intel Xeon E5-2660 CPU。

三种编解码器的编码参数如下:

  • x265编码使用 high-bitdepth版本(2017/08/21),运行时使用以下参数:-output-depth 10 -keyint 48 -min-keyint 48 -qp %QP% -preset placebo -no -wpp -tune psnr -frame-threads 1 -pools none
  • HM使用16.15版本,编码参数为:-c encoder_randomaccess_main10.cfg -q %QP%,并加入IntraPeriod = 48
  • xvc使用1.0版本,编码参数为:-internal-bitdepth 10 -qp %QP% -max-keypic-distance 48 -tune 1

下图展示了在JCT-VC测试序列BasketballDrill上四个不同比特率下的PSNR值。

图1 三种编码器在BasketballDrill上的性能比较

从图中可以看出,在各个码率点下,xvc表现出了更高的性能增益(PSNR)。对于该测试序列,xvc编解码器实现了7.8%的BD-Rate增益(与HM相比),与x265相比增益更高,为30.4%。

另外,基于所有测试序列(Class A-D)的HM(anchor)vs. xvc 1.0 BD-Rate(PSNR)结果可以在表2中看到,在相同质量下xvc比特率节省平均达到4%。

表2 HM与xvc 1.0的性能比较

当不在多线程配置下运行xvc时,其编码时间大致类似于HM(xvc慢4%),而xvc解码时间平均快49%。

表3展示了x265(anchor)vs. xvc 1.0的BD-Rate(PSNR)结果,可以看出xvc能够提供平均18.8%的比特率节省。xvc和x265编码器都是在没有多线程的情况下运行的,在这种配置下,xvc编码器的编码速度平均慢了65%。

表3 x265与xvc 1.0的性能比较

另外,在码率相同时,xvc可以提供比AVC/H.264以及HEVC更好的视觉质量。图2展示了xvc与x264码流的解码质量,画面是从以300Kbps码率编码的分辨率为1280x512的视频中截取的。

图2 x264(上)和xvc(下)解码视频视觉质量比较

此外,xvc解码器已经在少数移动设备上进行了测试,以初步确定移动设备的解码能力和对电池使用时长的影响。大多数具有至少四个内核的智能手机可以实时运行xvc软件解码器解码高清视频。在其中一项测试中,三星Galaxy 8+智能手机使用xvc软件解码器能够以低于500 Kbit/s的速率解码标清视频,持续播放时间为9小时3分钟。对于同一视频序列,如果使用H.264 codec编码成相近的质量,并使用H.264硬件解码器解码,播放时间可以持续9小时20分钟。而在另一项测试中,三星Galaxy 8+使用H.264 codec能够以800 Kbit/s左右的速率解码720p视频,持续播放时间为8小时45分钟,而使用xvc codec在类似编码质量下,码率大约400 Kbit/s,持续时长为7个小时。一般来说,已有的测试表明,在视频比特率低于1 Mbps的情况下,处理器所消耗的电量与显示屏幕等器件相比几乎可以忽略不计。预计xvc软件解码器的后续优化将进一步降低电池消耗。

许可:

视频编码标准在制定的过程中往往经过了大量的研究,不少技术提案贡献者已经获得了其中一些编码工具的专利。ISO/IEC和ITU-T(其中包括MPEG和VCEG)等标准制定组织通常要求技术贡献者承诺其编码技术在FRAND(Fair, Reasonable And Non-Discriminatory)条款下是可用的,从而确保在标准完成后参与标准化工作的组织不会要求不合理的索赔。尽管FRAND在一些方面作为基本原则是合理的,但是在实践中很难实施,特别是在为标准中的专利方法确定价格的时候。

HEVC目前存在的两个主要的专利权相关的问题包括:专利权保留和版权堆叠。专利权保留是指在技术被接受之前等待申报专利权的做法。早期的技术采用者在没有成本估算的情况下选择第三方技术,而一旦被某个技术吸引住,后期技术变革的成本就非常高,以至于知识产权所有者可能会收取比开始时更高的版税。而多个不同版权的堆叠,也会导致总成本飙升。HEVC复杂而昂贵的许可授权使得许多视频服务厂商望而却步,转而寻找新的codec作为替代。

xvc是一款通用的视频编解码器,可用于流媒体服务、广播、监控及视频会议等多种场景。与HEVC复杂而且昂贵许可授权相比,xvc是比较灵活方便的,独特的授权模式确保了xvc编解码器的用户只需要获得一个许可证,而不必担心潜在的外部第三方版税索赔。而且xvc的许可证对于如何应用xvc没有任何限制。但是,xvc codec主要针对具有远程接收和安装软件更新功能的连接设备。这个基本特征不仅是为了给用户推送性能改进或其他新的功能,而且是为了移除确定将不被xvc许可证覆盖的个别技术工具。也就是说,如果第三方机构已经申请专利的技术不愿意接受xvc的许可证条款,将会从xvc codec发布的新版本中移除。虽然将更新推送给客户端的功能对使用xvc的服务或应用程序提出了一些额外的要求,但是如果没有这种能力,xvc将面临与其他编解码器(例如HEVC)类似的许可授权十分复杂的处境,并在使用中受到多种不确定性以及不合理的版税索赔的限制。

xvc编解码器提供了一个保证,即专利持有者的版税将在合同周期内保持固定,从而避免出现类似Velos专利池的情况。因此在构建编解码器时,Divideon将与每个技术组件相关的IP追溯到对应的发明者。专利持有人如果拒绝参与Divideon方面的专利注册登记,那么他们的技术将不会被包含在codec中。登记在xvc参考软件专利列表的组织和个人有权通过xvc许可证发放获得收入份额。单个许可方可能拥有多个包含在xvc参考软件中的专利。根据以下模式,向许可方支付的收入与经过验证的专利数量成正比:

其中,Rx是分配给公司X的收入份额,Px是公司X的专利数量,Y是总收入,Pall是专利总数。在xvc总收入中,70%分配给专利持有人,30%分配给Divideon。

由于编解码器的设计是模块化的,所以如果发生任何侵权行为,Divideon可以直接从编解码器中删除该技术组件。具体地,如果xvc许可证持有者遭到侵权索赔,Divideon将在侵权声明发出60天内采取以下措施:

1. 有关专利被添加到xvc许可证所涵盖的专利列表中

2. Divideon同意支付所有费用和损失,包括诉讼等潜在费用(如果法院认定涉嫌侵权是有效的)

3. 将专利技术从xvc编解码器中删除,并发布新版本的编解码器,即Divideon在收到侵权声明之日起60天内提供新版本的xvc参考软件

侵权声明需要具体针对哪个专利被侵权以及参考软件的哪个功能侵犯专利。针对收到的侵权主张,Divideon可以自行决定采取哪一种应对措施。但是如果专利持有者意外退出,迫使Divideon从编解码器中删除其IP,可能会导致xvc codec损失性能。如果发生这种情况,xvc许可证持有者将不得不在某个时间进行版本更新或转换到其他codec,如果已经在硬件中部署了xvc,则可能会出现比较严重的问题。我们知道,没有什么解决方案是没有风险的

原文发布于微信公众号 - 媒矿工厂(media_tech)

原文发表时间:2018-02-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器人网

六轴机器人在机床上下料中的应用

现今在很多零件的数控加工过程中,要把第一工序加工完的零件先取下,然后以刚加工完面作为定位基准在同一工作台的另一工装上或另一加工中心上完成第二工序加工。通常要把零...

672
来自专栏机器人网

一种嵌入式智能寻迹机器人设计

 1 引言   在信息技术的飞速发展,计算机,通讯、消费电子三种技术合一的后PC的时代,虽然计算机和网络已经全面渗透到日常生活的每一个角落,但各种各样的新型嵌入...

4109
来自专栏新智元

【通用人工智能的新宇宙】OpenAI 重磅发布AGI测试训练平台Universe

【新智元导读】OpenAI 昨天发布 OpenAI Universe, 根据其官方博客的介绍,这是一个能在几乎所有环境中衡量和训练 AI 通用智能水平的开源平台...

3437
来自专栏PPV课数据科学社区

CDA LEVEL II 数据建模师培训学习笔记(一)软件安装

写在前面:此笔记是PPV课学员张梦根据李玉玺老师在CDA LEVEL II 数据建模师培训的上课内容整理而成的。 —————————作者说明————————— ...

3484
来自专栏AI科技评论

学界丨如何玩转网络安全下的深度学习?最全的学习资料清单看这里

近日,外媒 KDnuggets 刊登了一篇机器学习与网络安全相关的资料大汇总,文中列出了相关数据源的获取途径,优秀的论文和书籍,以及丰富的教程。大部分都是作者在...

34710
来自专栏Vamei实验室

绘图: Python matplotlib简介

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! matplotlib是基于numpy的一套...

1895
来自专栏机器人网

购买视觉系统:您必须询问的10个问题

在世界各地无数生产和制造环境中,机器视觉系统始终确保数百万计的产品符合严格的质量和安全要求。一个有效的视觉系统可以消除缺陷、验证装配以及跟踪和采集生产流程每个阶...

2719
来自专栏镁客网

微软推出VR系统“FlashBack”,号称能提高移动VR用户体验

912
来自专栏CSDN技术头条

Sparker的福音:Spark奠基者的博士论文(中文PDF下载)

该论文是Spark主要开发者Matei Zaharia的博士论文,全文共6章,超过4万字,是一部Spark方面的基本文献。从10月底开始,通过 社区招募,先后有...

18110
来自专栏编程

Python数据分析系列(2)——美国纽约皇后区空气质量分析

作者:王大伟 Python爱好者社区唯一小编 博客:https://ask.hellobi.com/blog/wangdawei 关注Python爱好者社区回复...

2075

扫描关注云+社区