过去几年,又拍云一直在点播、直播等视频应用方面潜心钻研,取得了不俗的成果。我们结合点播、直播、短视频等业务中的用户场景,推出了“省带宽、压成本”系列文章,从编码技术、网络架构等角度出发,结合又拍云的产品成果,向大家介绍节省流量,降低带宽成本的妙招。

本文《深入解析 H.265 编码模式,带你了解 Apple 全面推进 H.265 的原因》,是“省带宽、压成本”系列文章的第2篇。从视频网站所遇到的问题出发,深入解析 H.265 视频编码。

往期回顾:

第一篇:《节省50%以上的流量成本,从产品架构看PCDN的节流能力》

第二篇:《深入解析 H.265 编码模式,带你了解 Apple 全面推进 H.265 的原因》


今天我们聊聊视频编码。视频文件亘古以来存在一个矛盾:高清画质和视频体积的冲突,相同编码标准下,视频更高清,视频体积更大。因此,应用更先进的视频编码标准,降低视频体积,可以大幅降低网站的流量消耗。

目前应用最广泛的视频编码标准是 H.264。H.264 在低码率下的视频画质十分模糊;同时 H.264 对 2K、4K 视频的支持较差:以 H.264 的压缩率,一部4K电影的体积会超过 100G,甚至可以达到 150G、200G,这对想要抢占高清片源的视频平台来说几乎是致命的打击。

既要高清,又要视频体积小——这靠 H.264 明显是不可能了,而新的编码格式 H.265 就能满足这个要求。同样是 110 分钟的 4K 视频,用 H.265 编码进行压缩,体积可以降低 50%,相较于 H.264 的 100G - 200G 而言,每一部 4K 视频都能节约大量的流量带宽成本。

H.265 是国际上公认的下一代视频编码标准则,国内外对 H.265 的支持越来越多,国内不仅有爱奇艺、搜狐、腾讯等头部视频网站开始支持 H.265 视频点播,各大字幕组也开始尝试使用 H.265 标准压制视频。

H.265:新一代视频编码技术

H.265 视频编码技术是于 2013 年定稿发布了下一代视频压缩标准,命名为 HEVC(High  Efficiency Video Coding),分别被 ITU-T 和 ISO/IEC 采纳成为国际标准,即 H.265 视频压缩标准。H.265 在现有的视频编码标准 H.264 基础上,进一步提高压缩效率、提高鲁棒性(Robustness 抗变换性)和错误恢复能力、减少实时的时延、减少信道获取时间和随机接入时延、降低复杂度,以达到最优化设置。

H.265 能在有限带宽下传输更高质量的网络视频,只需 H.264 编码的一半带宽即可传输相同质量的视频。

1. 视频压缩率更出众,与 H.264 相比压缩效率提升 1 倍

H.265 全新的编码方式有效提升了视频压缩率,仅需原先的一半带宽即可播放相同质量的视频。众所周知,视频编码的码率是可以灵活控制的,以相同的视频质量为基准,H.265 编码技术相比 H.264 编码技术能够在视频容量减少 39% 到 74%,并且还能获得比 H.264 视频更好的信噪比(PSNR)效果。——拿“体积比你小,质量比你好”来形容 H.265 相比 H.264 的巨大优势,并没有显得过分。

  

△ H.264、H.265 压缩率对比       

2. 视频传输流量省 50%

IEEE 出版的 Circuits and Systems for Video Technology,其中有 Comparison of the Coding Efficiency of Video Coding Standards—Including High Efficiency Video Coding 一文,以 9 段影片进行测试 H.265 的编码表现,所得到的结果相当另人满意,即便在表现最差的样本中,节省的流量接近 30%,平均起来也达到 49.3% 的佳绩。

△ H.265 与 H.264 流量比较(资料来源:IEEE)

3. 支持蓝光 4K

H.265 编码技术有着惊人的压缩率,加上灵活的宏块像素技术,这对于 Ultra HD 4K/8K 超高清分辨率极为重要,2015 年春季正式出台的蓝光 4K(3840×2160)标准采用了 H.265/HEVC 编码标准,H.265 编码技术能够大幅降低蓝光 4K 光盘的容量需求。

H.265 压缩原理

更大的宏块和变换块相对于 H.264 的 4×4、8×8、16×16 宏块类型,H.265 引入了 32×32、64×64 甚至 128×128 的宏块,目的在于减少高清数字视频的宏块个数,减少用于描述宏块内容的参数信息,同时整形变换块大小也相应扩大,用于减少 H.264 中变换相邻块问的相似系数。

△ H.264 与 H.265 对比图

新的 MV(运动矢量)预测方式区别于 H.264 基于空间域的运动矢量预测方式,H.265 扩充更加多的方向进行帧内预测,同时将预测块的集合由原来的空间域扩展到时间域及空时混合域,通过率失真准则计算后选择最佳的预测块。使用该方法,在基本模式下测试,在与H.264 相同质量的情况下,得到平均为 6.1% 的压缩增益,复杂图像的压缩增益甚至能提高到 20%。

并行化设计当前芯片架构已经从单核性能逐渐往多核并行方向发展,H.265 引入了 Entropyslice、WPP 等并行运算思路,使用并行度更高的编码算法,更有利于 H.265 在 GPU/DSP/FPGA/ASIC 等并行化程度非常高的 CPU 中快速高效的实现产业化。

Tile 划分机制它使得以往的 slice、帧或 GOP 为单位的粗粒度数据并行机制更加适合于同构多核处理器上的并行实现。Dependentslice 和 WPP 机制解决了以往 H.264 等编码技术中熵编码环节无法并行实现的问题,使得整个编解码过程中 DCT、运动估计、运动补偿、熵编码等任务模块的划分更加均衡,显著提高并行加速比。

开启 H.265 自适应

与 H.264 相比,H.265 不仅更符合未来高清影片发展的趋势,而且同等画质下可以为带来更高效的视频压缩效率,有效节省流量消耗。

为了让用户使用到更先进的产品,又拍云一直在 H.265 的实用性与便捷性方面钻研,2017 年 5 月便推出了 H.265 视频自适应解决方案。又拍云 H.265 视频自适应方案集成了视频上传、视频存储、视频编码(转码)、视频分发适配、视频解码等功能。

  • 视频上传转码:用户将 H.264 编码视频上传到又拍云的服务器,又拍云将其同步转为 H.265 编码的视频;

  • 视频异步转码:针对已存储在又拍云服务器上的 H.264 编码的视频,通过又拍云异步转码服务,可转为 H.265 视频存储,同时保留 H.264 视频副本;

  • H.265 自适应:又拍云 CDN 网络支持 H.265自适应功能,能够根据客户终端播放器发起的 UA 请求头 ( Accept-Encoding: h265 ),智能识别终端播放器是否支持H.265,并判断当前请求的资源是否存在 H.265 编码的文件。如果播放器支持且拥有 H.265 编码的视频,则返回 H.265 视频,否则返回原始视频,从而实现 CDN 平台的 H.265 智能适配。H.265 自适应支持又拍云存储和又拍云 CDN 两种使用场景