Question / Help High encoding? What's the problem though..? Help!

justice5150

New Member
I have an i5 7600k turbo-ed to 4.2 ghz and when I try and stream using x246 with "CBR", "Main", "Very Fast", "3500-3000 bitrate" (12k upload constant) with "Bicubic" and "1280x720p" output "30fps", I get "HIGH ENCODING!" almost constantly. Doesn't matter what game I play, even when I try left 4 dead, Minecraft or ROBLOX (which I get 300+ fps with my zotac 1060 3gb very easily)

I don't understand why its happening, for my CPU usage remains low when I use these bare minimum settings, how ever I STILL get an encoding error message and my viewers are constantly seeing the lag impact.

Can anyone point me in some sort of direction? This PC is my first build, I've spent over 250 hours in the last month alone trying to get the thing running properly. I have streamed on and off for 5 years so I am very familiar with everything, which is why I'm so frustrated with lack of control or understanding over this situation.

The first log is from today when I tried streaming PUBG. Now, PUBG itself is very CPU intensive which didn't mix well with me trying to stream using my CPU. But like I said, the issue happens spanning many already optimized and very easy to run games like l4d.
 

Attachments

  • 2018-01-28 11-10-30.txt
    7 KB · Views: 13
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)

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.
 

justice5150

New Member
Thank you so much for responding. I have disabled GameDVR now, and hopefully the log I upload will work. I am getting the logs directly from OBS -> Help -> Log Files. This is a recording I just did utilizing x264, CBR, 3500 bitrate, VeryFast preset, Profile: Main, 30fps downscaled from 1920 x 1080 to 720p. My CPU usage was going from 70-90% average and up to 100% occasionally, which I imagine is normal.
https://gist.github.com/891fbab28eb7941fa35bb025adbd96d3 hopefully this link works.

I decided to give nvehc a go after disabling GameDVR. Using CBR, Preset: High Quality, Profile: Main, Level: Auto, Use Two-Pass Encoding enabled. So far after disabling GameDVR this seems to be the best route, I wasn't getting any encoding errors and the video looked pretty decent. Here is the log file: https://gist.github.com/dac5bd1e8111ae5541adcc926da7f4ea

Also I use msi afterburner almost religiously, how ever I haven't found the option yet to cap my frame rate at 60-63 so I go with in-game v-sync to help ease loads.
 

justice5150

New Member
So after running a stream for an hour and a half to two hours, I am STILL running into issues. My 1060 3gb sits at 70 degrees celcius (never going above), it cuts me off at 45-50 fps in game, and the stream gets ran at 30 fps, very occasionally going down to 15 or below obviously impacting the viewers. Here is the recent log: https://gist.github.com/7c7b75109c597056a1fa1bf0ebfaddbd

Stream settings: Nvenc h.264 / bitrate 3500 / Preset High Quality / Profile Main / Level Auto / Use Two Pass-Encoding enabled / output to 720p from 1080p

I don't get how my card can get up to 80 degrees tops, but completely bottlenecks (it seems like it downclocks) at 70. I truly don't know how to fix, after 8 hours of tinkering today, I give up.

Thanks a bunch for reading if you did.
 
Your logfiles show you are getting some rendering lag still, though you are mostly there.

Being a 4 core CPU, your CPU usage sounds perfectly fine, my old i5 2500 used to be pushing 90% playing Battlefield 4 which is pretty good in regards to being optimized.

I think if you tweak the in-game settings a tad, slightly lowering one or two of the heavier GPU bound settings you should be able to remove the remaining render lag issues (I think the encoder lag issues are caused by the render lag - hitching/dropping frame rate to try and catch up to the workload, will go as well)
You could try disabling 2-pass mode, it may degrade the output quality slightly in some scenes (Heavy explosions, smoke/fog, lots of grass, etc) It will slightly reduce GPU encoder load though.

As for your fps issues in-game, can you do a streaming test with another game to compare and what is your fps like normally in-game without streaming?

