Question / Help 4K Canvas size "stutters" even with a 5960X + gtx980

EDGAR_SEC

Member
Hello,

I currently play on a 1440p monitor in a dual PC stream setup. On the stream PC, whenever I try to set the canvas size to 3840x2160 (so I can do a 2:1 downscale and get 1080p), the preview window always seems to lag and only display 15fps or so (even with the downscale option selected). Furthermore, the stream also only receives ~15fps.

The CPU in the streaming PC is a 5960X. I thought originally it might be due to OBS needing more power to "compose the scene," so I installed a gtx 980, but still have the exact same issue. Whenever I set the canvas size to 1440p with a downscale to 1152p, this problem does not exist and the preview window/stream both run at 60fps.

Anyone have any idea why this might be happening?

Thanks
 

EDGAR_SEC

Member
I'm starting to think this just might be a limitation of OBS itself. Could someone else try setting their canvas size to 4K to see what happens? Thanks.
 

EDGAR_SEC

Member
Can't believe I forgot to include my log. Here is a fresh log file exhibiting the problem that happens either previewing/streaming at a base of 2160p.

Code:
20:51:53: Failed to initialize plugin plugins/CLRBrowserSourcePlugin.dll
20:51:54: Failed to load plugin plugins/CLRHost.Interop.dll, 126
20:51:54: CLR host plugin strings not found, dynamically loading 4 strings
20:51:54: CLRHost::Initialize() attempting to load and start the .NET runtime (null)
20:51:54: CLRHost::Initialize() Found version v2.0.50727 .NET runtime
20:51:54: CLRHost::Initialize() Found version v4.0.30319 .NET runtime
20:51:54: CLRHost::Initialize() attempting to use v4.0.30319 .NET runtime
20:51:54: CLRHost::LoadInteropLibrary() load the assembly plugins\CLRHostPlugin\CLRHost.Interop.dll
20:51:54: CLRHost::LoadPlugins() attempting to load the plugin assembly CLRBrowserSourcePlugin
20:51:57: CLRHost::LoadPlugins() successfully added CLR plugin [Type: CLRBrowserSourcePlugin.CLRBrowserSourcePlugin, Name: CLR Browser Source Plugin]
20:51:57: CLRHost::LoadPlugins() attempting to load the plugin assembly CLRHostPlugin
20:51:57: CLRHost::LoadPlugins() failed to load the assembly CLRHostPlugin: 0x80131018
20:51:57: CLRHost::LoadPlugins() attempting to load the plugin assembly MumbleOverlayPlugin
20:51:57: CLRHost::LoadPlugins() successfully added CLR plugin [Type: MumbleOverlayPlugin.MumbleOverlayPlugin, Name: Mumble Overlay Plugin]
20:51:57: Video Source Plugin strings not found, dynamically loading 52 strings
20:52:05: No Intel graphics adapter visible in QSVHelper.exe, Optimus problem?
20:52:06: CUDA loaded successfully
20:52:06: 1 CUDA capable devices found
20:52:06: [ GPU #0 - < GeForce GTX 980 > has Compute SM 5.2, NVENC Available ]
20:52:57: Open Broadcaster Software v0.65b - 32bit (´·?·`)
20:52:57: -------------------------------
20:52:57: CPU Name: Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz
20:52:57: CPU Speed: 3818MHz
20:52:57: Physical Memory:  4095MB Total, 4095MB Free
20:52:57: stepping id: 2, model 63, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 16, total cores 8
20:52:57: monitor 1: pos={0, 0}, size={1920, 1080}
20:52:57: Windows Version: 6.2 Build 9200
20:52:57: Aero is Enabled
20:52:57: -------------------------------
20:52:57: OBS Modules:
20:52:57: Base Address     Module
20:52:57: 01050000         OBS.exe
20:52:57: 706A0000         OBSApi.dll
20:52:57: 70260000         CLRHostPlugin.dll
20:52:57: 662A0000         DShowPlugin.dll
20:52:57: 66270000         GraphicsCapture.dll
20:52:57: 66240000         NoiseGate.dll
20:52:57: 66220000         PSVPlugin.dll
20:52:57: 66200000         scenesw.dll
20:52:57: 661F0000         VideoSourcePluginWrapper.dll
20:52:57: ------------------------------------------
20:52:57: Adapter 1
20:52:57:   Video Adapter: NVIDIA GeForce GTX 980
20:52:57:   Video Adapter Dedicated Video Memory: 3221225472
20:52:57:   Video Adapter Shared System Memory: 1073676288
20:52:57:   Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
20:52:57: =====Stream Start: 2015-03-23, 20:52:57===============================================
20:52:57:   Multithreaded optimizations: On
20:52:57:   Base resolution: 3840x2160
20:52:57:   Output resolution: 1920x1080
20:52:57: ------------------------------------------
20:52:57: Loading up D3D10 on NVIDIA GeForce GTX 980 (Adapter 1)...
20:52:57: ------------------------------------------
20:52:57: Audio Format: 48000 Hz
20:52:57: ------------------------------------------
20:52:57: Audio Channels: 2 Ch
20:52:57: Playback device Default
20:52:57: ------------------------------------------
20:52:57: Using desktop audio input: VoiceMeeter Input (VB-Audio VoiceMeeter VAIO)
20:52:57: Global Audio time adjust: 0
20:52:57: ------------------------------------------
20:52:57: Audio Encoding: AAC
20:52:57:     bitrate: 128
20:52:57: Using text output
20:52:57: Using text output
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: Browser 1: Status message:
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: Browser 2: Status message:
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: ------------------------------------------
20:52:57:     device: Datapath VisionDVI-DL Video 01,
20:52:57:     device id (null),
20:52:57:     chosen type: YUY2, usingFourCC: false, res: 320x240 - 4096x4096, frameIntervals: 1000-10000000
20:52:57:     use buffering: false - 0, fourCC: 'YUY2'
20:52:57:     audio device: Line In (Realtek High Definition Audio),
20:52:57:     audio device id (null),
20:52:57:     audio time offset 0,
20:52:57:
20:52:57:     device audio info - bits per sample: 16, channels: 2, samples per sec: 44100, block size: 4
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: Using directshow input
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: Browser 3: Status message:
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: Scene buffering time set to 700
20:52:57: x264: MB rate (489600) > level limit (245760)
20:52:57: ------------------------------------------
20:52:57: Video Encoding: x264
20:52:57:     fps: 60
20:52:57:     width: 1920, height: 1080
20:52:57:     preset: medium
20:52:57:     profile: main
20:52:57:     keyint: 120
20:52:57:     CBR: yes
20:52:57:     CFR: yes
20:52:57:     max bitrate: 6000
20:52:57:     buffer size: 12000
20:52:57: ------------------------------------------
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:57: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:58: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:52:58: CLRHost:: BrowserRenderHandler::OnPaint failed to create texture
20:53:02: CLRHost:: Timeout connecting to named pipe \\.\MumbleOverlayPipe; The operation has timed out.
20:53:31: Total frames encoded: 1953, total frames duplicated: 150 (7.68%)
20:53:31: Total frames rendered: 1989, number of late frames: 5 (0.25%) (it's okay for some frames to be late)
20:53:32:
20:53:32: Profiler time results:
20:53:32:
20:53:32: ==============================================================
20:53:32: video thread frame - [100%] [avg time: 3.218 ms] [children: 75.2%] [unaccounted: 24.8%]
20:53:32: | scene->Preprocess - [70%] [avg time: 2.254 ms]
20:53:32: | GPU download and conversion - [5.16%] [avg time: 0.166 ms] [children: 3.51%] [unaccounted: 1.65%]
20:53:32: | | flush - [3.11%] [avg time: 0.1 ms]
20:53:32: | | CopyResource - [0.186%] [avg time: 0.006 ms]
20:53:32: | | conversion to 4:2:0 - [0.218%] [avg time: 0.007 ms]
20:53:32: Convert444Threads - [100%] [avg time: 0.344 ms] [children: 98.3%] [unaccounted: 1.74%]
20:53:32: | Convert444toNV12 - [98.3%] [avg time: 0.338 ms]
20:53:32: encoder thread frame - [100%] [avg time: 1.599 ms] [children: 0.125%] [unaccounted: 99.9%]
20:53:32: | sending stuff out - [0.125%] [avg time: 0.002 ms]
20:53:32: ==============================================================
20:53:32:
20:53:32:
20:53:32: Profiler CPU results:
20:53:32:
20:53:32: ==============================================================
20:53:32: video thread frame - [cpu time: avg 2.513 ms, total 5000 ms] [avg calls per frame: 1]
20:53:32: | scene->Preprocess - [cpu time: avg 1.956 ms, total 3890.63 ms] [avg calls per frame: 1]
20:53:32: | GPU download and conversion - [cpu time: avg 0.054 ms, total 109.375 ms] [avg calls per frame: 1]
20:53:32: | | flush - [cpu time: avg 0.039 ms, total 78.125 ms] [avg calls per frame: 1]
20:53:32: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
20:53:32: | | conversion to 4:2:0 - [cpu time: avg 0.016 ms, total 31.25 ms] [avg calls per frame: 1]
20:53:32: Convert444Threads - [cpu time: avg 0.322 ms, total 3781.25 ms] [avg calls per frame: 6]
20:53:32: | Convert444toNV12 - [cpu time: avg 0.32 ms, total 3750 ms] [avg calls per frame: 6]
20:53:32: encoder thread frame - [cpu time: avg 1.272 ms, total 2484.38 ms] [avg calls per frame: 1]
20:53:32: | sending stuff out - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
20:53:32: ==============================================================
20:53:32:
20:53:32: =====Stream End: 2015-03-23, 20:53:32=================================================
20:53:32: CLR host plugin instance deleted; removing dynamically loaded localization strings
20:53:32: Video Source Plugin instance deleted; removing dynamically loaded localization strings
20:53:32: Terminating 0x193c
 

D2ultima

Member
I'm starting to think this just might be a limitation of OBS itself. Could someone else try setting their canvas size to 4K to see what happens? Thanks.
Try this
Screenshot1508.jpg
 

EDGAR_SEC

Member
Hello D2ultimta, I tried your suggestion and found that the "lag" isn't as severe, but it's still noticeable. With your settings, the preview window/local recording appears to be getting ~43fps.

In case it matters, the local recording is being saved to a Samsung 840 Pro ssd that is separate from the boot drive.

Do you think these hiccups with ultra high resolution are just a limitation of OBS? Thanks
 

Floatingthru

Community Helper
I can only get OBS to record 4k@30fps~ anything higher and it will chug. Shadowplay is capable of recording 4k@60fps fine for me, so I also want to say that it's a limitation of OBS. 4k is really a large resolution so there are bound to be growing pains with such things. I know you aren't recording at 4k, but I get the same results as you if I also downscale while keeping the base res at 4k. I use a GTX 970 with a 4770k for reference.
 
Last edited:

EDGAR_SEC

Member
Floating, are you using the 32 or 64-bit OBS?

Looks like I might have to hold off on making the switch to 4K.
 

EDGAR_SEC

Member
Gotcha. So you're using 64-bit on a single PC setup while I'm using 32-bit on a dual PC setup--I figure we have all the bases covered there. The only thing left to do is wait for one of the devs to come back to this thread and comment. Being on the bleeding edge is terrible haha.
 

EDGAR_SEC

Member
That's what I figured too, R1CH. It's a pretty beefy dedicated stream PC. I thought it might be due to me using the 32-bit version and it only detecting 4GB of system ram, but Floatingthru said he has the same problem while usign the 64-bit.

My CPU usage never creeps above 60% at those settings either. I guess I'm stuck setting my canvas to 1920x1080 and shrinking down the 1440p capture into that space? I wanted to use a 2160p canvas size with my 1440p capture stretched out to fit that so I could then benefit from using the downscale filters when converting to 1080p for my stream.
 

D2ultima

Member
Hello D2ultimta, I tried your suggestion and found that the "lag" isn't as severe, but it's still noticeable. With your settings, the preview window/local recording appears to be getting ~43fps.

In case it matters, the local recording is being saved to a Samsung 840 Pro ssd that is separate from the boot drive.

Do you think these hiccups with ultra high resolution are just a limitation of OBS? Thanks
Screenshot1509.jpg
 
Top