Question / Help I have good pc but still obs recording turn out with freezes and lag

mindhumble

New Member
I have a laptop with i7 processor 8GB ram, i do recording live online games and also sometimes stream. i also edit recorded games, and want to use obs to record them.However, i have a problem that many of my recordings (specifically the live games) seem choppy and sometimes even freeze for extended periods of time. Also i notice when playing the video of the recording (i record in mkv format, not sure if that is relevant) in VLC player the timer seems to be erratic. it starts the first few seconds with a --- instead of the video time marker, then a few seconds later it may jump to 16 secs then stay at 16 for a few seconds then jump to 25 for example. the game works perfectly, its just the recording has these problems. i tried using other media players but it seems to be the same problem. i have uploaded dxdiag and my last log file for obs. please help and thank you in advance!!
 

Attachments

  • DxDiag.txt
    93.2 KB · Views: 172
  • 2018-06-26 09-24-12.txt
    15.2 KB · Views: 204

Harold

Active Member
09:24:13.587: Physical Cores: 2, Logical Cores: 4
It's still a dual-core mobile i7.

10:29:15.231: Output 'simple_file_output': Number of lagged frames due to rendering lag/stalls: 2759 (2.5%)
This one is you overloading your video card.

10:29:15.517: Video stopped, number of skipped frames due to encoding lag: 30761/111067 (27.7%)
And this one is you overloading the intel GPU.

Ideally you should be using x264 for streaming and quicksync for recording and not the other way around like you currently have.
 

koala

Active Member
The log exhibits about 2.5% rendering lag, which means about 2.5% of all frames are lost within the GPU. At 30 fps, this is almost one stutter every second.
It also exhibits 27% lost frames due to encoding lag, which means your CPU is not powerful enough to encode one frame every 33ms, which is required to get a frame rate of 30 fps. This means extremely choppy video down to slideshow.
Use Quicksync H.264 encoder for both - stream and recording. This would relieve your CPU from encoding.
And limit the frame rate of your game to 60 in case you run it without limit - this helps not overloading the GPU.
 

Harold

Active Member
Use Quicksync H.264 encoder for both - stream and recording. This would relieve your CPU from encoding.
The original poster is already using quicksync for streaming and is already overloading the intel GPU hardware JUST with the streaming. Adding recording to quicksync in addition to streaming will make BOTH perform terribly unless they choose the quality and encoder for recording of "same as stream"
 

mindhumble

New Member
thanks for your replies, i tried harold's idea and here are the results. i played one game recording only, and then another recording and streaming simultaneously. it seems to have solved the problem when recording only, but when i stream as well, then it lags.
i attached 2 new log files (im not sure which ne to use so i put both)

just a general question, should i use my amd card for obs or just the basic intel card?
also, am i saving the file in the correct format?
thanks again!
 

Attachments

  • 2018-06-26 12-51-30.txt
    10.5 KB · Views: 76
  • 2018-06-26 13-24-57.txt
    17.3 KB · Views: 42

Harold

Active Member
It would appear to be the case that your system can really only do one encoder at a time, either streaming or recording.
You definitely should have OBS running on the radeon graphics.

And saving to mkv is one of the two recommended formats for recording.
 

mindhumble

New Member
thanks for the reply. i guess i won't be streaming any more then.

just to help me understand, you say obs should be using the dedicated amd graphics card, but i thought that the point of that card was to help specifically with games which use graphics, whereas (to my limited understanding) obs simply decodes data and saves it, but doesn't actually display complex graphics on screen as a game does.
i will try using the amd GPU for obs and the game, and see if that makes a difference.
do you understand what is happening when the timer on the video lags as i mentioned in another post? is it something to do with the encodin being messed up?
oh and one other question, sometimes when i finish the recording/stream and press stop recording/stop streaming, it says stopping recording for a long time, sometimes over a minute. any idea what that is about?
thank you very much for your patience :)
 

Harold

Active Member
whereas (to my limited understanding) obs simply decodes data and saves it, but doesn't actually display complex graphics on screen as a game does.
This is incorrect. OBS does scene composition on the GPU, where it's basically free processing-time wise. Additionally, some parts of color space conversion and video scaling are also done on the GPU.

The long delay in stopping recording/streaming is partly to do with the overloads you're encountering.
 

mindhumble

New Member
Great! thanks so much for your time. makes alot of sense. i will do a test with the new settings (including obs on te GPU) and i will report back to see if there are any problems.
 

mindhumble

New Member
the recording seems much smoother now. only VERY minor point, is when i skip to a point on the timeline in the video there is a heavy grey hue on the screen until the video picture is rendered. i will try to do the recording while streaming soon and if there is an issue i will report back. i swapped round the x264 for streaming and quicksync for recording, and set the amd card to work for obs, and it made a world of difference.

just a quick unrelated question since im here. how do i configure to let the viewers see my internet browser without letting them see the whole screen. i tried using "browser" in the window capture options, but it is cumbersome to use the obs browser, and prefer just to use my firefox browser. thans for all your help guys!
 

carlmmii

Active Member
The grey hue effect is just an artifact of the seeking action -- it's not actually part of the video, just the skip you forced on your video player. It doesn't have enough time to seek back far enough to pull a keyframe to start from, so it gives up and starts straight with I/b-frames off of a grey canvas... until it gets the next keyframe and everything is normal again. You can probably fix this by setting your keyframe interval to the recommended 2 seconds.

In order to capture firefox, you need to disable hardware acceleration.
 

mindhumble

New Member
how do i set the keyframe interval to 2 seconds?
how would i disable hardware acceleration and would disabling have a negative effect in some other way on gameplay or the quality of the recording?
sorry for the noob questions but its quite overwhelming for a simple gamer lol.
 

carlmmii

Active Member
Under the Output section, make sure you're using the Advanced options. Keyframe Interval should be listed under your bitrate.

Hardware acceleration in firefox is located in the options under General, then scrolling down to the Performance area. This is only going to affect the performance of firefox -- it does *not* affect OBS in any way, or any other program for that matter. The only downside is now firefox is going to be using slightly more cpu than before, since it can't use the gpu as a quick render path (this is most noticeable if you're watching videos).
 
Top