Meta重利用渐进式编码结果,大幅降低最小功能编码视频转码成本

Meta工程师调整Instagram视频的编码流程,大幅节省低压缩率视频编码所需要的资源,释放的资源则可用于提供更多用户高分辨率视频。Meta针对不同用户设备,需要创建多种Instagram视频编码版本,而视频庞大的转码计算资源需求,让Meta在2021年初评估时,认为在12个月内,他们将没有足够的容量替所有用户提供视频上传功能。

而Meta通过重新利用其中一种编码版本生成另一个版本,由于不需要重新完整计算两份类似的编码视频,可以大幅减少资源需求,这些省下来的资源,让Instagram得以向更多用户提供使用高端编码,清晰且流畅的视频,也使得网际网络速度较慢地区的用户受益。

过去Meta应对不同用户的需求,对Instagram视频进行不同类型的编码,由于要与所有Instagram客户端兼容,Meta会使用最小功能编码,将视频以低效率压缩成所有旧设备,都能解码并播放的视频版本,另外,也会以更新压缩技术的高端编码,支持较新设备的视频播放。

Meta花费80%以上的编码计算资源在最小功能编码上,高端编码仅占总观看时间的15%,如果依照这样的趋势继续发展,几乎所有计算资源都将花费在最低功能版本上,使得视频需要更长的时间才能发布,甚至是完全无法发布,很快地Instagram就无法提供高端编码视频。

最小功能编码又分为两类,每一个视频都会生成ABR编码版本和渐进式编码。ABR版本能够支持稳定播放,客户端可以选择最适合连接速度的版本,避免带宽变化导致视频播放停顿,另一个最小功能编码是渐进式编码,官方之所以继续生成该编码,是为了让不支持ABR编码的旧版Instagram应用程序,也能够继续播放视频。

当客户端将视频源文件案上传至服务器后,Instagram会替视频创建ABR和渐进式两种最低功能编码版本的视频,以23秒的视频转码为720p视频为例,总共需要86.17秒的CPU时间。但因为Meta发现,这两类最低功能编码配置相似,仅有编码配置文件和默认值上的差异,因此工程师通过将渐进式编码视频影格,重新打包成ABR兼容的版本,而这便能够消除生成ABR编码视频的成本,从渐进式编码打包成ABR编码文件仅需要0.36秒。

官方提到,这个方法释放了大量的运算能力,尽管利用打包方式生成的ABR编码版本,较直接转码生成的ABR编码版本压缩率更差,但是有多的计算资源生成高端编码视频,将让更多人看到更清晰的视频。经过Meta的测试,以降低ABR编码的压缩效率为代价,的确获得更高的高端编码视频观看时间。

新方法使生成ABR编码视频的成本下降94%,高端编码的整体观看时间覆盖率提高到了33%,Meta表示,这个人信息料代表更多Instagram用户,能够看到更清晰的视频。