前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于AVS2的图片容器——TPG:现状与改进之路

基于AVS2的图片容器——TPG:现状与改进之路

作者头像
LiveVideoStack
发布2021-09-02 11:47:18
1.3K0
发布2021-09-02 11:47:18
举报
文章被收录于专栏:音视频技术

最近关于codec的新闻有点多,MPEG的HEVC正面临混乱的专利困境。AV1及国产的AVS2开始发力抢占市场。腾讯推出的图片格式TPG就是基于AVS2内核的图片容器,这是AVS2在互联网上最新,也可能是最广泛的应用。据腾讯音视频实验室(http://medialab.qq.com/)TPG开发负责人丁飘介绍,TPG已在手Q、QQ空间、QQ浏览器、腾讯新闻等产品使用。LiveVideoStack对丁飘及腾讯音视频实验室进行了访谈,解读了TPG的特点、短板以及未来改进方向。点击『阅读原文』访问发布在《电信科学》“TPG图像压缩技术”,该文对TPG技术做了详细介绍。

策划 / LiveVideoStack

LiveVideoStack:首先能简单介绍一下TPG吗?

腾讯音视频实验室:TPG的全称是Tiny Portable Graphics,它是腾讯音视频实验室基于AVS2视频压缩标准推出的一种新的图片压缩格式。相比传统图片压缩格式,TPG在压缩效率方面具有明显优势,在相同质量下,TPG压缩效率比JPG高45%以上,比WebP高20%以上。

LiveVideoStack:目前大家用的主流图片格式还是JPG,腾讯为什么要推出一个新的图片格式TPG?

腾讯音视频实验室:这个问题很多人比较关注。去年,我们正式对外公布了自研的图片格式TPG,当时很多人就有此疑问。其实,我们决定做TPG是经过了充分评估和全面考量的,TPG的推出也是业务需求推动研发的一个经典案例。

随着移动互联网的发展,终端设备的下载流量大幅增长,这其中图片流量占比很大。对于腾讯公司来说,图片流量更是惊人。公司内各类应用比如QQ空间相册、腾讯新闻图片等,图片流量成本压力非常大。除了流量成本,存储成本的压力也是巨大的。以QQ空间相册为例,用户每天上传的图片以亿计,这些图片都是需要永久保存的,压力之大可想而知。

由于图片流量及存储成本的巨大压力,业务部门向我们提出了图片优化的需求,我们也在2014年下半年启动了图片优化的工作。最初我们评估了WebP方案,WebP是Google在2010年发布的图片压缩格式,它的压缩效率比JPEG高20%左右。我们知道,WebP是基于VP8的视频内核,VP8和H.264属于同一代标准,它的压缩效率是要低于最新一代标准H.265和AVS2的,那如果采用H.265或者AVS2来进行图片压缩,是不是效率更高?对此,我们进行了一轮全面测试,测试结果表明,H.265及AVS2的I帧压缩效率确实相对WebP具有明显优势,压缩率至少高20%以上。基于以上测试结论,我们推出了全新的图片格式TPG。

LiveVideoStack:目前大家比较关注的新兴的图片格式,包括WebP,HEIF以及TPG。相对于传统的JPG格式,新兴这些图片格式有什么创新?

腾讯音视频实验室:WebP、HEIF以及TPG都是基于视频压缩编码标准衍生出来的图片压缩格式。其中,WebP是基于VP8,HEIF基于H.265,而TPG是基于国内视频压缩编码标准AVS2。由于这些图片压缩格式采用了帧内预测等多个JPG没有的压缩工具集,所以新兴图片格式的压缩效率更高。另外,新兴图片格式在功能方面也更加全面。JPG只支持静态图片,而WebP、HEIF、TPG除了静态图片,还支持动态图片格式。还有新兴图片格式支持的透明渐变效果,都是JPG不具备的。

LiveVideoStack:能介绍下目前TPG开发的进展吗?

腾讯音视频实验室:目前我们已经完成了TPG整套SDK的开发,包括云转码平台和各平台客户端解码SDK,正在对外推广中。

LiveVideoStack:TPG和其他的图片格式相比有什么优势呢?

腾讯音视频实验室:我觉得TPG的优势主要体现在以下几个方面:

首先是压缩效率高。前面我们简单介绍过,TPG在同等质量下压缩效率比JPG高45%左右,比WebP也要高20%以上。在主观质量几乎无差别的情况下,TPG可以将PNG文件大小减少60%以上,将GIF文件大小减少85%以上。

其次就是性能好。目前我们已经完成了一期TPG编解码器的开发。其编解码性能在业界属于领先。TPG编码器在压缩效率比WebP高近20%的同时,编码速度比WebP(libwebp)还快一些。目前解码速度比WebP稍慢一点,优化之后,解码速度也会对齐WebP。

第三,拥有完整的解决方案。我们对外公布TPG图片格式的时候,也完成了整套TPG图片转码系统的开发。我们的转码系统支持JPG、PNG、GIF、APNG、BMP等图片格式与TPG互转,支持Linux、Windows、IOS、Android等平台。

第四,易用性好,接入简单。我们提供了各平台的SDK,接口设计非常简单,业务接入非常方便。在公司内部业务接入的过程中,我们的接口根据业务需求不断迭代优化,优化后的接口设计更趋合理。以GIF为例,传统的GIF文件,需要等整个文件下载完后才能播放,而GIF文件通常比较大,所以用户观看一个GIF动画的等待时间会比较长。TPG通过优化设计,能够提前获取GIF文件总帧数并支持边解边播,用户观看动画的等待时间大大减少,体验明显提升。

最后,很重要的一点就是安全性高。一种新的图片格式,安全性可靠性是非常关键的。TPG SDK在发布前,公司内部多个安全部门对TPG进行了全面的安全扫描,修复了一系列的安全漏洞。经过安全扫描后,TPG的防攻击能力大大增强。

LiveVideoStack:如何评定一种图片格式(或图片压缩引擎)的优劣,其关键指标包括哪些?

腾讯音视频实验室:评价一种图片格式的优劣,主要从两个方面考虑:一个是压缩率,另外一个就是编解码性能。压缩率对比的话,通常以PSNR或者SSIM作为质量评价指标,在质量对齐的前提下,对比图片大小。性能方面的话,主要是看编解码一幅图片的耗时以及内存占用。

LiveVideoStack:为什么WebP,HEIF以及TPG都不约而同的采用codec作为压缩引擎呢?视频编码和图片编码有哪些相关性?

腾讯音视频实验室:前面我们介绍过,WebP、HEIF和TPG分别采用了VP8、H.265以及AVS2编解码器作为自己的压缩内核,主要还是因为视频编码的高压缩效率。视频编码与图片编码的压缩原理是相似的,我们以JPG图片格式为例,JPG编码也是基于分块结构的压缩,也采用的变换量化编码的编码模式,这些和视频编码基本一致。我们可以将图片编码视为视频编码的一个子集,图片编码相当于视频编码里面的I帧编码。

LiveVideoStack:新兴的图片格式除了带来更高的压缩比以外,还存在哪些不足?比如专利风险。

腾讯音视频实验室:新兴图片格式相对传统图片格式有压缩效率方面的优势,但是也有一些不足。

首先,在压缩效率这块,虽然对于大部分图片新格式的压缩效率优势比较明显,但是对于部分图片,尤其是png8格式的图片,其压缩效率优势很小,甚至压缩效率还不如png8。这其中原因是因为采用I帧压缩编码方式不适合对256色的图片进行压缩,怎么提高256色位图的压缩效率是新兴的图片格式后续需要优化的。

其次,新兴图片格式在高压缩率的同时,也带来了编解码复杂度的成倍增长。新兴图片格式的编解码性能和JPG等传统格式相比,还是有较大的差距的,另外,由于硬件加速对新兴图片格式的支持度普遍较弱,使得性能问题更加突出。不过,近年来随着CPU性能的不断提高,以及新兴格式由于压缩率高而节省了大量下载时间,单帧解码时长稍高也是可以接受的。

另外一个就是新兴图片格式的兼容性问题也比较突出,由于第三方浏览器无法全部支持这些新兴图片格式,导致其推广应用受到很大限制。

当然你刚才提到的专利风险,也是不可忽视的。比如,HEIF基于H.265编码标准,而H.265的专利费用是非常高昂而复杂的,这个不利于HEIF的推广。

LiveVideoStack:设备上支持一种图片格式需要哪些必要条件?仅仅从技术可支持的角度看,除了相应的codec支持以外,还需要哪些软件或硬件环境支持?

腾讯音视频实验室:终端上的应用可分为Native和Web两大类。

对于Native APP,只需要其集成新图片格式的解码器即可。目前TPG Android端SDK大小不到700K。

而对于Web APP,可以有2种方式。首先,如果浏览器能够集成新图片格式解码,那么将给新图片格式的推广带来极大的便利,但是,客户端使用的浏览器是多种多样的,很难保证所有的浏览器都会主动支持新格式。其次,如果浏览器端不支持新图片格式的解码,目前也还有一些其他的方式,比如提供WebAssembly版本的解码器,这样能让所有支持WebAssembly的浏览器支持。

LiveVideoStack:WebP在2010年推出以来,依然还有很多平台不支持(https://caniuse.com/#search=webp)。TPG正在做怎样的推广计划?目前,在腾讯内部和外部,已经有哪些平台支持(或计划支持)TPG?

腾讯音视频实验室:TPG图片格式推出之后,在公司内得到了各大业务的大力支持。目前在公司内部已经得到了广泛应用。公司内的很多产品诸如手Q、空间、QQ浏览器、腾讯新闻等都已经完成了TPG的接入。

接下来,我们也会对公司外开放我们的TPG。目前,腾讯云已经完成了TPG后台转码系统的搭建,腾讯云CDN也已经完成了TPG的部署。同时,我们也对外开放了各平台的TPG解码器,第三方App应用可以免费集成我们的TPG解码器,通过腾讯云接入TPG。另外,腾讯浏览器X5内核也完成了TPG的支持,只要是使用X5内核的第三方应用,客户端无需任何开发就可以原生支持TPG格式。

在加快TPG业务落地的同时,我们也在同步推进TPG的标准化工作。TPG在腾讯内部获得了较好的推广应用,但是要在全行业获得大规模应用,还需要很多工作要做。其中,很重要的一点就是将TPG标准化,只有TPG成为一种标准格式,第三方应用,比如各类浏览器才更有意愿支持TPG。基于此,我们在去年启动了TPG的标准化工作。我们向AVS组织提出了制定互联网图像标准的提案,并成功将TPG申请成为AVS2的图像标准容器格式。目前,TPG作为信息技术高效音视频编码第7部分(图像容器),已经申报成为国家标准,我们也期待TPG能够早日实现标准化,并最终成为一种主流图片格式。

LiveVideoStack:JPEG格式从诞生至今已有几十年的时间了,虽然有其他一些新的格式的出现,但是JPEG始终还是占绝对主流,你怎么看新兴图片格式未来的发展前景?还有就是图片压缩技术未来的发展方向?

腾讯音视频实验室:JPEG经过了几十年的发展,目前还是占统治地位,这其中最主要原因还是通用性问题。尤其是在PC时代,由于缺乏第三方浏览器的支持,私有格式的应用范围受到了很大限制。但是,在移动互联网时代,大家对浏览器的依赖大大下降,一个移动App只要带有一个解码器就能完成对一种新的图片格式的支持,这给新兴图片格式带来了机会。我们看到现在很多互联网应用中都使用了WebP图片格式,苹果也在iOS11系统中原生支持HEIF格式了。现在移动端应用的流量越来越大,这对新兴图片格式的发展是一个很好的机遇。

几十年来,图片压缩技术一直在不断向前演进,未来,关于图片压缩的研究肯定不会停止。关于未来的发展方向,总结下来有以下几个方面:

首先,采用更高复杂度更高压缩率的标准。比如,未来很有可能出现基于下一代视频编码标准FVC的图片压缩技术。

第二,采用深度学习进行图像压缩。目前已经有很多学校及公司在从事这方面研究,比如Google发布了基于RNN的图像压缩技术RAISR,虽然基于深度学习的图像压缩技术目前还不成熟,但是未来肯定会有长足发展。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 LiveVideoStack 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档