6.2.1 诞生背景:JVT 与混合框架的成熟

从 H.26L 说起

H.264 的故事始于一场 "效率翻倍" 的豪赌。1997 年前后,ITU-T 的 VCEG 启动了一个代号 H.26L(L 取 Long-term,长期目标之意)的研究项目 [5]:不设兼容包袱,目标只有一个——在同等画质下,把码率压到当时规格的一半

这个时间点值得玩味。彼时 H.263 刚刚在低码率战场站稳脚跟,MPEG-4 的对象化愿景还在推进,而互联网视频的需求已经肉眼可见地膨胀。VCEG 的判断是:无论对象化能否成功,混合框架本身的工具精度还远未挖到极限——与其发明新范式,不如把旧范式的每一环都做到当时的极致。

2001 年,MPEG 也向业界发出了新视频编码的征集令(Call for Proposals)。面对同一个目标,两大阵营没有重复造轮子,而是于 2001 年底正式组建 JVT(Joint Video Team,联合视频组),以 H.26L 的设计为蓝本共同打磨。2003 年 3 月,规格正式发布:ITU-T 侧叫 H.264,MPEG 侧叫 MPEG-4 Part 10 / AVC(Advanced Video Coding) [8]

同一时期的外部环境也推了它一把:MPEG-4 Part 2 在 2002 年前后的授权条款引发业界普遍不满,市场迫切需要一份技术过硬、生态更健康的新规格。H.264 恰逢其时。

设计目标:减半码率,拥抱网络

H.264 的设计目标可以概括为两条 [5]

  • 压缩效率翻倍:相比 MPEG-2 与 MPEG-4 ASP,同等画质码率节省约 50%
  • 网络亲和(Network Friendliness):码流要既能进文件、也能进网络包——为此 H.264 把编码层与传输适配层明确分开,设计了 NAL(Network Abstraction Layer,网络抽象层):编码器输出的是一个个 NAL 单元,至于它们被打包进 MP4 文件、TS 流还是 RTP 包,由封装层决定。这份远见让 H.264 后来在流媒体时代畅通无阻(第七章会再次见到 NAL 的身影)

成熟,而非革命

拆开 H.264 的技术清单会发现,它没有发明任何新的框架——混合编码的四环一环不少,重建环路原样保留。它做的事情是把每一环的 自由度 大幅提升:

环节 前代(MPEG-2/H.263) H.264
帧内预测 仅在频域做少量直流/低频预测 4×4 九模式 + 16×16 四模式的空域方向预测(6.2.2)
帧间预测 16×16/8×8 两档分块、单/双参考、半像素 16×16~4×4 树状分块、最多 16 参考帧、1/4 像素(6.2.3)
变换 8×8 浮点 DCT 4×4(High Profile 增 8×8)整数 变换,编解零漂移(6.2.4)
量化 31 级 52 级,步长按对数增长(6.2.4)
熵编码 静态 VLC 表 CAVLC / CABAC,上下文自适应(6.2.4)
环路滤波 H.263 可选 Annex 规范化 去块滤波,写入参考帧(6.2.4)

两个关键词值得提前留意:自适应精确。前代的工具大多是 "一刀切"——固定分块、固定码表;H.264 则让分块形状、参考帧、预测方向、熵编码概率模型全部可以 随内容动态选择,再由率失真优化(RDO)仲裁。自由度换来压缩效率,代价是编码复杂度成倍上升——这也是理解后续所有规格演进的基本公式。

接下来的三节,我们把这张升级清单逐环拆开。先从最直观的一环开始:帧内预测。

Copyright © Since 2021 李述博 (Arikan.Li) , All Rights Reserved all right reserved,powered by GitbookLast Updated: 2026-08-26 08:25:15

results matching ""

    No results matching ""