stuttering sync problems with new nvidia drivers.

Bar_be_que

New Member
So I should have done a log file when the problem happen however i was on driver 572.70 and i was getting this weird lag issue with preview in obs studio latestest build 31.0.3. I will upload file. I then starting rolling back driver by driver and am now on 551. 76. Hardware is intel i7 10700 k and a nvidia 1060 6gb graphics card. This can be replicated on my other rig as well. amd 7900x and 4070 ti super. but my streaming rig is the 10700k. Any thoughts? I uploaded current log when it was doing to the obs studio discord forums and log showed now errors. Figured i would post in case anyone is having issues it's much better on 551.76 and since obs says you may have to run atleast that version for obs i have tested lower. So putting this on the radar. Thanks all. Oh so can i upload a MKV file? Or how could i post a clip. so this test shows all grey letters when everything is in sync. You can try it all for your sell just google vertical sync test. but if i could do the video it would be easier to show. when it shows the colors its not in sync and changing to a older driver fixes the issues. I don't feel it obs related so much but the stutters are def messing with the encoder. So if anyone is having issues like this maybe revert back. Just though i would put in on the radar. Thanks all.
 

Attachments

  • cap 1.PNG
    cap 1.PNG
    1,012.6 KB · Views: 15
My guess is that most of us hide OBS from itself. Look for File > Settings > Hide OBS from Screen Capture; I unchecked that selection, which makes it run like the older OBS builds and my performance increased drastically. Most people will not do this and assume that it should be fine, but once I turned this setting back on it was a nightmare to record with.

With this off (by default), I can even run OBS under NVIDIA's Low Latency conditions now. There were some jitter, but not like it was when I hid OBS from itself. I attached my Profiler Results from two logs to compare.


This is a log with OBS Hiding from the Capture = True

07:44:01.046: == Profiler Results =============================

07:44:01.046: run_program_init: 1024.36 ms

07:44:01.046: ┣OBSApp::AppInit: 15.73 ms

07:44:01.046: ┃ ┗OBSApp::InitLocale: 0.865 ms

07:44:01.046: ┗OBSApp::OBSInit: 990.083 ms

07:44:01.046: ┣obs_startup: 1.909 ms

07:44:01.046: ┗OBSBasic::OBSInit: 844.333 ms

07:44:01.046: ┣OBSBasic::InitBasicConfig: 11.466 ms

07:44:01.046: ┣OBSBasic::ResetAudio: 0.159 ms

07:44:01.046: ┣OBSBasic::ResetVideo: 140.82 ms

07:44:01.046: ┃ ┗obs_init_graphics: 139.631 ms

07:44:01.046: ┃ ┗shader compilation: 43.194 ms

07:44:01.046: ┣OBSBasic::InitOBSCallbacks: 0.006 ms

07:44:01.046: ┣OBSBasic::InitHotkeys: 0.02 ms

07:44:01.046: ┣obs_load_all_modules2: 528.844 ms

07:44:01.046: ┃ ┣obs_init_module(aja-output-ui.dll): 0.108 ms

07:44:01.046: ┃ ┣obs_init_module(aja.dll): 0.095 ms

07:44:01.046: ┃ ┣obs_init_module(coreaudio-encoder.dll): 5.643 ms

07:44:01.046: ┃ ┣obs_init_module(decklink-captions.dll): 0 ms

07:44:01.047: ┃ ┣obs_init_module(decklink-output-ui.dll): 0 ms

07:44:01.047: ┃ ┣obs_init_module(decklink.dll): 1.702 ms

07:44:01.047: ┃ ┣obs_init_module(frontend-tools.dll): 3.681 ms

07:44:01.047: ┃ ┣obs_init_module(image-source.dll): 0.005 ms

07:44:01.047: ┃ ┣obs_init_module(nv-filters.dll): 0.779 ms

07:44:01.047: ┃ ┣obs_init_module(obs-browser.dll): 0.446 ms

07:44:01.047: ┃ ┣obs_init_module(obs-ffmpeg.dll): 0.514 ms

07:44:01.047: ┃ ┣obs_init_module(obs-filters.dll): 0.013 ms

07:44:01.047: ┃ ┣obs_init_module(obs-nvenc.dll): 434.457 ms

07:44:01.047: ┃ ┃ ┗nvenc_check: 434.448 ms

07:44:01.047: ┃ ┣obs_init_module(obs-outputs.dll): 0.005 ms

07:44:01.047: ┃ ┣obs_init_module(obs-qsv11.dll): 46.429 ms

07:44:01.047: ┃ ┣obs_init_module(obs-text.dll): 0.176 ms

07:44:01.047: ┃ ┣obs_init_module(obs-transitions.dll): 0.004 ms

