Question / Help OBS PREVIEW(literally the preview, not recording or streaming) FRAME DROPS.

Riio

New Member
So I have been searching EVERYWHERE for a possible explanation to this because it is actually ridiculous.

As the title says, I am getting frame drops on my PREVIEW when I am tabbed into a game. No, I will not post a log because I am not streaming or recording. I have heard and seen this too many times from other forum posts. It is happening with every game I play. When tabbed in, the preview will be 50-58 fps and maybe touch 60 every once and a while but never consistently but AS SOON AS I tab out, the preview will stay at a stable 60 fps the whole time until I tab back in. I WILL SAY THIS, capping in game fps DOES help but for people like myself who have 144hz and need our fps to get as close to that as possible, this is not at all a solution to the issue. PUBG gets 90-160 fps at any random times so capping them, again, is not an option. What is seriously pissing me off is the fact that IM NOT EVEN RECORDING OR STREAMING, ITS A FREAKING PREVIEW. I am beyond agitated at this. PLEASE, help.
Game Mode is turned off, no external recording stuff is happening, all drivers up to date, latest windows 10 version, 64 bit(does it on 32 bit version as well,) and as said, all games do it.
 

Fenrir

Forum Admin
OBS is always using some of your GPU to render the composited scene output, regardless if the encoder is active or not.

Running a game without vertical sync or a frame rate limiter will frequently cause performance issues with OBS because your GPU will be maxed out. Enable vsync or set a reasonable frame rate limit that your GPU can handle without hitting 100% usage. If that's not enough you may also need to turn down some of the video quality options in the game.

If none of that works, then you need to invest in a more powerful GPU that can keep up with what you're trying to do.
 

Riio

New Member
OBS is always using some of your GPU to render the composited scene output, regardless if the encoder is active or not.

Running a game without vertical sync or a frame rate limiter will frequently cause performance issues with OBS because your GPU will be maxed out. Enable vsync or set a reasonable frame rate limit that your GPU can handle without hitting 100% usage. If that's not enough you may also need to turn down some of the video quality options in the game.

If none of that works, then you need to invest in a more powerful GPU that can keep up with what you're trying to do.

I have seen people having this issue with 1070 ti's, so thats not powerful enough? Also, myself and a ton of others use to have no issue with this with the same games but now we are. I can run a preview just fine at a stable 60fps with OBS classic still but not studio but classic has basically none of the features I am wanting from studio so that kind of screws me. Its very confusing that I cant even run a stable 60fps on a freaking preview man. So disappointing to see in such a good software. They need to release a low performance preview mode like classic had that allows the preview to be more stable and way less demanding with how often this issue is occurring. I should not have to sacrifice a significant amount of in game fps and visuals to get a stable 60 fps PREVIEW.
 

BK-Morpheus

Active Member
Even a 1080TI can have that issue. Without any reasonable FPS limit, the CPU or GPU will become a bottleneck (and of course, this ways you will see very inconsistent frame times), no matter how fast they are.

If the GPU is utilized at >95%, there are not enough GPU resources left for OBS to render your scene fast enough.
In the past (for example in Win7 and earlier branches of Win10), the ways, tools like OBS can access the video buffer and the way, windows prioritizes GPU load for Games, was different. So depending on your Drivers and Windows version, this "problem" might be present or it might not.

Point 4.1 in this post provides additional information about that behavior, and why using no fps limit at all will introduce problems like this.
https://obsproject.com/forum/threads/common-mistakes-and-how-to-avoid-them.78116/
 

Riio

New Member
Even a 1080TI can have that issue. Without any reasonable FPS limit, the CPU or GPU will become a bottleneck (and of course, this ways you will see very inconsistent frame times), no matter how fast they are.

If the GPU is utilized at >95%, there are not enough GPU resources left for OBS to render your scene fast enough.
In the past (for example in Win7 and earlier branches of Win10), the ways, tools like OBS can access the video buffer and the way, windows prioritizes GPU load for Games, was different. So depending on your Drivers and Windows version, this "problem" might be present or it might not.

