You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg hevc_nvenc编码器B帧问题求助:GTX1060禁用B帧无效

解决GTX1060使用新版FFmpeg hevc_nvenc编码HEVC的B帧参考报错问题

核心原因

GTX1060(GP106,Pascal架构)的NVENC硬件编码器不支持HEVC编码时将B帧作为参考帧,而新版FFmpeg的hevc_nvenc默认启用了部分会触发B帧参考的参数,仅用-bf 0无法完全禁用相关逻辑。

可行解决办法

方法1:强制禁用B帧及自适应B帧逻辑

在编码命令中同时添加以下参数,彻底关闭所有涉及B帧的设置:

ffmpeg -i [输入文件] -c:v hevc_nvenc -bf 0 -no-b-adapt -preset medium [输出文件]
  • -bf 0:直接禁用B帧生成
  • -no-b-adapt:关闭自适应B帧决策(新版FFmpeg默认可能开启)
  • -preset medium:使用中等预设,避免高预设自动启用不兼容的参考帧逻辑

方法2:限制参考帧数量并关闭速率控制前瞻

如果方法1仍报错,添加-refs 3和-rc-lookahead 0参数,适配Pascal架构GPU的硬件限制:

ffmpeg -i [输入文件] -c:v hevc_nvenc -bf 0 -no-b-adapt -refs 3 -rc-lookahead 0 [输出文件]
  • -refs 3:Pascal架构HEVC NVENC支持的最大参考帧数量(仅I/P帧,无B帧)
  • -rc-lookahead 0:关闭速率控制的前瞻窗口,避免触发B帧参考逻辑

方法3:使用低延迟预设

直接调用专为低延迟场景设计的预设,这类预设默认不使用B帧参考:

ffmpeg -i [输入文件] -c:v hevc_nvenc -preset ll-fast [输出文件]

ll-fast和ll-medium等低延迟预设天然适配不支持B帧参考的硬件编码器。

验证方法

执行编码命令后,若不再出现[hevc_nvenc @ ...] B frames as references are not supported报错,且输出视频能正常播放,则说明解决生效。

内容的提问来源于stack exchange,提问作者ramondq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 16:35:23