07:44:01.047: ┃ ┣obs_init_module(obs-vst.dll): 0.003 ms

07:44:01.047: ┃ ┣obs_init_module(obs-x264.dll): 0.001 ms

07:44:01.047: ┃ ┣obs_init_module(rtmp-services.dll): 0.718 ms

07:44:01.047: ┃ ┣obs_init_module(text-freetype2.dll): 0.049 ms

07:44:01.047: ┃ ┣obs_init_module(virtual-cam-filter.dll): 0.012 ms

07:44:01.047: ┃ ┣obs_init_module(vlc-video.dll): 1.095 ms

07:44:01.047: ┃ ┣obs_init_module(win-capture.dll): 1.65 ms

07:44:01.047: ┃ ┣obs_init_module(win-dshow.dll): 0.596 ms

07:44:01.047: ┃ ┣obs_init_module(win-wasapi.dll): 1.161 ms

07:44:01.047: ┃ ┣obs_init_module(xObsAsyncImageSource.dll): 0.04 ms

07:44:01.047: ┃ ┗reset_win32_symbol_paths: 0.152 ms

07:44:01.047: ┣OBSBasic::InitService: 1.042 ms

07:44:01.047: ┣OBSBasic::ResetOutputs: 0.253 ms

07:44:01.047: ┣OBSBasic::CreateHotkeys: 0.026 ms

07:44:01.047: ┣OBSBasic::InitPrimitives: 0.081 ms

07:44:01.047: ┗OBSBasic::Load: 39.287 ms

07:44:01.047: obs_hotkey_thread(25 ms): min=0.002 ms, median=0.004 ms, max=0.792 ms, 99th percentile=0.08 ms, 100% below 25 ms

07:44:01.047: audio_thread(Audio): min=0.004 ms, median=0.012 ms, max=18.727 ms, 99th percentile=0.091 ms

07:44:01.047: obs_graphics_thread(16.6667 ms): min=0.045 ms, median=0.255 ms, max=76.879 ms, 99th percentile=0.766 ms, 99.9178% below 16.667 ms

07:44:01.047: ┣tick_sources: min=0 ms, median=0.008 ms, max=58.019 ms, 99th percentile=0.046 ms

07:44:01.047: ┣output_frame: min=0.042 ms, median=0.101 ms, max=18.854 ms, 99th percentile=0.264 ms

07:44:01.047: ┃ ┗gs_context(video->graphics): min=0.041 ms, median=0.101 ms, max=18.85 ms, 99th percentile=0.264 ms

07:44:01.047: ┃ ┣render_video: min=0.002 ms, median=0.03 ms, max=1.666 ms, 99th percentile=0.084 ms

07:44:01.047: ┃ ┃ ┗render_main_texture: min=0.001 ms, median=0.029 ms, max=1.656 ms, 99th percentile=0.075 ms

07:44:01.047: ┃ ┗gs_flush: min=0.024 ms, median=0.065 ms, max=0.392 ms, 99th percentile=0.216 ms

07:44:01.047: ┗render_displays: min=0 ms, median=0 ms, max=0.003 ms, 99th percentile=0.001 ms

07:44:01.047: OBSBasicSettings::LoadThemeList: 0.042 ms

07:44:01.047: =================================================

07:44:01.047: == Profiler Time Between Calls ==================

07:44:01.047: obs_hotkey_thread(25 ms): min=24.93 ms, median=25.427 ms, max=26.18 ms, 55.5006% within ±2% of 25 ms (0% lower, 44.4994% higher)

07:44:01.047: obs_graphics_thread(16.6667 ms): min=6.435 ms, median=16.667 ms, max=76.897 ms, 99.8354% within ±2% of 16.667 ms (0.0823045% lower, 0.0823045% higher)

07:44:01.047: =================================================

07:44:01.049: Number of memory leaks: 0




This is a log with OBS Hiding from the Capture = False

07:43:37.809: == Profiler Results =============================

07:43:37.809: run_program_init: 4071.96 ms

07:43:37.809: ┣OBSApp::AppInit: 59.083 ms

07:43:37.809: ┃ ┗OBSApp::InitLocale: 8.367 ms

07:43:37.809: ┗OBSApp::OBSInit: 3808.99 ms

07:43:37.809: ┣obs_startup: 2.416 ms

07:43:37.809: ┗OBSBasic::OBSInit: 3610.26 ms

07:43:37.809: ┣OBSBasic::InitBasicConfig: 30.797 ms

07:43:37.809: ┣OBSBasic::ResetAudio: 0.19 ms

07:43:37.809: ┣OBSBasic::ResetVideo: 568.578 ms

07:43:37.809: ┃ ┗obs_init_graphics: 567.363 ms

07:43:37.809: ┃ ┗shader compilation: 433.494 ms

07:43:37.809: ┣OBSBasic::InitOBSCallbacks: 0.006 ms

07:43:37.809: ┣OBSBasic::InitHotkeys: 0.018 ms

07:43:37.809: ┣obs_load_all_modules2: 2641.89 ms

07:43:37.809: ┃ ┣obs_init_module(aja-output-ui.dll): 0.136 ms

07:43:37.809: ┃ ┣obs_init_module(aja.dll): 0.129 ms

07:43:37.809: ┃ ┣obs_init_module(coreaudio-encoder.dll): 14.504 ms

07:43:37.809: ┃ ┣obs_init_module(decklink-captions.dll): 0 ms

07:43:37.809: ┃ ┣obs_init_module(decklink-output-ui.dll): 0 ms

07:43:37.809: ┃ ┣obs_init_module(decklink.dll): 2.387 ms

07:43:37.809: ┃ ┣obs_init_module(frontend-tools.dll): 3.642 ms

07:43:37.809: ┃ ┣obs_init_module(image-source.dll): 0.005 ms

07:43:37.809: ┃ ┣obs_init_module(nv-filters.dll): 0.88 ms

07:43:37.809: ┃ ┣obs_init_module(obs-browser.dll): 0.479 ms

07:43:37.809: ┃ ┣obs_init_module(obs-ffmpeg.dll): 0.552 ms

07:43:37.809: ┃ ┣obs_init_module(obs-filters.dll): 0.031 ms

07:43:37.809: ┃ ┣obs_init_module(obs-nvenc.dll): 457.562 ms

07:43:37.809: ┃ ┃ ┗nvenc_check: 457.556 ms

07:43:37.809: ┃ ┣obs_init_module(obs-outputs.dll): 0.007 ms

07:43:37.809: ┃ ┣obs_init_module(obs-qsv11.dll): 70.447 ms

07:43:37.809: ┃ ┣obs_init_module(obs-text.dll): 0.225 ms

07:43:37.809: ┃ ┣obs_init_module(obs-transitions.dll): 0.006 ms

07:43:37.809: ┃ ┣obs_init_module(obs-vst.dll): 0.005 ms

07:43:37.809: ┃ ┣obs_init_module(obs-x264.dll): 0.001 ms

07:43:37.809: ┃ ┣obs_init_module(rtmp-services.dll): 4.563 ms

07:43:37.809: ┃ ┣obs_init_module(text-freetype2.dll): 0.066 ms

07:43:37.809: ┃ ┣obs_init_module(virtual-cam-filter.dll): 0.027 ms

07:43:37.809: ┃ ┣obs_init_module(vlc-video.dll): 66.275 ms

07:43:37.809: ┃ ┣obs_init_module(win-capture.dll): 48.17 ms

07:43:37.809: ┃ ┣obs_init_module(win-dshow.dll): 0.693 ms

07:43:37.809: ┃ ┣obs_init_module(win-wasapi.dll): 1.136 ms

07:43:37.809: ┃ ┣obs_init_module(xObsAsyncImageSource.dll): 0.059 ms

07:43:37.809: ┃ ┗reset_win32_symbol_paths: 0.187 ms

07:43:37.809: ┣OBSBasic::InitService: 9.063 ms

07:43:37.809: ┣OBSBasic::ResetOutputs: 6.924 ms

07:43:37.809: ┣OBSBasic::CreateHotkeys: 0.031 ms

07:43:37.809: ┣OBSBasic::InitPrimitives: 0.082 ms

07:43:37.809: ┗OBSBasic::Load: 159.465 ms

07:43:37.809: obs_hotkey_thread(25 ms): min=0.001 ms, median=0.004 ms, max=3.782 ms, 99th percentile=0.102 ms, 100% below 25 ms

07:43:37.809: audio_thread(Audio): min=0.004 ms, median=0.012 ms, max=0.406 ms, 99th percentile=0.076 ms

07:43:37.809: obs_graphics_thread(16.6667 ms): min=0.035 ms, median=0.151 ms, max=92.09 ms, 99th percentile=0.595 ms, 99.9934% below 16.667 ms

07:43:37.809: ┣tick_sources: min=0 ms, median=0.007 ms, max=86.893 ms, 99th percentile=0.045 ms

07:43:37.809: ┣output_frame: min=0.033 ms, median=0.099 ms, max=0.808 ms, 99th percentile=0.236 ms

07:43:37.809: ┃ ┗gs_context(video->graphics): min=0.032 ms, median=0.098 ms, max=0.807 ms, 99th percentile=0.235 ms

07:43:37.809: ┃ ┣render_video: min=0.002 ms, median=0.027 ms, max=0.645 ms, 99th percentile=0.059 ms

