Question / Help Need some opinion here!

Unfortunately the logfile you uploaded does not contain any recording/streaming attempt output...

Can you do a few minutes' worth of recording/streaming (Doing what you would normally do in-game) then stop the recording/streaming session, then upload a current logfile please so I or someone else can further assist in troubleshooting:
https://obsproject.com/forum/threads/please-post-a-log-with-your-issue-heres-how.23074/

In your logfile I noticed you have Windows GameDVR enabled. This may be a cause of the performance issue as even when you are not using it, just having it enabled in Windows settings it will always hook into the game process and commit resources (Similar to what OBS does when OBS is open, though more aggressively as it also buffers for replay recording)

You can lower the resolution of your webcam to 1280x720 to assist in improving of performance of your stream output.

If you don't already:
Limiting your frame rate in-game will help a lot in getting the best quality out of your hardware in regards to recording/streaming. I recommend using MSI AfterBurner or EVGA Precision to cap your fps to your monitor refresh rate, or 1-3 frames higher than your monitor refresh rate will generally resolve the issue of screen tearing. Try to avoid V-Sync as it can induce input lag.

Having a more stable/consistent frame rate will be a lot better for game play than having a fluctuating frame rate as you won't have the dips in fps. That improves game play more than anything else with a few exceptions being game engines that tie input latency to frame rate (Source engine - Counter Strike, etc)
 
You have some rendering lag issues present in your logfile:
19:36:45.268: Output 'adv_stream': Total frames output: 87098
19:36:45.268: Output 'adv_stream': Total drawn frames: 69781 (87274 attempted)
19:36:45.268: Output 'adv_stream': Number of lagged frames due to rendering lag/stalls: 17493 (20.0%)

Your GPU just can't keep up with the demand required of it from playing the game and streaming at the same time.

In my initial reply I outlined disabling Windows GameDVR, lowering the resolution of your webcam output and limiting your fps value in-game to assist. Can you try those and do another 3-5 minute stream attempt, stop the stream then upload the logfile please so I or someone else can further assist in troubleshooting.
 
Unfortunately the logfile you uploaded does not contain any recording/streaming attempt output...

Can you do a few minutes' worth of recording/streaming (Doing what you would normally do in-game) then stop the recording/streaming session, then upload a current logfile please so I or someone else can further assist in troubleshooting:

Quick 5 step process to disable Windows Game DVR:
1) Open Start Menu
2) Open Xbox App. You can also find it at the bottom of all apps
3) Open Settings in Xbox App
4) Click Game DVR
5) Click the Slider to Disable Game DVR.

The below error seemingly resolved itself, though not sure if it is evident of something underlying:
DShow: Failed to find crossbar (0x80004005): Unspecified error
This is in relation to your webcam drivers not passing onto OBS the configuration for your webcam crossbar properties (I believe, not entirely sure though - Also not sure if your webcam has crossbar functionality)
Is your webcam working correctly in OBS? Do you see the image for your webcam source?
 
I did all the steps, disabled game DVR, 720p to the webcam ( it is working well, without problems) , locked at 146fps (my monitor is 144) as I disabled v-sync. I streamed for a while and posted its logfile.
 
The logfile you most recently uploaded (OBS logfile 5th of March 2018) states you have not disabled Windows GameDVR:
12:24:30.431: Game DVR: On

I did notice the webcam resolution change, which is where the error:
DShow: Failed to find crossbar (0x80004005): Unspecified error
Cropped up, not sure why it came up in the first place and not sure as to why it managed to resolve itself as well Possible reasons from what I can guess:
- Maybe webcam drivers need to be updated
- There is an underlying fault in the webcam driver that deals with crossbar properties being sent when requested
- Maybe OBS has an underlying issue with the requesting of the crossbar properties for webcams?
I don't have knowledge of code other than basic lua scripting (Very basic) Certainly not enough knowledge I imagine for the code required to interact with drivers. That is one for the dev to look at if there is an issue underlying in OBS.

