这是一组故障排除建议片段,帮助你在120、144、240及更高帧率下录制,由我,中岛惠#7432整理。我假设你的机器已经能以60 FPS录制——如果不能,先通过OBS Studio的Discord服务器或其他方式解决这个问题,然后再争取更高的帧率。不要跳过这一步。
如果你需要收集性能统计,可以从 https://www./Landing/afterburner 下载MSI Afterburner和RivaTuner统计服务器(安装程序包含两者)。
目录:
-2。“最低系统需求”和硬件编码吞吐量
为-1。常见错误和应避免
的事项 0。如何访问超过60帧的帧率
1.NVENC 启动失败
2。NVENC崩溃(卡在“停止录制……”)
3.编码延迟原因和症状
4.混合刷新率
5.帧间隔差,游戏性能
差 6.非整数刷新率 / 帧率限制
7。视频输出
损坏 9.我用的是自定义FFmpeg输出
-2。“最低系统需求”与硬件编码吞吐量
硬件编码器并非无限快。遗憾的是,AMD和NVIDIA都没有提供具体的吞吐量信息,而且吞吐量也可能根据你在电脑上做的其他事情而变化;以下是我收集到的一些信息:
– Turing NVENC(GTX 1600系列,除了GTX 1650、RTX 2000系列、RTX 3000系列)在1080p下应该能达到~630 FPS。(用别人的GTX 1660测试过)
– 2021年12月3日更新:看起来有人在2060 Super显示器上以1080p 420FPS设置“质量”预设出现了问题, 将预设改为“Performance”并禁用“Psycho visual tunening”后,这个问题就解决了。
– Pascal NVENC每颗芯片应支持1080p下约260帧/秒。也就是说,GTX 1050/1060应该能达到260帧,但1080/1080Ti应该能达到两倍,约520 FPS,因为它们有两个NVENC芯片。(用我自己的硬件和其他人的硬件测试过)
– AMD编码器似乎支持在RX 480上录制240帧每秒。(有人在观察工作室的Discord里设法让它正常工作。不知道怎么回事。)
-1。常见错误及其他应避免
事项 不要在Pascal和较旧的NVENC芯片上使用“最高质量”NVENC预设
,这可能会提升画质,但NVENC和GPU的使用至少会翻倍。风险很大,图灵和安培卡几乎没有质量提升。使用“质量”或“性能”。
不要使用过低的CQP值
,H.264在高帧率下效率非常低;使用CQP可能会比你习惯的比特率高得多。先用高QP值(比如30)或VBR,然后在确保存储设备能跟上且录制内容不会损坏时调整设置。
不要写入网络盘或外部(USB等)存储
,千万别那样,写入本地磁盘。甚至如果存储设备本身速度较快,USB或网络开销仍可能带来麻烦。存储慢可能会错误地显示为“编码延迟”,或者导致视频损坏,但没有任何错误信息。
不要使用过长的关键帧间隔
。
虽然这不应该破坏录制,但某些视频编辑软件可能会大幅影响你的视频剪辑性能。使用0值时,关键帧间隔为250帧,如果你录制时帧率超过250帧,这更为理想。
0. 如何访问超过60
帧率
在设置>视频中,将FPS类型设置为分数。如果你想要稳定的120 FPS,输入120加1(120除以1等于120)。如果你的设备帧率是29.97或59.94 fps,比如摄像头,你可以通过将期望帧率乘以1000,并在分母栏输入1001来获得稍微更好的帧间隔。例如,如果你想要119.880 FPS而不是120,000,分子是120000,分母是1001。
1. NVENC启动失败
打开你当前的日志文件(帮助>日志文件 > 查看当前日志 >打开文件),并搜索“NV_ENC_ERR”。
NV_ENC_ERR_OUT_OF_MEMORY可能有三个原因。不幸的是,NVIDIA选择将这些错误代码归入同样的错误代码。
选项一:你已经有3个NVENC实例在运行。NVIDIA 施加了一个人为限制,即即使硬件能够启动第四个视频编码实例也无法成功。停止当前使用NVENC的其他应用程序,如GeForce Experience。
选项二:你的游戏会用尽所有可用的显存。这不会显示在任务管理器或其他报告显存使用率的工具中。有些游戏必须先启动所有NVENC输出,之后就不能再启动新的NVENC实例。(这似乎在这些游戏中很常见:《半条命:艾利克斯》、《疯神之境》,偶尔还有《使命召唤:现代战争》(2019))
选项三:你实际上已经用完了显存。极不可能,但还是去看看Windows的任务管理器。你需要足够的免费物理显存,虚拟显存/“共享”显存帮不上忙。
NV_ENC_ERR_INVALID_PARAM说明你当前的编码设置不好。在没有插件的情况下,OBS Studio唯一能实现这一点的方法就是使用无效分辨率(比如大多数H264编码器时宽度或高度大于4096),但StreamFX插件解锁了更多选项,也允许使用无效设置。(我觉得如果你的NVIDIA驱动太旧,这个错误也可能出现。)
NV_ENC_ERR_INVALID_VERSION说明你的NVIDIA显卡驱动太旧了。有些OBS Studio更新会更改NVIDIA所需的最低驱动版本,所以更新OBS Studio可能需要更新显卡驱动。
如果你有其他问题,告诉我,我会在这里补充。
2. NVENC崩溃(卡在“停止录制……”)
有一个已知的问题是录制超过60帧/秒:如果你使用多个音频轨道,录音很可能会无法开始——当你停止录制时,录音会卡在“停止录制……”你的录音文件将是空的。这在可预见的未来很可能无法解决。有两种变通方法:
a)确认文件确实已经创建,并且在开始录制后还在增长。(在资源管理器中选择该文件并按 F5 以更新其大小。)
b) 把所有音轨发送到另一个OBS Studio实例,该实例会以更低的帧率录制。如果你选择用obs-ndi插件,我写过一份教程:https:///forum/resour…6-audio-tracks-with-obs-studio-uses-ndi.1387/
如果你不录制多条音轨,它还是崩溃,排查起来会更难:
首先要尝试的是用MSI Afterburner将GPU核心降频400 MHz。(这是安全的,不会使保修失效。)当你第一次运行《Afterburner》时,会被它令人困惑的界面所迎接;定位齿轮图标
切换到用户界面标签页(将标签栏向右滚动到最右),选择更实用的主题,比如默认MSI Afterburner V3。

把“核心时钟”滑到最左边(-400 MHz),然后点击应用。如果没有任何反应,且数值自动恢复为 +0,就以管理员身份重启 Afterburner 并重新作。
Try recording your game again. If this helps and your recordings save correctly, you can try increasing core clock to a higher value (still has to be +0 or less, otherwise it may result in overclocking, which voids warranty).
Unfortunately, this is the only troubleshooting option I can provide for this issue; some reported that it doesn’t help them, and I have no clue whatsoever what else may be going wrong here. Falling back to generic troubleshooting steps, you could try running DDU https:///forum/resources/performing-a-clean-gpu-driver-installation.65/
3. Encoding lag causes and symptoms
Generic troubleshooting steps still fully apply: OBS Studio must be running with administrator privileges to enable the GPU priority fix, and your peak GPU usage must not exceed 90%. Afterburner can help you with that – enable the GPU usage graph and press “Detach”, you can see the highest recorded GPU usage. The moment your GPU usage shoots above 90%, you might get stutters in your recordings.
Verify that your game’s frame rate is being capped at your recording resolution; ideally, you should never dip under your target frame rate, although realistically most games aren’t that well optimized and will likely stutter and dip under your target frame rate. Use NVIDIA and AMD driver settings to cap the frame rates; some games come with their own FPS limiters, but those typically favor lower latency over better frame pacing, which may be bad if you’re trying to make smoother recordings. If you intend on recording at 120 FPS, cap your game at 120 until you start getting good 120 FPS recordings; capping at 240 could be introducing issues.
If you’re still having encoding lag with NVENC, try this set of mostly fail-safe settings, and then adjust as you go:
A few notes regarding the choices made:
“Rescale output” will impact performance and/or quality if enabled.
We shouldn’t need custom muxer settings unless you’re also doing fragmented MP4 or something else like this.
CQP is always preferred for higher video quality and slightly better encoder performance, but VBR at 35 Mbps at least guarantees that I/O performance won’t be an issue. Change this when you’re done troubleshooting.
“Max Bitrate” refers to VBV buffer size.
A keyframe interval of “0” will use 250 frames. (Longer interval means better compression, but may reduce performance in video editors and video players.)
“Performance” preset, compared to the “Quality” preset, improves hardware encoder throughput, at the cost of quality. In a “normal” (60fps) recording scenario, this is hurting quality for no benefit, but here, we might really need all the throughput we can get. Change to “Quality” if you can get away with it.
Profile: high. I don’t know if the other settings will make things better or worse. Note that high444p will automatically be used if you choose I444 in Settings>Advanced.
Psycho Visual Tuning, B-frames: both disabled. The performance footprint will likely be too high. Just use lower QP values if you want better quality.
Note that I’m recommending flv and only a single audio track; OBS Studio uses slightly more disk I/O with the mkv muxer, and some people reported having issues with it on slow storage. If you don’t need multiple audio tracks, you can keep using the flv muxer; it’s both crash-safe and less prone to break at high frame rates. Check the beginning of section 2 if your MKV recordings occasionally come out broken.
4. Mixed refresh rates
If you’re using Windows 10 release 2004 or newer, skip section 4, this issue is fixed. (Hearsay: if the difference between the lowest refresh rate and the highest refresh rate of your displays is greater than 3x, i.e. the lowest is 60 and the highest is higher than 180, you could still get issues. Ping Nakajima Megumi#7432 in the OBS Studio Discord if you have more info on that.)
Using multiple displays with different refresh rates, such as 60 and 144, will cause severe stuttering on all displays as soon as you run any hardware-accelerated application on any low refresh rate display.
If you’re on Windows 7, you can disable DWM by switching to a “classic” (non-Aero) Windows visual style, or by ticking the checkbox in Settings>Video in OBS Studio.
If you’re running Windows 10 release 1909 or older, or Windows 8 or 8.1, or don’t want to disable Aero on Windows 7, you have a few options:
a) Unplug all low refresh rate displays (if there are any) and bring all your high refresh rate displays to the same refresh rate (like 120).
b) Disable DWM on Windows 8 or 10 (use your favourite search engine to find out how).
5. Bad frame pacing, bad game performance
Many games just aren’t optimized well enough to run at 120 FPS or higher at all times. A few troubleshooting steps may be taken:
– Start recording before starting your game. This ensures that the GPU stays in a high power state the entire time, and that enough VRAM necessary for hardware encoding is allocated.
– Enable the frame time graph in MSI Afterburner and watch it. (Watching it isn’t going to make your frame pacing any better, but it might give you an idea of how good or bad it is.)
– Use a third party frame rate limiter. (In this context, “third party” means “not built into the game”, i.e. NVIDIA control panel, or RivaTuner Statistics Server.) This will increase input latency by at least 1 frame, which is bad for competitive titles, but also improve perceived smoothness and reduce the likelihood and severity of visible stutters, both for you and for the video output.
– Lower your frame rate limit. Ideally, lower it all the way to your target frame rate – i.e. if you want to record at 120, don’t cap at 240, cap at 120. Or, if your end goal is motion interpolation, lower it to the lowest frame rate that still benefits you.
– Lower the graphics settings. Most games don’t explain which settings affect rendering (GPU) performance and which settings affect simulation (CPU) performance, so that may be difficult to figure out. Again, make sure your peak (max) GPU usage is no higher than 90% at your usual clock speed (since graphics cards downclock themselves when at low load, MSI Afterburner may erroneously display a very high peak that happened when the GPU switched power states, i.e. when launching a game; reset Afterburner’s stats after you launch your game); if you peak above 90%, you risk having issues.
– Pin the game to specific cores in Task Manager. On Ryzen systems, try the first half, or the second half. “Disabling” SMT/HT by unchecking every odd core may also help on CPUs that have these features. Most modern games will see no benefit from this, but some older games might have better frame pacing. The same can be done to OBS Studio, and any other applications eating CPU time in the background. If you’d like to automate this, check out Bitsum Process Lasso https:///
– Make sure the CPU power saving mode is set to “Ryzen High Performance” (if available) or “High performance”. Don’t touch GPU power saving mode, leave it at “Optimal power” or the AMD equivament.
– Close other applications that eat CPU time. Games generally don’t like having to fight over CPU time.
– Disable preview in OBS Studio for a (very) slight reduction in GPU usage. (You can set a hotkey to toggle preview in Settings > Hotkeys.)
– Disable Microsoft Windows Defender. Its performance footprint doesn’t accurately show up in Task Manager, and it is quite severe. (More info: https://www./watch?v=pzeKPiwEfXk&t=236s )
6. Non-integer refresh rates / FPS limits
If you have a refresh rate of 75, 100, 144, 165, 200 or any other “oddball” refresh rate that doesn’t evenly divide by 60, dial it down to the nearest exact multiple – 120, 180, 240, 300, 360. Do the same to your frame rate limiter, too. Not doing so will hurt frame pacing, making it perceptually less smooth than it might have been otherwise.
7. Corrupt video output
Use mpv or SMplayer to verify the issue really is with the video. Not all video players are capable of playing high frame rate video properly.
Apart from that, the most common cause of corrupt video output seems to be excessively high video bit rate, check section -1.
9. I’m using Custom FFmpeg output
Do us both a favour and switch back to “regular” Advanced output mode, FFmpeg output is exponentially more difficult to troubleshoot. If you want lossless audio, use Audacity. If you need NVENC HEVC, use the StreamFX plugin (though it should be noted that HEVC is more expensive to encode with NVENC, expect less throughput than H264).
I don’t know what happened to section 8. Maybe I can’t count to 8?
Last major update: 29 Mar 2021
Last formatting update: 27 Dec 2021