H.264 vs H.265 vs AV1:三大视频编码深度对比与选择指南
下载的视频播不了,一查是H.265编码;想做4K直播,纠结用H.264还是H.265;Netflix用AV1了,要不要跟进;自家视频该用什么编码上传到B站——视频编码这事,技术细节多,授权费用复杂,浏览器支持参差不齐。今天把三大主流编码横向对比一遍,看完你就知道怎么选。
三大编码简介
H.264 / AVC(2003年)
由ITU-T和ISO/IEC联合开发的 行业标准。从手机到电视、从浏览器到卫星,几乎所有能播放视频的设备都支持H.264。YouTube、Netflix、Bilibili的默认编码就是它。20多年的生态积累,让H.264成了无法绕开的基准。
H.265 / HEVC(2013年)
H.264的官方继任者,压缩效率比H.264高30%-50%。但发布后陷入了授权费泥潭——专利池有HEVC Advance、MPEG LA、Velos Media等多个,授权规则复杂,导致浏览器厂商(特别是Chrome和Firefox)长期不原生支持。今天H.265在Apple生态(iPhone、Mac、Safari)和4K蓝光、IPTV领域普及,但Web端依然尴尬。
AV1(2018年)
Google、Mozilla、Cisco、Amazon、Netflix、Microsoft等公司组成的 开放媒体联盟(AOMedia) 推出的开源编码。目标明确:替代H.265,无授权费,压缩效率更高。AV1的压缩效率比H.264高50%-60%,比H.265高20%-30%,且完全开源免费。代价是编码极慢,硬件解码普及中。YouTube、Netflix、Twitch等大厂已经开始用AV1。
五维度横向对比
| 维度 | H.264 | H.265 | AV1 |
|---|---|---|---|
| 发布年份 | 2003 | 2013 | 2018 |
| 压缩效率 | 100%(基准) | 130%-150% | 150%-160% |
| 编码速度 | 最快 | 中等 | 最慢(H.264的1/10-1/20) |
| 解码复杂度 | 最低 | 中等 | 最高 |
| 硬件解码支持 | 全部设备 | 2016年后设备 | 2020年后新设备 |
| 浏览器支持 | 全部 | Safari、Edge部分 | Chrome、Firefox、Edge(新版本) |
| 授权费 | 有(专利池MPEG LA) | 复杂(多个专利池) | 完全免费 |
| 适用场景 | 通用、兼容性优先 | 4K、本地播放、Apple生态 | 现代Web、未来趋势 |
浏览器支持详细对比
| 浏览器 | H.264 | H.265 | AV1 |
|---|---|---|---|
| Chrome (Windows/Mac/Linux) | ✅ 全支持 | 🟡 部分支持(需硬件+系统) | ✅ 70+版本 |
| Firefox | ✅ 全支持 | ❌ 不支持 | ✅ 60+版本(部分平台) |
| Safari (Mac) | ✅ 全支持 | ✅ 原生支持 | ✅ 16.4+版本 |
| Safari (iOS) | ✅ 全支持 | ✅ 原生支持 | ✅ 16.4+版本 |
| Edge | ✅ 全支持 | 🟡 部分支持(需硬件) | ✅ 75+版本 |
| 老版本浏览器 | ✅ 全支持 | ❌ 普遍不支持 | ❌ 普遍不支持 |
结论: Web视频要兼容所有浏览器,H.264是唯一稳妥选择。如果只用Chrome和现代浏览器,AV1更优。H.265在Web上的尴尬地位短期内难以改变。
硬件解码支持
硬件解码(GPU/专用芯片解码)比软件解码(CPU解码)功耗低、速度快,对4K/8K视频几乎是必需的。
| 编码 | 硬件解码普及年份 | 支持的设备 |
|---|---|---|
| H.264 | 2005+ | 几乎全部 |
| H.265 | 2016+ | Intel Kaby Lake+、AMD RX 400+、NVIDIA GTX 950+、iPhone 6s+、Android旗舰2015+ |
| AV1 | 2020+ | NVIDIA RTX 30+、AMD RX 6000+、Intel Tiger Lake+、iPhone 15+、Android旗舰2021+ |
实用建议: 给2015年前的老设备发视频,必须用H.264。给2020年后的新设备发视频,三个编码都能用。
压缩效率实测对比
以一段1080p/30fps/2分钟视频为例:
| 编码 | 同等画质(CRF对应值) | 文件体积 | 相对H.264 |
|---|---|---|---|
| H.264 CRF 23 | 视觉无损 | 50 MB | 100% |
| H.265 CRF 28 | 视觉无损 | 30 MB | 60% |
| AV1 CRF 32 | 视觉无损 | 22 MB | 44% |
CRF值不能直接对比,需要根据各编码的"视觉无损"临界点调整。但同画质下,AV1体积约为H.264的45%,H.265约为H.264的60%。
节省的存储/带宽:
- 1TB视频库:H.264 → H.265省400GB,H.264 → AV1省550GB
- 1Gbps带宽:H.264 → AV1能多服务2.2倍用户
编码速度对比
以1080p/10分钟视频为例(中端PC,preset=medium):
| 编码 | 编码时长 | 相对H.264 |
|---|---|---|
| H.264 (libx264) | ~3分钟 | 1x |
| H.265 (libx265) | ~10分钟 | ~3.3x |
| AV1 (libaom-av1) | ~50分钟 | ~16x |
| AV1 (svt-av1) | ~15分钟 | ~5x |
AV1的官方编码器libaom-av1慢得离谱,但新一代编码器SVT-AV1(Intel主导)已经把速度提到H.265水平。Netflix、YouTube等大厂用专用硬件编码器,普通用户用SVT-AV1勉强能用。
实用建议: 实时编码(直播、屏幕共享)目前只能用H.264。批量转码存档可以接受AV1的慢。
授权费用
这是H.265没普及的根本原因:
| 编码 | 授权情况 | 商用成本 |
|---|---|---|
| H.264 | MPEG LA专利池,规则清晰 | 0.1-0.2美元/单位(免费服务豁免) |
| H.265 | 至少3个专利池(HEVC Advance、MPEG LA、Velos Media)+多个独立专利持有者 | 复杂且昂贵,每个专利池单独收费 |
| AV1 | 完全免费,AOMedia持有 | 0 |
H.264的授权费虽然存在但规则简单,浏览器厂商愿意承担(或已通过MPEG LA的协议覆盖)。H.265的多个专利池让浏览器厂商(特别是开源的Firefox和Chrome)无法接受,所以Web端H.265支持一直尴尬。AV1的免费策略就是为了打破这个困境。
不同场景的编码选择
场景一:Web视频(YouTube、Bilibili、自建网站)
推荐:H.264(兜底)+ AV1(升级)
H.264保证所有浏览器都能播,AV1给现代浏览器提供更优体验。可以用 <video> 标签的多source特性同时提供:
<video controls>
<source src="video-av1.mp4" type='video/mp4; codecs="av01.0.05M.08"'>
<source src="video-h264.mp4" type='video/mp4; codecs="avc1.42E01E"'>
</video>场景二:移动端App
推荐:H.264(兼容)或 H.265(节省流量)
iOS和Android旗舰都支持H.265硬件解码。如果App只面向新设备,H.265能省30%-50%流量。要兼容老设备,H.264保险。
场景三:4K/8K超清
推荐:H.265 或 AV1
4K视频用H.264码率爆炸(50Mbps+),H.265能压到20-25Mbps,AV1能到15-18Mbps。8K基本只能用AV1。
场景四:直播
推荐:H.264(实时编码)
实时编码场景H.264还是首选,编码速度快,硬件编码器成熟。AV1实时编码器还在发展中,2024年后才有大规模商用。
场景五:本地存档/NAS
推荐:H.265(兼顾效率)或 AV1(最大节省)
存储成本低,但视频数量大时差异显著。1万部1080p电影,H.265比H.264省5TB存储。AV1能再省3TB但编码耗时巨大。
场景六:视频会议
推荐:H.264(兼容性)或 VP9(替代方案)
实时性要求高,AV1目前跟不上。H.264是会议软件的默认选择,VP9是Google的开源替代方案。
FFmpeg编码命令
# H.264编码
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -preset medium -c:a aac output.mp4
# H.265编码
ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset medium -c:a aac output.mp4
# AV1编码(libaom,慢但质量高)
ffmpeg -i input.mp4 -c:v libaom-av1 -crf 32 -b:v 0 -c:a libopus output.webm
# AV1编码(SVT-AV1,快但质量略低)
ffmpeg -i input.mp4 -c:v libsvtav1 -crf 32 -preset 6 -c:a libopus output.mkv更多FFmpeg用法可以看本站 FFmpeg入门实战教程。
编码背后的核心技术
如果你好奇为什么AV1比H.264效率高那么多,核心是这几个技术差异:
块划分
- H.264:最大16x16块
- H.265:最大64x64块,最小8x8
- AV1:最大128x128块,最小4x4
更大的块划分让平坦区域(如天空、墙壁)压缩效率大幅提升。
预测模式
- H.264:9种帧内预测方向
- H.265:35种帧内预测方向
- AV1:56种帧内预测方向
更多预测方向能更精确地匹配图像纹理,减少残差数据。
变换
- H.264:4x4、8x8 DCT
- H.265:4x4到32x32的DCT和DST
- AV1:4x4到64x64的多种变换,包括恒等变换
更大的变换块对低频信号(如缓变区域)更高效。
滤波
- H.264:去块滤波
- H.265:去块滤波 + SAO(样本自适应偏移)
- AV1:CDEF(约束方向增强滤波)+ LR(Loop Restoration)
更先进的滤波器能减少压缩伪影,提升主观画质。
常见问题速查
| 问题 | 原因 | 解决 |
|---|---|---|
| H.265视频Chrome播不了 | 不原生支持 | 转H.264或用AV1 |
| AV1视频老设备卡顿 | 无硬件解码 | 转H.264或H.265 |
| 编码AV1太慢 | libaom本身慢 | 用SVT-AV1,preset调到8或更高 |
| 文件体积比预期大 | CRF太低 | 提高CRF值(H.264: 23-28,H.265: 28-32,AV1: 32-35) |
| H.265授权费怎么算 | 复杂 | 商用前联系HEVC Advance等专利池 |
| 4K视频播不了 | 设备性能不足 | 降到1080p或用硬件解码 |
未来趋势
H.266 / VVC(2020年):H.265的继任者,压缩效率比H.265高30%-50%。但授权费问题依然存在,且需要新的硬件解码支持,普及速度存疑。
AV2(开发中):AV1的下一代,目标是再提升30%压缩效率。
LCEVC(低复杂度增强编码):MPEG-5 Part 2,作为基础编码(H.264/H.265/AV1)的增强层,提升效率。
短期预测: 未来3-5年,H.264依然是兜底编码,AV1在Web和流媒体领域快速普及,H.265保持4K本地播放和Apple生态的强势地位。H.266和AV2都不会快速普及。
总结
三大编码各有定位:
- H.264:兼容性王者,所有场景的兜底选择
- H.265:4K和本地播放的实用选择,Web端尴尬
- AV1:未来趋势,Web和流媒体的下一代标准
日常使用无脑H.264最稳。要节省存储或带宽且设备支持,用H.265或AV1。商用Web视频建议H.264 + AV1双轨提供。
快速回顾:
- 兼容性优先:H.264(无脑选)
- 体积优先且支持H.265:H.265(Apple生态、4K本地)
- 未来趋势:AV1(现代Web、流媒体)
- 避免坑:H.265在Web上别用,AV1在老设备上别用