Point 4.1 in this post provides additional information about that behavior, and why using no fps limit at all will introduce problems like this.
https://obsproject.com/forum/threads/common-mistakes-and-how-to-avoid-them.78116/
OBS classic had a "disable encoding while previewing" setting. This is exactly what we need for studio if this is the case. How about an alternate gpu STRICTLY for obs? Like I said, I am not trying to even stream or record, just need a stable preview. Thanks.
 

BK-Morpheus

Active Member
Interesting, but "disable encoding" is doing nothing to reduce the GPU load, because OBS is not encoding (via CPU) the preview.
It is just rendering it via GPU.
So how can a scene composition be shown in the preview, without rendering it?
 

Fenrir

Forum Admin
The encoder isn't active in OBS while the preview is showing, but the scenes are being rendered and composited, so that option in OBS Studio wouldn't make sense. The scene is being rendered regardless of encoder state, as I mentioned.

Second GPUs "just for OBS" will actually make your PC perform worse, because having to copy the frame data between the two GPUs is very costly on performance.
 

Riio

New Member
The encoder isn't active in OBS while the preview is showing, but the scenes are being rendered and composited, so that option in OBS Studio wouldn't make sense. The scene is being rendered regardless of encoder state, as I mentioned.

Second GPUs "just for OBS" will actually make your PC perform worse, because having to copy the frame data between the two GPUs is very costly on performance.
So I am basically screwed. Interesting.
 

BK-Morpheus

Active Member
Fenrir is right. Riio said "PUBG gets 90-160 fps at any random times" so the best fps limit would be 90fps, for the most consistent frame times and this way, there should be nough GPU power left for the scene rendering.

So I am basically screwed. Interesting.

If you keep Win10 single PC setup and refuse to limit the ingame fps: Yes.
 

Fenrir

Forum Admin
So I am basically screwed. Interesting.

This isn't accurate, no. You're just unwilling to do what is required to avoid issues. I'm curious what you're doing that you need the preview active, but not the encoding output? Maybe if I understood what you're trying to do, I can offer an alternate solution for you.
 

Riio

New Member
Interesting, but "disable encoding" is doing nothing to reduce the GPU load, because OBS is not encoding (via CPU) the preview.
It is just rendering it via GPU.
So how can a scene composition be shown in the preview, without rendering it?
great question honestly. I have zero idea how it works. I know classic is dead and all but it just blows my mind that the difference in performance with that single checkbox in classic wasnt somehow implemented into studio. its just super disappointing.
 

Riio

New Member
This isn't accurate, no. You're just unwilling to do what is required to avoid issues. I'm curious what you're doing that you need the preview active, but not the encoding output? Maybe if I understood what you're trying to do, I can offer an alternate solution for you.
I have an alternate pc for streaming. I use a capture card for this but I cannot pass through my capture card as most do for visual to the streaming pc so what I actually do is run my capture card as a 3rd monitor and then project the preview onto that (capture card) monitor.
 

Riio

New Member
This isn't accurate, no. You're just unwilling to do what is required to avoid issues. I'm curious what you're doing that you need the preview active, but not the encoding output? Maybe if I understood what you're trying to do, I can offer an alternate solution for you.
I would say "unwilling" to spend a ton more money and still sacrifice framerate isnt the proper term for the situation.
 

Riio

New Member
Fenrir is right. Riio said "PUBG gets 90-160 fps at any random times" so the best fps limit would be 90fps, for the most consistent frame times and this way, there should be nough GPU power left for the scene rendering.



If you keep Win10 single PC setup and refuse to limit the ingame fps: Yes.

This isn't accurate, no. You're just unwilling to do what is required to avoid issues. I'm curious what you're doing that you need the preview active, but not the encoding output? Maybe if I understood what you're trying to do, I can offer an alternate solution for you.

