如果你最近打算用AV1压片——不管是把影库转成更省空间的格式,还是给存档视频做个长期备份——你大概率听过这句圈内常识:硬编码速度快但画质糙,软编码画质好但慢,要画质就得上SVT-AV1,preset拉低慢慢磨。

这话流传了很多年,基本没人质疑。但8月初知乎上一篇大量跑测的《AV1编码踩坑记录》(8月21日刚更新过)把这条常识掀了个底朝天:RTX 50系的NVENC AV1硬编码,在默认参数下,居然吊打了比它慢十倍以上的SVT-AV1。知乎
不是玄学,原因只有一个开关。今天把这件事的来龙去脉、背后的机制、以及你现在压AV1到底该怎么选,一次说清楚。
反转是怎么发生的:罪魁祸首是默认开启的TF
先说测试者的发现。这位作者围绕variance-boost、ac-bias、CDEF、restoration、sharpness等一堆参数做了大量组合和多场景测试,最后发现:最有效、最稳定的方案,根本不是堆一长串参数,而是关掉那个糟糕的默认TF(Temporal Filtering,时域滤波/时域降噪)。
SVT-AV1的TF本来是干什么的?简单说,它想利用相邻帧的相似性做时域降噪,把噪点抹掉、省下码率。想法是好的,但这位作者实测下来,默认的TF算法效果很差,甚至会产生明显的块状伪影——画面里出现一块一块不自然的“涂抹感”。知乎
于是出现了那个反常识的结果:SVT-AV1默认参数下跑出来的画质,被RTX 50的nvenc-av1默认参数按在地上摩擦,而后者速度快了十倍不止。
但故事还有后半段。把TF关掉之后(`enable-tf=0`),SVT-AV1的上限就回来了,确实比硬编高一截,作者原话是“肉眼对比已经跟源视频看不出差别”。同时还有个细节:nvenc-av1在关键帧上的画质表现往往更好,但非关键帧还是不如关掉TF的SVT-AV1。知乎
所以准确的结论不是“硬编打败了软编”,而是:“开着烂TF的软编”打不过硬编,“关掉TF的软编”依然是画质上限。一个开关,决定了常识成立还是翻车。

评论区也没闲着:TF到底该不该全关,还在吵
这篇帖子的评论区本身就很值得看,因为它暴露了这个领域真实的不确定性。
有人提出:如果以新版VMAF做量化标准,tf=1或2可能比完全关掉(tf=0)还好一些,配合其他参数能比默认参数省12%码率、VMAF还能到95——当然他自己也承认只测了一个视频,未必有普适性。知乎
还有人问:这种对比到底是肉眼看的还是有量化办法?作者也坦承,如果有一套稳定的量化流程,就能像画曲线图一样自动找最佳参数,而现在还做不到。
我的判断是:“关TF”目前是社区共识度最高、翻车概率最低的动作,但“TF开到什么程度最优”还没有定论。如果你的片源噪点特别多(比如暗光拍摄),TF未必一无是处,值得自己对比一下;大多数常规内容,关掉更稳。
那么现在压AV1,到底该怎么选
把测试者的结论整理成三档,对号入座就行:
第一档:日常速度优先(推荐绝大多数人)
`-c:v av1_nvenc -preset p7 -tune hq`
这是N卡用户的“闭眼选”。有个容易被忽略的细节:FFmpeg里av1_nvenc的默认tune就是hq,而hq默认就会关掉TF,所以这行命令本身就已经避开了坑。知乎作者实测这档画质已经非常能打,关键是速度——对要压几十上百个视频的影库党来说,十倍的时间差就是实打实的电费和精力。
第二档:均衡档(想榨一点画质又不想等太久)
`-c:v av1_nvenc -preset 3 -bf 6 -lookahead_level 2 -qp_cb_offset 12`
这是跑测中NVENC组表现最好的一组参数,作者的评价是“跟SVT-AV1不分上下”。适合既想比第一档再好一点、又不愿意上CPU慢磨的场景。
第三档:极限画质档(存档党、完美主义)
`-c:v libsvtav1 -preset 1 -svtav1-params “enable-tf=0”`
SVT-AV1低preset加上关TF,画质上限最高,代价是非常慢。适合那种“压一次、存十年”的珍贵内容,或者你对某几部片子有执念。普通剧集、随便看看的内容,没必要为这点肉眼难辨的差距付出十倍时间。
额外避坑一条:如果你的片源是RGB(比如某些录屏、游戏素材),压出来在播放器里出现色偏,别急着到处找复杂方案——显式声明 `-colorspace bt709` 就能解决,本质是避免编码端和解码端的色彩空间错配。知乎这也是实测帖里提到的、AI方案经常绕远路而实际一行命令搞定的典型坑。
趋势判断:硬编的画质差距还在继续缩小
如果你觉得“反正软编上限更高,我等等也无妨”,那还要看另一个刚发生的动向。
8月中旬,NVIDIA发布了Video Codec SDK 13.1,其中对编码质量影响最大的是“分层参考模式”(hierarchical reference):把B帧排成树状参考结构,让NVENC的最大B帧数从7帧直接提升到31帧。知乎SDK 13.1先给AV1加上了这个能力(支持1/3/7/15/31帧几档),官方说法是7帧以上收益最明显、性能影响很小,并给出了CQ和VBR两种模式下15个B帧的码率节省对比图;H.264和HEVC会在未来的驱动版本里跟进。
翻译成人话:硬编码正在用更聪明的参考结构补画质短板,而且不牺牲速度。NVENC AV1的竞争力还在往上走。反方向上,SVT-AV1这边目前没看到对等级别的大动作。
当然也要泼一点冷水:SDK更新不等于你手头的FFmpeg和OBS明天就能用上,新特性要等驱动和上层软件逐步适配。但方向很清楚——“硬编画质不行”这个判断的有效期,正在肉眼可见地缩短。
最后,什么人该现在就动手
把选择再收敛一下:
有RTX 40/50系N卡的影库党:直接用第一档参数开压,这是目前性价比最高的窗口。影库越大,省下的时间越值。
追求极致存档质量的:上第三档,但建议只对“值得”的内容用,别全库慢磨。
还在用老显卡或纯CPU的:不必焦虑,HEVC在存量设备上依然是稳妥选择;真要上AV1,可以留意二手市场上带AV1硬解/硬编能力的廉价卡(比如之前站内讨论过的A380这类),先解决解码再说。知乎
等党:值得关注的信号是——支持分层参考的NVIDIA驱动版本落地、以及社区有没有人把“TF档位+VMAF”的量化测试做出普适结论。这两个出现任何一个,参数选择可能会再洗一次牌。

AV1这个“免费且能打”的编码,过去几年的短板一直是硬编不够好、软编太慢。现在的情况是:硬编已经过了“能用”的门槛,正在逼近“好用”。对大多数普通用户来说,现在动手不亏;对完美主义者,剩下的差距也已经被压缩到“一个开关+一点耐心”的程度了。