3、编码效率与码率对比:相同画质下的码率节省、PSNR 与 MOS 评测

这一章,我们来聊聊最实际的问题——H.265 到底能省多少码率?省下来的码率,画质还能看吗?

我在做视频编码选型时,经常被问到:“H.265 是不是真的比 H.264 省一半码率?” 我的回答通常是:“看场景,但大部分情况下,省 30%~50% 是没问题的。” 不过,光说数字不够,咱们得拿出数据来。

3.1 相同画质下的码率节省

先说结论:在同样的主观画质下,H.265 平均能比 H.264 节省 35%~50% 的码率。这个数据不是我瞎编的,是 JCT-VC 在标准化阶段用大量测试序列跑出来的。

为什么会差这么多?说白了,H.265 的编码工具更“聪明”。

  • 更大的块划分:H.264 最大宏块是 16x16,H.265 的 CTU 最大能到 64x64。平坦区域用大块,码率直接砍半。
  • 更准的运动补偿:1/4 像素插值精度更高,运动搜索范围更大,残差更小。
  • 更高效的变换:DST 用于 4x4 帧内块,DCT 用于其他块,能量集中度更高。

我拿一个实际项目的数据给你们看。1080p 视频,目标画质 PSNR ≈ 38dB:

编码器 码率 (kbps) 节省比例 编码时间
H.264 (x264, veryslow) 4500 — 1.0x
H.265 (x265, medium) 2800 37.8% 3.2x
H.265 (x265, slow) 2400 46.7% 5.8x

关键点:码率节省不是免费的。H.265 编码复杂度是 H.264 的 3~6 倍。如果你在实时编码场景(比如直播),得掂量一下服务器能不能扛得住。

3.2 峰值信噪比 (PSNR) 对比

PSNR 是个客观指标,虽然它不完全等于人眼感受,但作为基准对比还是很有用的。我习惯用 BD-Rate 和 BD-PSNR 来评估两个编码器的差距。

BD-Rate 的意思是:在相同 PSNR 下,码率差了多少。负值表示节省。

下面这张表是我用标准测试序列跑出来的典型数据:

测试序列 分辨率 BD-Rate (H.265 vs H.264) BD-PSNR (dB)
BasketballDrive 1920x1080 -42.3% +1.12
BQTerrace 1920x1080 -38.7% +0.95
Kimono 1920x1080 -45.1% +1.31
ParkScene 1920x1080 -40.5% +1.05

你看,BD-PSNR 提升基本在 1dB 左右。别小看这 1dB,在视频编码里,0.5dB 的差距人眼就能感知到。

我的经验:跑 PSNR 对比时,一定要用多组 QP 值(比如 22, 27, 32, 37)去测,然后画 RD 曲线。单点对比容易误导人。我曾经见过有人只比一个码率点,结果 H.265 反而比 H.264 差——那是因为 QP 没对齐。

3.3 主观质量评测 (MOS)

PSNR 再高,也不如人眼说了算。主观质量评测(MOS, Mean Opinion Score)才是最终裁判。

MOS 评测通常分两种:

  • 绝对评分 (ACR):观众直接给视频打分,1~5 分,5 分最好。
  • 对比评分 (DCR):同时展示两个视频,让观众选哪个更好。

我在做直播平台编码器选型时,就组织过一次 MOS 评测。当时对比了 H.264 4Mbps 和 H.265 2.5Mbps,结果很有意思:

内容类型 H.264 @ 4Mbps (MOS) H.265 @ 2.5Mbps (MOS) 结论
体育(足球) 4.2 4.1 几乎无差异
电影(暗场景) 3.8 4.0 H.265 略优
动画(高细节) 4.5 4.3 H.264 略优

注意:动画场景下 H.265 反而略低,这是因为 H.265 的 SAO 滤波器有时会过度平滑,导致线条边缘变糊。如果你做动漫编码,记得调低 sao 强度。

为什么会这样?我分析了一下:

  • 体育场景运动剧烈,H.265 的运动补偿优势明显,低码率下也能保持清晰。
  • 暗场景里,H.265 的块效应更少,人眼对暗部噪声更敏感。
  • 动画场景边缘锐利,H.265 的 SAO 反而成了累赘。

所以,别迷信单一指标。PSNR 高不一定 MOS 高,MOS 高也不一定 PSNR 高。我建议你们做选型时,至少跑三组对比:客观 PSNR、主观 MOS、还有编码耗时。

3.4 核心逻辑:编码效率对比框架

下面这张图,是我自己总结的编码效率对比框架。每次做选型,我都会按这个流程走一遍:

编码效率对比框架图 编码效率对比框架 原始视频序列 编码器 A (H.264) 编码器 B (H.265) H.264 码流 H.265 码流 PSNR / BD-Rate MOS 主观评测 综合对比结论 码率节省 + 画质损失 + 编码耗时 建议:多 QP 点 + 多序列测试 避免单点对比误导

这个框架的核心思路是:先统一原始输入,再分别编码,最后从客观和主观两个维度做对比。缺了任何一环,结论都可能偏颇。

3.5 避坑指南

最后,分享几个我踩过的坑:

  • 别用默认参数直接比:H.264 和 H.265 的默认参数差异很大。我建议先调成“相近的编码档次”,比如 H.264 High Profile 对 H.265 Main Profile。
  • 注意码率控制方式:用 CRF 比用 CBR 更公平。CBR 下 H.265 的优势会被带宽限制掩盖。
  • 别忘了解码复杂度:H.265 解码也比 H.264 重。如果你做客户端播放器,低端设备可能跑不动 4K H.265。

一句话总结:H.265 在相同画质下能省 35%~50% 码率,PSNR 提升约 1dB,MOS 评分在大部分场景下持平或略优。但编码耗时翻倍,动画场景需调参。选型时,别只看一个指标。