Very sensible for OBS to not incorporate a higher performance preview option to just get, well, a higher performance preview I guess. I would like to say that my issue isnt with you or Fenrir, and I apologize if I am coming off rude to you. I am agitate at the program itself and text is not a very easy way to show emotion, so again, I apologize if I seem rude to either of you.
 

BK-Morpheus

Active Member
You need to ask Microsoft to implement a priority feature for GPU load, that's nothing the OBS developers can implement.
Right now, games have priority, so it's up to the user to make sure that there is enough GPU power left for programs like OBS.

It's similar to the multi-monitor mixed refreshrate issue that you might run into, when you game on a 144Hz panel, while using a 60Hz monitor to display a preview, a video or anything that uses hardware-acceleration.
It's annoying, but you can only work around that or wait for Microsoft to change their system (the mixed refreshrate+hardware acceleration issue is present for years now).
 

Fenrir

Forum Admin
great question honestly. I have zero idea how it works. I know classic is dead and all but it just blows my mind that the difference in performance with that single checkbox in classic wasnt somehow implemented into studio. its just super disappointing.

You're still misunderstanding here. The OBS preview is ALREADY not encoding when it's being shown. That checkbox in Classic would do absolutely nothing to help your situation, as even in Classic you'd still be rendering the scene output with the preview active, which is what the issue is. There is nothing else we can do to improve performance here. If the GPU is being maxed out by your game then OBS will suffer. There is no option, in Classic or otherwise, to render the scene output without using GPU resources.

I have an alternate pc for streaming. I use a capture card for this but I cannot pass through my capture card as most do for visual to the streaming pc so what I actually do is run my capture card as a 3rd monitor and then project the preview onto that (capture card) monitor.

Thanks, this is what I was actually afraid of, as there's not really a good workaround (outside getting something like the Elgato 4K60 pro which allows 144hz pass-through).

I would say "unwilling" to spend a ton more money and still sacrifice framerate isnt the proper term for the situation.

That's just one option. I understand that this is frustrating for you, but the issue here isn't on the OBS side. I'm not sure what your PC specs are, but it sounds like that it's struggling to keep up at keeping a constant frame-rate already, which means that it's likely maxed out. You can either cap FPS at something your PC can hold stable, turn settings down in the game to ease up load so that you can reach the fram-erate limit that you're comfortable with, or as mentioned, purchase a new GPU that can handle the game you're trying to play at the settings you're trying to use. It's a pick your poison situation, yes, but that's what happens when the hardware itself is not capable of keeping up.
 

Riio

New Member
You're still misunderstanding here. The OBS preview is ALREADY not encoding when it's being shown. That checkbox in Classic would do absolutely nothing to help your situation, as even in Classic you'd still be rendering the scene output with the preview active, which is what the issue is. There is nothing else we can do to improve performance here. If the GPU is being maxed out by your game then OBS will suffer. There is no option, in Classic or otherwise, to render the scene output without using GPU resources.



Thanks, this is what I was actually afraid of, as there's not really a good workaround (outside getting something like the Elgato 4K60 pro which allows 144hz pass-through).



That's just one option. I understand that this is frustrating for you, but the issue here isn't on the OBS side. I'm not sure what your PC specs are, but it sounds like that it's struggling to keep up at keeping a constant frame-rate already, which means that it's likely maxed out. You can either cap FPS at something your PC can hold stable, turn settings down in the game to ease up load so that you can reach the fram-erate limit that you're comfortable with, or as mentioned, purchase a new GPU that can handle the game you're trying to play at the settings you're trying to use. It's a pick your poison situation, yes, but that's what happens when the hardware itself is not capable of keeping up.
I know people with worse PCs than mine able to stream just fine. i7-6700k with a 1060 6gb isn’t enough? Lol
 

Fenrir

Forum Admin
Do they have 144hz monitors and are they playing games that can't manage to hold 144fps steady?
 
Top