Netflix将VP9应用于移动视频流编码

A.采用的两种编码标准:

1. VP9:

VP9是一款由Google开发的免费开源的视频编解码器,与最优的H.264编码器相比具有将近50%的性能增益。VP9在Web浏览器和移动设备具有广泛的支持(支持Android设备,大多数浏览器以及越来越多的消费类电子设备)。VP9编解码器早已用于YouTube,而且最近被Netflix用于编码低比特率的移动视频流。近期,Ittiam与Google,Netflix合作解决vp9开源实现libvpx的一些关键问题。这些改进将为更大的视频流社区带来显著的改善。与广泛使用的H.264相比,先期的改进使得在最高质量设置下对视频文件进行编码的turnaround时间大幅减少。改进后的编码器在16核机器上编码1080p视频时可以减少50-70%的编码时间。

相比于H.264/AVC,VP9具有许多提高压缩性能的工具,包括:

1. 运动预测块的尺寸最大为64x64

2. 八分之一像素精度运动矢量

3. 三个可切换的8抽头亚像素插值滤波器

4. 更优的运动矢量编码

5. 更大块的DCT变换(16x16, 32x32)

6. 非对称DST变换(ADST)

7. 适应新的块大小的环路滤波

8. 分割图

2. H.264/AVC High Profile:

许多Netflix-ready设备接收的视频流依然使用H.264/AVC Main profile(AVCMain)编码,H.264/AVC解码器在Web浏览器、电视、移动设备和其他电子设备上具有广泛支持。Netflix为移动视频流采用了两种压缩格式:H.264/AVC High Profile和VP9(profile 0)。与Main profile类似,H.264/AVC的High Profile同样具有广泛的解码支持。H.264/AVC High Profile的总体结构与Main profile一致,并加入了其他一些提高压缩效率的特性和工具:

1. 8x8变换和8x8帧内预测

2. 量化缩放矩阵

3. Cb和Cr分开控制

B. 更优的编码器配置:

除了上述两种编码标准外,Netflix为移动视频流编码提供了优化的编码器配置:

1. 增加了Random Access图像周期:平衡了编码效率和随机接入点粒度大小

2. 更多连续的B帧或更长的Alt-ref距离:允许编码器灵活选择更多的B帧(H.264/AVC)或更长的Alt-ref距离(VP9),对缓慢的场景变换更为有效

3. 更大的运动搜索范围:带来更好的运动估计以及更少的帧内编码块

4. 更多的模式选择:允许编码器评估更多的编码选项

C. Per-chunk编码优化:

在并行编码流水线中,视频源被分割成若干chunk,每个块被单独处理和编码,并为每个单独的chunk基于其复杂性(运动,细节,质地等)优化了比特率分配。这样做减少了不同chunk之间的质量波动,避免了将太多比特分配给复杂度较低的块。

D. 编码结果比较:

三种编码方式:

  1. AVCMain:H.264/AVC Main profile,使用per-title优化,作为anchor
  2. AVCHi-Mobile:H.264/AVC High Profile,使用更优的编码器配置和per-chunk编码优化
  3. VP9-Mobile:VP9,使用更优的编码器配置和per-chunk编码优化

图1给出了基于PSNR和VMAF的BD-rate结果,AVCHi-Mobile相比AVCMain能达到15%的PSNR增益和19%的VMAF增益,而VP9-Mobile的增益更是高达36%。Netflix新的两种移动视频流编码方案在相同视频质量的情况下能够节省更多的比特率,为带宽较低以及网络费用昂贵的用户带来福音。

图1 AVCHi-Mobile和VP9-Mobile相对AVCMain的BD-rate增益

此外,图2给出了不同码率点处的平均VMAF值,增益也比较明显。例如,在1Mbps下,AVCHi-Mobile和VP9-Mobile的平均VMAF值分别增加了7和10,对于移动用户而言在有限的带宽下可以体验到更高的视觉质量效果。

图2 AVCHi-Mobile和VP9-Mobile相对AVCMain的VMAF提升

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

原文发表时间:2017-08-12

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯技术工程官方号的专栏

FPGA异构计算在图片处理上的应用以及HEVC算法原理介绍

作者介绍:chaningwang,2008年毕业于中国科学院研究生院,主攻FPGA高性能计算、FPGA图像处理等方向。 先后在华为、怡化公司从事FPGA开发...

3526
来自专栏机器学习之旅

yoho注册概率预估前言注册概率预估定义算法设计可优化方向总结

本文主要介绍Yoho大数据团队在深度学习传统应用方向上的一些实践和思考。传统用户行为预估方向上,如何根据用户的行为数据,对用户行为建模,进而预测用户的购买行为,...

672
来自专栏新智元

谷歌最强NLP模型BERT官方中文版来了!多语言模型支持100种语言

上周,谷歌AI团队开源了备受关注的“最强NLP模型”BERT的TensorFlow代码和预训练模型,不到一天时间,收获3000多星!

3464
来自专栏CreateAMind

寒武纪神经网络处理器效能如何 ?

中国科学院计算技术研究所陈云霁、陈天石课题组提出的深度学习处理器指令集DianNaoYu被计算机体系结构领域顶级国际会议ISCA2016(Internation...

1163
来自专栏人工智能头条

用文本分类模型轻松搞定复杂语义分析;NLP管道模型可以退下了

本文是《NLP 可以很好玩》系列教程的第二篇,由作者 Adam Geitgey 授权在人工智能头条翻译发表。

1403
来自专栏追不上乌龟的兔子

Neo4j中的图形算法:15种不同的图形算法及其功能

只有你拥有使用图形分析的技巧,并且图形分析能快速提供你需要的见解时,它才具有价值。因而最好的图形算法易于使用,快速执行,并且产生有权威的结果。

2.2K3
来自专栏racaljk

人工智能各种技术与算法

>搜索策略(Search Strategies)//详细请参见http://blog.csdn.net/racaljk/article/details/1888...

2323
来自专栏LET

精度,Precision

2187
来自专栏数据派THU

带你用4行代码训练RNN生成文本(附资源)

本文共1400字,建议阅读6分钟。 本文介绍仅需几行代码就能训练出任意大小和复杂度的文本的神经网络文本发生器。

1072
来自专栏DHUtoBUAA

基于蚁群算法的机械臂打孔路径规划

  该问题来源于参加某知名外企的校招面试。根据面试官描述,一块木板有数百个小孔(坐标已知),现在需要通过机械臂在木板上钻孔,要求对打孔路径进行规划,力求使打孔总...

6356

扫码关注云+社区