07:43:37.809: ┃ ┃ ┗render_main_texture: min=0.001 ms, median=0.026 ms, max=0.643 ms, 99th percentile=0.057 ms

07:43:37.809: ┃ ┗gs_flush: min=0.027 ms, median=0.069 ms, max=0.422 ms, 99th percentile=0.206 ms

07:43:37.809: ┗render_displays: min=0 ms, median=0 ms, max=0.013 ms, 99th percentile=0.001 ms

07:43:37.809: OBSBasicSettings::LoadThemeList: min=0.036 ms, median=0.036 ms, max=0.041 ms, 99th percentile=0.041 ms

07:43:37.809: =================================================

07:43:37.809: == Profiler Time Between Calls ==================

07:43:37.809: obs_hotkey_thread(25 ms): min=24.755 ms, median=25.366 ms, max=28.964 ms, 60.281% within ±2% of 25 ms (0% lower, 39.719% higher)

07:43:37.809: obs_graphics_thread(16.6667 ms): min=6.264 ms, median=16.667 ms, max=92.095 ms, 99.99% within ±2% of 16.667 ms (0.00331994% lower, 0.00663989% higher)

07:43:37.809: =================================================

07:43:37.813: Number of memory leaks: 0



There are some areas of interest. With the option set to enabled, the shader compliation is 43.194 ms, but with it turned off, its 433.494 ms.

If you look at the output frames and audio:

----------------------------------------------------------------------------------------------

OBS Hide from Capture Set to Enabled:

output_frame: min=0.042 ms, median=0.101 ms, max=18.854 ms, 99th percentile=0.264 ms

audio_thread(Audio): min=0.004 ms, median=0.012 ms, max=18.727 ms, 99th percentile=0.091 ms

------------------------------------------------------------------------------------------------

OBS Hide from Capture Set to Disabled:

output_frame: min=0.033 ms, median=0.099 ms, max=0.808 ms, 99th percentile=0.236 ms

audio_thread(Audio): min=0.004 ms, median=0.012 ms, max=0.406 ms, 99th percentile=0.076 ms

-------------------------------------------------------------------------------------------------
From this, and I'm sure that I could pick a clear winner for me (which is to keep the setting turned off), the shaders took less time to compile when it's enabled; Since its hiding from the capture and takes less time to load OBS. However, turning this setting off took more time to load the shaders (maybe there are more shaders being build by OBS and the NVIDIA driver) and it feels as though more functionality is loading.

The tradeoff is "I want to hide OBS from being captured because I don't want people to see it" or "it takes less time to load OBS, so this way is better" when in fact it's making recordings worse.
 

Bar_be_que

New Member
Just gave it a try and no difference on my end. I am thinking that the out of sync is from the nvidia drivers causing stutters and that is causing frame pacing to go crazy in obs. I'll try some older drivers but it's recommended you use driver for obs studio current release so if i go back further could cause other issues. Windows, nvidia, windows 11 sure are all really buggy right now with all sorts of different things. Just thought I would throw it out there in case anyone else trys vertical sync test and gets the same issues on a duel pc stream setup.
 

Bar_be_que

New Member
Update!!!!!



Okay guys i found the fix for my setup.

My pc specs are

amd 7900x
4070 ti super
windows 10
obs studio 31.0.2
monitor is a dell 2524h 240 hz
gysnc and free sync are off. Yes i get some screen tearing

I changed in the nvdia control panel left hand side. " adjust image settings with preview" i then choose use " use the advanced 3d image settings"

Next under manage 3d settings I leave everything to driver default except "power managment mode" I changed it to "Prefer maximum performance". This will make your gpu run full clock all the time! I then rebooted computer and ther vertical sync test was smooth as silk. Here is website i have been talking about. You want to see all grey. If any blue or red flashes there is something going on.

I now No longer have issues with the preview in obs studio picking up those stutters and throwing it out of sync. I no don't have any stutters now at all in any of my videos or streams.


Conclusion to this. I recently upgraded from a 3070 ti to my now 4070 ti super. The only think i can think of the cause is that when our graphics card are in optimal mode setting in the nvida control panel settings that the idle 210mhz on the 4070ti is lower then what it was on the 3070 ti causing out of sync issues for my hi refreshrate of 240hz. People may not notice this on lower refreshrate monitors like 180hz, 165hz 144hz as it's not a hard on the gpu to match this frame rate. I am not talking about game fps just the system overall refreshrate so don't get confused. It can be tough on a card to hit that refreshrate for graphics cards. I hope this help some people causing all the stutters.

If you were to do the math now that was talked about and set fracitonal fps so forth your encoding it should be perfect a perfect copy! I just do common fps 60 though cause 240 goes into 60 so I don't have any issues. Thanks all hope this helps!
 
Top