Your most recent logfile is incomplete. It does not display any results of a recording/streaming attempt.
The logfile you uploaded prior (OBS logfile 4th of March 2018) to that does include a recording/streaming attempt, to which you had rendering lag:
19:36:45.268: Output 'adv_stream': Total frames output: 87098
19:36:45.268: Output 'adv_stream': Total drawn frames: 69781 (87274 attempted)
19:36:45.268: Output 'adv_stream': Number of lagged frames due to rendering lag/stalls: 17493 (20.0%)

I think for your CPU & GPU combination, you will have to run at lowest in-game settings to try and maintain 144fps. Even then I would say you will have fps drops below 144fps as a result of rendering the map textures.
I don't think you will be able to get rid of all the rendering lag so some areas of your stream will stutter/hitch as a result, at the frame rate.
Try lowering your fps in increments, go from:
144, 120, 100, 85, 75, 60.
Look for the above mentioned rendering lag/stalls line in your logfile after you have stopped a streaming attempt. At some point they will disappear.
At that point if you like, you can try to raise your in-game settings for better quality. Test each game setting individually and do a stream test for a few minutes' to make sure there is no return of rendering lag.

Best way to do that is to run your game without a frame limiter (Not recording/streaming either) and individually test each setting to find the sweet spot, whilst running a pre-defined 'benchmark' route where you have three locations:
First is a starting location:
- This can be anywhere you want, any type of scenery you want I generally choose the spawn-in location unless it is too far from the second location to get to within 1-2 minutes' time of running)
Second is a heaviest on fps location:
- This will be in the center of your benchmark route, It requires to be far enough away from the starting location that it has to be rendered whilst running to it (This location will generally have lots of debris/foliage/smoke/particle effects, shadows, lighting, etc)
Third location is a turn-around location:
- This will be the mid-point of your benchmark in regards to time duration of the route:
- The only requirement is it has to be far enough from the second location in order for it to be re-rendered again when you turn around (I generally choose a high vantage point for the turn-around location, so when you turn around the game has to render everything across the area you ran through)

That way you have a good consistency in regards to fps values, as well as a defined area for testing the effects of the settings in regards to quality of graphics changes.
It is always better if you can do the testing offline or on an empty map.

As a general rule of thumb you want roughly 10-15% higher frames than what you stream/record at, so you have headroom for the reduction in fps recording or streaming causes in heavy fps areas. I would look for around ~75-80fps minimum when testing settings as the game is multiplayer.

However, that is for 60fps recording/streaming and 60fps limit in-game. Because you are running at a higher frame rate in-game, those percentages will be higher.
I think for 75fps you want probably 85-95 fps.
For 100fps, probably 120-140fps.
For 120fps, probably 160-180fps.
For 144fps, probably 200+ minimum.
Those above are estimates as I just cap my fps in-game to 60 and record at 60, making sure my minimum fps in-game is never below 60fps at any time, if possible (Outside of initial loading, etc)
I do not know how exponential the increase in load and therefore the increase in required fps above what your set fps would need to be.

The good news is you can increase your bitrate to improve quality output of the stream, as you have no bandwidth frame drops. An example of the line is below:
Output 'simple_stream': Number of dropped frames due to insufficient bandwidth/connection stalls:
You will find it with the rendering and encoding output lines, towards the bottom of the logfile.

The best way to find the limit of your bandwidth is to:
- Increase your bitrate by 500 and then do a 3-5 minutes worth of streaming, stop the stream then check the logfile for the above output line.
- Once you have that line display in your logfile, then lower your bitrate by 500 and test for double the amount of time to see if that output line is displayed in your logfile.
- If it is present then lower your bitrate again, this time by 250 and re-test.
- If it is not present, then you have found your maximum stable bitrate.

I hope this helps!
 
Back
Top