经典的开源编码器X264/X265是否真的无法超越
由莫斯科国立大学组织连续举行13年的视频编码器大赛成绩公布,引发网络对H.264/H.265标准技术、以及曾经在该项大赛封王的开源软件X264/X265性能的热议。笔者特意整理相关资料,与大家分享讨论——被奉为经典的开源编码器X264/X265是否真的无法超越?
X264何以一战成名?
什么是H.264?H.264是ITU(International Telecommunication Union,国际通信联盟)和MPEG(Motion Picture Experts Group,运动图像专家组)联合制定的视频编码标准。而X264是一个开源的H.264视频编码函数库,是最好的有损视频编码器。其最大的优势是具有很高的数据压缩比率,在同等图像质量的条件下,H.264的压缩比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。
X264开发者团队也颇为神秘,自2003年开始,初创十几位成员中,仅有ChenMin一位华人,Dark Shikari加入开发后,X264逐渐成为了最好的视频编码器。
X264打响知名度是在2005年第2届视频编码器大赛上。该比赛在视频编码行业具有极高影响力,X264在众多编码软件中脱颖而出,获得第二名。凭借这届比赛,X264在业内已小有名气。而在2010年第6届视频编码器大赛中,不断完善的X264在三个档次均获得第一名,并大幅领先其他参赛者,从而一战成名。
X264的压缩效率成为H.264的巨大优势,对比其他编码软件,如业内某知名云公司使用的openh264是WebEx的开源项目,仅能做到与X264的superfast档次上速度相当,但压缩效率落后超过20%。而当今的手机编码芯片的压缩效率落后X264高达20%以上。
X264的开源和完备功能,使得H.264得以大规模商用。迄今,无论是在直播、点播、还是在视频社区(如字幕组)中,都可以找到X264的身影。可以说,X264使互联网视频全面迎来H.264的时代,X264也成为移动直播、视频压制等领域的必备之选。
虽然X264被奉为行业经典的编码技术,但其制定距今已经过了13年。随着网络技术和终端处理能力的不断提高,高清、3D、移动互联网的需求日益增加,人们对视频编码标准提出了更高的编码效率上的要求。而视频压缩技术经过这么多年的发展,也已经具备推出更新一代视频编码标准的技术基础。
X265能否满足H.265的核心诉求?
生活源于对美好的向往,创造源于对未来的渴望。
H.265正是带着我们对美好生活的向往而来,H.265的核心目标是在H.264的基础上有更高的压缩率,更高的图像质量。H.265标准于2013年正式推出,如图1所示,在同等图像质量下,H.265压缩率提高了50%,即体积减少50%;等价于在同等体积下,拥有更高的图像质量,画质更清晰。H.265技术对于移动互联网应用的首要意义在于,移动直播时码率更低、减少对网络的冲击、大幅度节省带宽费用。
值得注意的是,H.265在压缩效率提高的同时,在参考模型中,其实是在编码端提高了较多的计算复杂度。在标准发布之后,市场上迫切需要一款快速高效的、能够给H.265商用提供支撑的编码软件,于是,X265应运而生。X265在2015年的MSU大赛中获得综合评估结果第一的成绩,意味着H.265商用开始破冰。然而,如表1所示,目前开源H.265编码器X265相比于X264仍有如下问题:
比较X265 ultrafast vs X264 veryfastX265 placebo vs X264 placebo
视频分类相同质量下的码率编码速度相同质量下的
码率编码速度
(1)在视频直播应用(X265 ultrafast vs X264 veryfast速度级别)上,X265仅有12%的码率节省。由于视频直播格式的升级会带来一连串的从播放端到CDN到服务端的连锁反应,不足以诱惑直播APP升级编码格式为H.265。
(2)无论是视频直播还是离线转码(X265 placebo vs X264 placebo),X265在编码速度上,相比于X264有较大劣势。不仅难以支撑视频3.0时代移动视频直播场景中对编码速度的需求,在离线转码服务上也太过耗时,无法支持大规模、强频率上传至服务器的短视频转码服务。
这无疑给H.265在移动互联网的视频应用泼了冷水。因而,视频3.0时代亟需一款能够全方位支持视频直播和离线转码的高性能高速H.265编码器。
无法超越还是过于“神话”?
混迹于中国的开源社区,在视频压缩类的项目中,很大一部分从业者会认为X264/X265已经臻于完善,想从头搭建一个全新的跨越性的中国自己的编码器是不大可能的。因而,大部分的中国互联网公司都以X265或H.265的参考软件为基础,直接使用或简单优化来完成H.265视频的压制。直播类的X265编码器则有可能以X264为基础来实现X265快速编码。尽管有迭代升级,但仍存在技术门槛无法突破,压缩速度上仍严重影响视频的体验度。
令人惊喜的是,近日公布结果的2016年视频编码器大赛中出现了一匹黑马。据大赛官方数据显示结果,金山云完全自主研发的KSC265编码器跑赢X264/X265夺得编码软件冠军。
首先,上图速度/效率综合曲线中(横轴为编码速度,纵轴为编码效率,以X264为基准,注意箭头better的方向),KSC265在编码速度、编码效率两方面,相比于X265/X264,均有明显的优势。跟INTEL GPU硬件编码器相差无几,且更具速度优势。基于INTEL GPU编码器受限于INTEL GPU芯片的使用,一般很难在移动终端(例如ARM手机)中应用,KSC265无疑在商用范围上更广。而这对中国编码界来说无疑是一个巨大的惊喜。
惊喜后回望,这其实是必然结果。为什么这么说呢?
因为中国的视频编码软件是在无数的工程实践中走出来的。纵观中国互联网市场,作为中国的云计算企业,更专注于如何为客户节省带宽成本、提高视频质量,面对激烈的市场竞争,这也是视频编码软件所研究的重点。中国编码软件通过互联网迭代而产生,已经经历了成熟的商用实践过程,实际服务于数百个直播平台和上亿用户,这是任何一个国际上的编码软件都不具备的先天优势。
以当下“带宽大户”直播行业为例,排名前200位的直播APP有一半以上是金山云的合作伙伴。业务基础为其提供了充足的直播流量、峰值带宽,支撑数几千万人并发等宝贵实践机会。
除此之外,金山云H.265编码器表现出以下明显优势:
1) 金山云H.265编码是纯粹的软件编码,在ARM\X86\X64等多个平台均可以编译执行,有利于H.265编码在多种平台下的推广和应用。
2) 金山云H.265编码码率控制能力能够更好地适应带宽受限下的应用需求。
3) 从金山云公开的测试数据看,金山云H.265的编码速度可以接近X264的veryfast档次(同时达到30%以上码率节省),相比于其他H.265编码具有很大的速度优势和效率优势,能够方便H.265在移动直播等环境下的推广,使得H.265的生态环境得到了明显的提升。
在X264/X265过后,金山云KSC265成为再一个视频编码器大赛认定的“最强视频编码软件”,这个消息足以使中国编码界振奋,基于大赛的权威性,可以大胆预测这可能会成为中国编码软件在国际上崭露头角的开端。相信在不久的未来,中国的编码软件将会在国际舞台上发挥更大的作用。