一、视频编码的演进历程
视频编码技术的发展可以追溯到上世纪八十年代末。从最初为视频会议设计的 H.261,到如今面向超高清流媒体的 AV1,编码标准经历了近三十年的迭代。每一次升级都围绕同一个核心目标展开:在保证画质的前提下,用更少的比特数还原画面。
视频之所以需要压缩,是因为未经处理的原始视频数据量极其庞大。一段 10 秒钟的 1080p 未压缩视频,数据量可达数 GB,无论存储还是传输都难以承受。编码器的作用就是利用画面在空间和时间上的冗余信息,将这些数据压缩到可管理的体积。空间冗余指同一帧图像内相邻像素的相关性,时间冗余指相邻帧之间的相似性。几乎所有现代编码标准都围绕这两类冗余展开。
具体而言,编码器将画面分为三种帧类型:I 帧(帧内编码帧)完整记录一帧画面,压缩率最低但可独立解码;P 帧(前向预测帧)只记录与前一帧的差异;B 帧(双向预测帧)同时参考前后帧,压缩率最高。I 帧之间的一组帧构成一个 GOP(图像组),GOP 越长压缩率越高,但随机定位和容错能力越弱。这套帧间预测框架从 H.261 起沿用至今,各代标准主要在块划分、预测精度和熵编码上做文章。
H.261 奠定了块状编码的基础框架;MPEG-1 将其扩展到光盘存储,码率约 1.5 Mbps,足以支撑 VCD 画质;H.263 针对低码率通信进行优化,在 64 kbps 以下仍能保持可辨识画面;H.264 开启了高清流媒体时代;H.265 面向 4K 超高清;AV1 则代表了开源免授权的下一代方向。每一代标准都试图在前一代的基础上提升压缩效率,同时控制编码复杂度,使其能在真实硬件上运行。
二、主流编码格式技术解析
H.264(AVC)
H.264 于 2003 年正式发布,全称 Advanced Video Coding。它采用宏块(Macroblock)分割机制,以 16×16 的块为基本编码单元,支持 4×4 到 16×16 的子块划分。运动估计精度达到 1/4 像素,引入了多参考帧、环路滤波、上下文自适应变长编码(CAVLC)和上下文自适应二进制算术编码(CABAC)等技术。
相比前代 H.263,H.264 的压缩效率提升了约一倍,这意味着同等画质下码率减半。CABAC 比 CAVLC 节省 5% 至 15% 的码率,但计算量更大,因此低端设备常选用 CAVLC。H.264 还支持多_slice 和灵活宏块排序(FMO),便于并行处理和容错。
H.264 的优势在于生态成熟:几乎所有现代设备、浏览器、播放器均原生支持。它的缺点是在面对 4K 及以上分辨率时压缩效率不足,码率偏高。由于硬件解码普及,H.264 在移动端功耗控制上也表现优异,是当前兼容性最好的编码格式。
H.265(HEVC)
H.265 于 2013 年发布,全称 High Efficiency Video Coding。相比 H.264,它引入了编码树单元(CTU)的概念,最大支持 64×64 的块,并能根据画面复杂度自适应划分为更小的子块,最小到 8×8。在同等主观画质下,H.265 比 H.264 节省约 40% 至 50% 的带宽。
技术上的改进包括:更大的 CTU 尺寸带来更高的编码效率,尤其对大面积平坦区域效果显著;35 种帧内预测方向(H.264 仅 9 种)使纹理表达更精细;先进的运动矢量合并(Merge)和高级运动矢量预测(AMVP)技术减少了运动信息的编码开销;样点自适应偏移(SAO)在环路滤波后进一步抑制振铃效应;并行处理工具 Tiles 和 WPP 则便于多核并行编码。
这些特性使其非常适合 4K/8K 超高清内容分发,但也带来了更高的计算复杂度——H.265 的编码耗时约为 H.264 的数倍。更大的块尺寸在低分辨率场景下反而可能增加开销,因此 H.265 的优势在高分辨率下才充分体现。
VP9
VP9 由 Google 开发,于 2013 年随 WebM 项目开源。它采用 64×64 的超块(Superblock)分割,支持 32 种帧内预测模式,并引入了先进的帧间预测和自适应量化技术。压缩效率与 H.265 接近,且完全免授权费。
VP9 在设计上参考了 H.265 的思路,但在语法和工具集上做了简化,以降低实现难度。它支持多达 3 个参考帧,并允许混合使用不同分辨率的参考帧以适应可变分辨率场景。VP9 的优势在于开放性:任何厂商都可以自由实现,无需担心专利纠纷。但其硬件解码生态相对有限,主要活跃在 Web 端,尤其是基于 Chromium 内核的浏览器中。VP9 已被主流视频平台广泛采用,作为 H.264 的高效替代方案,在网页视频分发中表现稳定。
AV1
AV1 由开放媒体联盟(AOMedia)于 2018 年发布。它在前代基础上进一步扩展,采用 128×128 的超大编码块,支持更复杂的预测和变换工具,包括帧内块拷贝、仿射运动补偿、调色板模式、1/8 像素运动精度等。相比 H.265,AV1 在同等画质下再节省约 20% 至 30% 的码率,即相对 H.264 可节省约 60%。
AOMedia 由多家厂商联合发起,初衷正是规避 H.265 碎片化的专利授权问题。AV1 在 VP9 的基础上吸收了 H.265 的部分先进工具,并加入了大量实验性技术,编码工具数量远超 H.265。其设计目标是彻底免授权费,已被主流流媒体平台逐步采用。编码复杂度极高,实时编码仍需硬件加速支持。新一代 GPU 和移动芯片已开始集成 AV1 硬件解码,编码端的硬件加速也在逐步推进,预计未来几年将在点播和直播领域全面铺开。
三、专利授权对比
授权问题是视频编码标准推广中的关键因素。下表对比四种主流格式的授权情况:
| 编码格式 | 授权方 | 授权费用 | 复杂度 |
|---|---|---|---|
| H.264 | MPEG-LA 统一专利池 | 分级收费,设有年度上限 | 低 |
| H.265 | 多家专利池并存(MPEG-LA、HEVC Advance 等) | 费用高且无统一上限 | 极高 |
| VP9 | 开源(BSD 许可) | 免费 | 无 |
| AV1 | 开放媒体联盟 | 免费 | 无 |
H.265 的授权问题是其推广受阻的主要原因之一。H.264 由 MPEG-LA 统一管理,费用结构清晰且设有上限,内容方可以放心部署;而 H.265 涉及多家专利池,专利持有人分散在不同机构,费用不确定,且没有统一上限机制。据公开报道,部分内容方因无法预估授权成本而推迟 H.265 部署。这种不确定性直接导致部分浏览器厂商和开源社区转向 VP9 和 AV1,也促成了 AOMedia 的成立,催生了免授权费的开源编码生态。
四、场景化选择建议
不同使用场景对编码格式的需求差异很大。以下是常见场景的推荐:
| 使用场景 | 推荐编码 | 理由 |
|---|---|---|
| 邮件附件 | H.264 | 兼容性最好,附件无需额外解码器 |
| 网页嵌入 | VP9 / H.264 | 浏览器原生支持,VP9 更省流量 |
| 移动端播放 | H.264 / H.265 | 硬件解码普及,电量友好 |
| 流媒体分发 | AV1 / H.265 | 高压缩比降低带宽成本 |
| 长期归档 | H.265 / AV1 | 节省存储空间,画质保持良好 |
| 实时直播 | H.264 | 编码速度最快,延迟可控 |
选择时应优先确认目标播放环境的解码能力,再权衡压缩效率与编码成本。对于需要覆盖最广受众的内容,H.264 仍是兜底方案;对带宽成本敏感的分发场景,则应优先考虑新一代编码。实际部署中,不少平台采用多码率多编码的策略:以 H.264 覆盖全部终端,同时为支持新一代编码的客户端提供 AV1 或 H.265 版本,实现兼容与效率兼顾。
五、FFmpeg 压缩对比
以同一段 1080p 源视频为例,使用四种编码分别压缩。CRF(Constant Rate Factor)值越小画质越高,数值相近时可大致认为画质相当。
# H.264(CRF 23,中等预设)
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -preset medium -an output_h264.mp4
# H.265(CRF 28,中等预设)
ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset medium -x265-params log-level=error -an output_h265.mp4
# VP9(CRF 32,码率不限)
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 32 -b:v 0 -an output_vp9.webm
# AV1(CRF 30,码率不限)
ffmpeg -i input.mp4 -c:v libaom-av1 -crf 30 -b:v 0 -cpu-used 4 -an output_av1.mkv
参数说明:-crf 控制质量,-preset/-cpu-used 控制速度与压缩比的平衡,-b:v 0 表示由编码器根据 CRF 自动分配码率,-an 表示忽略音频(便于聚焦视频压缩对比)。需要注意的是,不同编码器的 CRF 标度并不统一:H.264 的 CRF 23 与 H.265 的 CRF 28 在主观画质上大致相当,但并非精确对应,实际对比应以 VMAF 或 SSIM 等客观指标为准。
实测中,同等主观画质下,H.265、VP9、AV1 输出的文件体积依次递减,但编码耗时也依次递增。AV1 的编码时间通常是 H.264 的数十倍,需借助硬件或并行优化才能实用化。在批量转码的生产环境中,编码速度往往和压缩率同等重要,因此许多平台在离线转码时才使用 AV1,实时场景仍保留 H.264。
六、常见问题
Q1:H.265 技术先进,为什么普及速度比 H.264 慢?
主要是授权问题。H.265 涉及多个专利池,费用结构复杂且缺乏统一上限,导致浏览器厂商和内容平台望而却步。部分浏览器厂商曾明确表示因授权问题不原生支持 H.265。同时,早期硬件解码支持不足,也限制了它在移动端的推广。直到近几年,主流芯片才普遍集成 H.265 硬件解码,但 Web 端的支持依然不够统一。相比之下,H.264 的授权由 MPEG-LA 一站式管理,费用可预期,这使其成为至今最广泛部署的编码标准。
Q2:AV1 什么时候能全面替代 H.265?
AV1 已在新一代硬件和主流浏览器中获得解码支持,但实时编码的算力需求仍较高。点播场景已开始规模部署,但实时直播对编码延迟要求严格,目前仍以 H.264 为主。预计在硬件编码器普及、编码速度优化成熟后,AV1 才会大规模进入实时直播领域。短期内更可能出现的格局是 AV1 与 H.265 并存,根据终端解码能力自适应切换。AV1 的编码速度也在持续优化,SVT-AV1 等开源编码器已大幅缩短编码时间,未来可期。
Q3:VP9 为什么主要活跃在 Web 端?
VP9 的硬件解码覆盖相对有限,主要依赖 Chromium 系浏览器的软件解码生态。在桌面播放器和移动端原生应用中,H.264/H.265 的硬件支持更完善,功耗更低。VP9 没有像 H.264 那样形成全平台硬件解码生态,因此更多用于网页视频分发。不过,VP9 为 AV1 铺平了道路,许多技术思路在 AV1 中得到延续和升级。部分平台同时提供 VP9 和 AV1 两种编码版本,逐步完成从 VP9 到 AV1 的过渡。
七、总结
视频编码的发展始终在压缩效率与实现成本之间寻找平衡。H.264 凭借完善的兼容性仍是当前最稳妥的选择;H.265 在带宽敏感的超高清场景表现突出,但授权问题制约了其普及;VP9 和 AV1 代表了开源免授权的方向,AV1 更是下一代流媒体的核心。
选择编码格式时,应综合考虑目标播放环境、带宽成本、存储空间和算力开销,而非盲目追求最新标准。在兼容性、效率与成本之间找到契合点,才是工程上的最优解。理解每种编码的适用边界,比记住"哪个最新"更有价值。
相关阅读: