ffmpeg av1编码

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

https://sspai.com/post/59174

https://gitlab.com/AOMediaCodec/SVT-AV1

https://www.streamingmedia.com/Articles/Editorial/Featured-Articles/AV1-Has-Arrived-Comparing-Codecs-from-AOMedia-Visionular-and-Intel-Netflix-142941.aspx?utm_source=related_articles&utm_medium=gutenberg&utm_campaign=editors_selection

发表评论