本文是来自Bitmovin’s Tech Talks的演讲,讲者是Bitmovin的编码团队领导Christian Feldmann。主要内容是对比VP9和HEVC这两个编码器。
首先介绍了编码器的发展历史,1996年MPEG2出现,2003年H264/AVC出现,2008年VP8出现,2013年VP9和HEVC出现,2019年AV1出现,2020年VVC出现。
讲者介绍了H264、HEVC和VP9的一些基础信息。H264和HEVC都是ISO设计的,VP9是谷歌设计的。H264支持浏览器最多,同时支持苹果和安卓系统;;VP9支持谷歌和火狐浏览器,只支持安卓系统。HEVC和VP9编码效率差不多,都超过了H264。H264和HEVC都需要专利费用,HEVC更贵。但是VP9是开源免费的。
讲者继续比较了HEVC和VP9的区别。HEVC根据块进行量化,VP9根据帧进行量化。HEVC帧间编码采用33个方向,Planar模式;VP9采用8个方向,TM模式。HEVC环状滤波有SAO算法,VP9没有。HEVC熵编码采用CABAC,VP9采用BAC。VP9有4种划分模式, HEVC有8种划分模式。
此外在具体编解码算法上,两者还有很多不同。比如,HEVC采用B帧预测。编码顺序和播放顺序不一样,先编码前后两帧,再编码中间帧。而VP9编码顺序和播放顺序相同,但是会编码一个超级帧,它可以解码出多个帧。VP9包含参考帧缩放,指的是不同分辨率的图像可以作为参考帧来进行预测编码。HEVC包含并行处理解码,可以同时解码多个不相邻的编码块。
讲者还展示了Bitmovin编码使用的API,非常简洁,支持多种播放器。播放器会根据运行它的设备选择最佳的编码器,带来最大的带宽节省。
讲者查找了许多文献对比VP9和HEVC的性能,但是文献都比较过时,有些文献说VP9性能和AVC类似,有些说VP9和HEVC性能差不多。讲者自己进行了实验对比,使用JVET测试集。结果显示,编码效率从高到低为:VP9>HEVC>AVC。
最后是QA环节。
附上演讲视频: