OBS causes stutter in my games when set to game or window capture, but not when using display capture

I've got a suspicion that it's something to do with refresh rates and framerates, but I may be completely wrong. My monitor refresh rate is 60hz and I run my games with Vsync enabled, and when I get stutters from OBS the FPS counters still show a steady 60. It doesn't matter if I'm recording, streaming or just have OBS open in the background, as long as it's set to capture just a window, there is stutter. I would like to find a way to capture just the game and not have stutter, so that I'm able to alt-tab while streaming to check stuff without sharing them.

log file with display capture: https://obsproject.com/logs/fYZBKym3TII4Sefj

log file with game capture: https://obsproject.com/logs/7SDaCBpqlHa9xNlb
 

rockbottom

Active Member
Remove one of them from the Scene & test again. They could be interfering with each other.

21:45:12.202: - scene 'Scene':
21:45:12.202: - source: 'MC2' (game_capture)
21:45:12.202: - source: 'Display Capture' (monitor_capture)
 
Remove one of them from the Scene & test again. They could be interfering with each other.

21:45:12.202: - scene 'Scene':
21:45:12.202: - source: 'MC2' (game_capture)
21:45:12.202: - source: 'Display Capture' (monitor_capture)
I had not realized that all the sources in a scene are active, even when they are hidden. Getting rid of the Display capture source didn't fix the stutter, unfortunately.

I made the same post on the OBS subreddit and someone there suggested that I disable the game's Vsync, and that got rid of the stutter. Problem solved, I guess.
 

rockbottom

Active Member
Yeah, always active. Window capture too, only (1) per Scene just like the others.

Failure from your Game Capture log. See if you're still getting it.
21:52:31.970: gs_texture_open_shared (D3D11): Failed to open shared 2D texture (80070057)

Is the game running on the 1650 TI or the iGPU? See below.

 
This is just a game I used to test if the stutter isn't game specific and I don't intend on recording / streaming it, so it doesn't matter.

I made a test recording with the game I intend on streaming. Can you have a look at the log, please?

With Vsync disabled in game the game runs smoothly, but the log shows 0.1% rendering and encoding lag.
 

rockbottom

Active Member
Rendering lag is GPU overload. Some load reduction is needed. Reduce the game quality or cap frame rates. V-sync adds a bit of a frame cap so with it enabled there was no lag previously. Don't worry about the encoding lag, it will go away when the rendering lag is eliminated.

 
Rendering lag is GPU overload. Some load reduction is needed. Reduce the game quality or cap frame rates. V-sync adds a bit of a frame cap so with it enabled there was no lag previously. Don't worry about the encoding lag, it will go away when the rendering lag is eliminated.

Capping the frame rate got rid of the GPU overload, but the game went back to stuttering.
 

rockbottom

Active Member
You'll need to test. I don't cap anything & only use v-sync, never have rendering lag.
1740871092211.png
 

rockbottom

Active Member
Cool! You only needed a slight load reduction so the cap didn't need to be so drastic. Let the GPU render as many frames as possible. When you get some lag, adjust accordingly.
 

rockbottom

Active Member
Last suggestion(s), for your recordings, zero B Frames (Lowest quality frame type) & disable Lookahead & Visual Tuning. I think you see a difference.

01:17:46.966: b-frames: 2
01:17:46.966: b-ref-mode: 0
01:17:46.966: lookahead: true (8 frames)
01:17:46.966: aq: true
 
Top