The bundled software Riva Tuner Statistics Server (RTSS) that comes with the installer of MSI AfterBurner controls via application designation fps hard limits, see the example pic attached to post:

nVidia rated specs are 60 degrees before fans start spinning, 83 degrees before thermal throttling (Clock speed reduces) 94 degrees before shutting down.
If your card is throttling below 83 degrees, then maybe a setting in nVidia Control Panel/MSI AfterBurner?

My card being a R9 290X Tri-X OC 4GB hits 80+ all the time in very GPU intensive games, pushes to 85+ (ReShade/ENB induced) or on hot days (38+ degrees) Has a safe limit of 95, max limit of 105 degrees, different architecture.
 

Attachments

  • RTSS pic.PNG
    RTSS pic.PNG
    88.8 KB · Views: 15

justice5150

New Member
I've capped my framerate using Rtss, checked around for settings that would make my GPU underclock below 83 degrees (to no avail, so I just turned my fans up a lot when the GPU is from 50-70 degrees and now I have an average of 62 degrees instead of the old 70-73)

Also my cpu is overclocked now to 5.0 ghz, not 4.2 as previously stated.

I went back and did another recording of PUBG with Two-Pass turned off and the preset set to High Performance and it looks great. I also lowered some GPU intensive settings and no more lag spikes on OBS or in game from what I saw at least. Thanks a bunch for the tips!

I recorded a video of h1z1 just survive, I turned down some of the settings and am getting a pretty constant 60-63 fps, 45-60 fps in towns (per usual for games like this obviously) but I notice even when I drop to 45 fps in game, my obs stream stays at least 30 fps. Last time, if I got any sort of spike under 60 fps my obs stream would fall to 15 fps. Maybe this is the two pass encoding that did that, or when I had my preset set to "High Quality" instead of "High Performance" Here is the log for h1z1 recording in case there can be any improvement (I had to use window capture for the game bcuz game capture just won't work with Just Survive right now for some odd reason): https://gist.github.com/542ebb156dd50c30ca4ab813836867a6

I remembered I have Minecraft lol so I recorded a bit of that. I noticed with my framerate capped to 63 on a game like Minecraft where I get 100-120+ fps with shaders/HD texture packs, it will annihilate my FPS. Turning off the frame cap / v-sync options made everything smooth and much better, the recording is very crisp. https://gist.github.com/99a6b428d42f37df55f29035d4af1cb4

You are awesome for putting in the time to help me, it is much, much appreciated! Without your help i'd still be stranded at sea using trial and error in attempt to fix things. So far everything seems to be working 100% better than yesterday, hopefully this post can help some further down the road.
 
Last edited:

justice5150

New Member
So bad news... Started up my stream and I'm STILL experiencing stuttering issues even on BARE minimum specs for NVENC. Here is the log I guess. At this point, I straight up give up. I even lowered every setting in game to very low (besdies the ones that don't impact GPU) to no avail. The game tells me I get 63 fps average, yet the game feels like 45 fps tops. Truly lost at this point https://gist.github.com/c693dcb6d8a650d6cc1f064fd4a364d3
 
Everything is trial and error, we are all human and are born to make mistakes. It is learning and adapting from the mistakes we make that carries us forward.

Don't get disheartened at all, there is clear progress from your first uploaded logfile where you had ~20%+ dropped frames due to render lag. You are no longer getting any encoding lag issues and the render lag resulting in dropped frames is now consistently below 1% which is a great thing for 10k+ frames rendered, very close to reigning it in now.

In OBS Video settings, try the below:
Base Resolution: 1280x720
Output Resolution: 1280x720
Downscale Filter: Bicubic
FPS Value: 30

Maybe reducing the base captured resolution to your output resolution will ease the load a slight amount.

When you say it feels like 45fps instead of the stated 63 capped fps, is that only when you are streaming? Maybe a 4-core thing as with my old i5 2500 I used to get that feeling as well when recording Battlefield 4.
 
Top