AV1编码由来
Apple、亚马逊、思科、 Google、英特尔、 微软、Mozilla 以及 Netflix 等厂商又共同组建了 Alliance for Open Media(开放媒体联盟)并在 2018 年推出了对抗 H.265 的新视频编码 AV1(AOMedia Video 1)
AV1编码优缺点
1. 优点
可以在同等质量下, 相对于H265/VP9 节省 30%+的码率, 相当于H264节省50%+的码率
libaom-av1 can save about 30% bitrate compared to VP9 and H.265 / HEVC, and about 50% over H.264, while retaining the same visual quality.
H264: 112m H265: 55M av1: 32M
2. 缺点
解码/编码非常耗费CPU, 目前未见到有编码级别的硬件加速
1) 解码, 从youtube的介绍看AV1 需要一台功能强大的计算机, 暗示了CPU耗费巨大, 测试了macOS和win10, 都能正常播放, 但是耗费的CPU比VP9多20~50%
从文档看, 解码级别的硬件加速已经有了, 包括intel 12代cpu和 nvidia的CUDA都可以
2) 编码: 目前没看到有硬件加速方式, 评价最好的为svt-av1编码
a) Libaom-av1
默认av1编码 参数 速率 基本处于不可用状态, 只有0.00x 倍, 需要通过调整-cpu-used参数和使用2pass 方式实现性能码率的均衡, 不过也挺慢的
可以看到在cpuused 5 附近, 码率和质量达到了比较好的平衡
ffmpeg -y -i Black.Widow.mp4 -ss 00:39:06 -to 00:42:00 -c:v libaom-av1 -strict -2 -b:v 3000K -maxrate 6000K -cpu-used 8 -pass 1 -f matroska NUL & d:/ffmpeg/bin/ffmpeg -i Black.Widow.mp4 -ss 00:39:06 -to 00:42:00 -c:v libaom-av1 -strict -2 -b:v 1500K -maxrate 3000K -cpu-used 5 -pass 2 black.libaom-av1.sample.2pass.mkv
b) Svt-av1 : intel 和 Netflix的方案
libsvtav1
is the Intel x86-64 codec for AV1. Compile with --enable-libsvtav1
. See FFmpeg doc and upstream doc.
The range of options are similar to that of libaom (aomenc). It is supposed to be faster than libaom while having comparable quality.
40 核 Intel(R) Xeon(R) CPU Silver4210 @2.2G , windows server 2019 平台, 默认参数下可以实现2X 的编码, 代价是质量稍微有点模糊
ffmpeg -y -i Black.Widow.mp4 -ss 00:39:06 -to 00:42:00 -c:v libsvtav1 -preset 4
c) Rav1e
Rav1e claims to be the fastest software AV1 encoder, but that really depends on the setting. 速度不行, 目前看暂不可用
d) 爱奇艺自研方案
为了进一步提高编码效率,爱奇艺基于AV1标准独立自主研发出QAV1编码器,极大缓解了AV1计算复杂度高、编码时间长的问题,进而加速AV1应用效率。测试显示,与目前最流行的编码器X265相比,QAV1编码器可以节省40%以上码率,进而可以减小将近一半的带宽;在同等的压缩率下,QAV1编码器比由Netflix与英特尔联合推出的开源编码器SVT-AV1快5倍左右。借助QAV1编码器,AV1视频播放会更加流畅,同时帮助用户节省大量流量。
e) 商业化方案 微帧科技
参考文档
https://trac.ffmpeg.org/wiki/Encode/AV1