Question / Help Feel like I should be able to get more out of my set up.

nodnerber

New Member
I stream League of Legends, mostly for my friends and capturing good moments. I upgraded the CPU to AMD FX 8350 (I realize there's no substitute for an Intel i7, but for the sake of price/performance) and I was under the impression that it could handle 720p 60fps, maybe even 1080p 30fps, but it seems like it can't even handle 720p 30fps, and it's a huge bummer. :/ It's stuttery (Locally, on the actual game, graphics settings on low) and the frames are constantly dipping into 20s and 10s. CPU load doesn't even seem to go over 50%.

I would be happy with a solid 720p 30fps, I'd be really happy with 60fps.

Any help would be appreciated, here's a log!

Code:
17:12:48: Open Broadcaster Software v0.584b - 64bit ( ^ω^)
17:12:48: -------------------------------
17:12:48: CPU Name: AMD FX(tm)-8350 Eight-Core Processor
17:12:48: CPU Speed: 4026MHz
17:12:48: Physical Memory:  8173MB Total, 4918MB Free
17:12:48: stepping id: 0, model 2, family 21, type 0, extmodel 0, extfamily 3, HTT 1, logical cores 8, total cores 4
17:12:48: monitor 1: pos={1920, 0}, size={1440, 900}
17:12:48: monitor 2: pos={0, 0}, size={1920, 1080}
17:12:48: Windows Version: 6.1 Build 7601 S
17:12:48: Aero is Disabled
17:12:48: -------------------------------
17:12:48: OBS Modules:
17:12:48: Base Address     Module
17:12:48: 000000003FE60000 OBS.exe
17:12:48: 00000000EDFA0000 OBSApi.dll
17:12:48: 00000000F3B30000 DShowPlugin.dll
17:12:48: 00000000F4430000 GraphicsCapture.dll
17:12:48: 00000000F4410000 NoiseGate.dll
17:12:48: 00000000F43F0000 PSVPlugin.dll
17:12:48: ------------------------------------------
17:12:48: Adapter 1
17:12:48:   Video Adapter: NVIDIA GeForce GTX 660 Ti
17:12:48:   Video Adapter Dedicated Video Memory: 2086469632
17:12:48:   Video Adapter Shared System Memory: 2147807232
17:12:48:   Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
17:12:48:   Video Adapter Output 2: pos={1920, 0}, size={1440, 900}, attached=true
17:12:48: =====Stream Start: 2013-11-28, 17:12:48===============================================
17:12:48:   Multithreaded optimizations: On
17:12:48:   Base resolution: 1920x1080
17:12:48:   Output resolution: 1280x720
17:12:48: ------------------------------------------
17:12:48: Loading up D3D10 on NVIDIA GeForce GTX 660 Ti...
17:12:48: ------------------------------------------
17:12:48: Audio Format: 48000hz
17:12:48: Playback device {0.0.0.00000000}.{f11290df-a45b-4143-933b-6d72d395fd5c}
17:12:48: ------------------------------------------
17:12:48: Using desktop audio input: Headset (2- Logitech G430 Gaming Headset)
17:12:48: Using 7.1 surround speaker setup
17:12:48: ------------------------------------------
17:12:48: Using auxilary audio input: Headset (2- Logitech G430 Gaming Headset)
17:12:48: ------------------------------------------
17:12:48: Audio Encoding: AAC
17:12:48:     bitrate: 128
17:12:48: ------------------------------------------
17:12:48:     device: Logitech HD Webcam C270,
17:12:48:     device id \\?\usb#vid_046d&pid_0825&mi_00#6&1bca3d39&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{bbefb6c7-2fc4-4139-bb8b-a58bba724083},
17:12:48:     chosen type: I420, usingFourCC: false, res: 1280x960 - 1280x960, frameIntervals: 333333-2000000
17:12:48:     use buffering: false - 0, fourCC: 'I420'
17:12:48:     audio device: Disable,
17:12:48:     audio device id Disabled,
17:12:48: 
17:12:48: Using directshow input
17:12:49: Using Monitor Capture
17:12:49: Scene buffering time set to 400
17:12:49: ------------------------------------------
17:12:49: Video Encoding: x264
17:12:49:     fps: 30
17:12:49:     width: 1280, height: 720
17:12:49:     preset: ultrafast
17:12:49:     profile: high
17:12:49:     keyint: 60
17:12:49:     CBR: yes
17:12:49:     CFR: no
17:12:49:     max bitrate: 3500
17:12:49:     buffer size: 3500
17:12:49: ------------------------------------------
17:12:49: MMDeviceAudioSource: Frequency for device 'Headset (2- Logitech G430 Gaming Headset)' is 1536000, samples per sec is 48000
17:12:49: MMDeviceAudioSource: Frequency for device 'Headset (2- Logitech G430 Gaming Headset)' is 176400, samples per sec is 44100
17:12:51: Using RTMP service: Twitch / Justin.tv
17:12:51:   Server selection: rtmp://live-ord.justin.tv/app
17:12:51:   Interface: Realtek PCIe GBE Family Controller (ethernet, 1000 mbps)
17:12:51: Completed handshake with rtmp://live-ord.justin.tv/app in 221 ms.
17:12:52: SO_SNDBUF was at 8192
17:12:52: SO_SNDBUF is now 65536
17:12:55: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
17:12:55:   New Scene
17:12:55: Using graphics capture
17:12:55: Using graphics capture
17:12:59: SharedTexCapture hooked
17:14:00: GraphicsCaptureSource::NewCapture:  eliminating old capture
17:14:00: SharedTexCapture hooked
17:35:52: Exit signal received, terminating capture
17:35:53: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
17:35:53:   New Scene
17:36:33: Total frames encoded: 42704, total frames duplicated: 6807 (15.94%)
17:36:33: Total frames rendered: 39829, number of late frames: 2424 (6.09%) (it's okay for some frames to be late)
17:36:34: RTMPPublisher::SocketLoop: Graceful loop exit
17:36:34: Average send payload: 8198 bytes, average send interval: 18 ms
17:36:34: Number of times waited to send: 0, Waited for a total of 0 bytes
17:36:34: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
17:36:34: Number of bytes sent: 645789197
17:36:34: 
17:36:34: Profiler time results:
17:36:34: 
17:36:34: ==============================================================
17:36:34: video thread frame - [100%] [avg time: 21.658 ms] [children: 96.2%] [unaccounted: 3.8%]
17:36:34: | scene->Preprocess - [95.8%] [avg time: 20.741 ms]
17:36:34: | GPU download and conversion - [0.439%] [avg time: 0.095 ms] [children: 0.305%] [unaccounted: 0.134%]
17:36:34: | | flush - [0.212%] [avg time: 0.046 ms]
17:36:34: | | CopyResource - [0.0739%] [avg time: 0.016 ms]
17:36:34: | | conversion to 4:2:0 - [0.0185%] [avg time: 0.004 ms]
17:36:34: Convert444Threads - [100%] [avg time: 0.643 ms] [children: 99.2%] [unaccounted: 0.778%]
17:36:34: | Convert444toNV12 - [99.2%] [avg time: 0.638 ms]
17:36:34: encoder thread frame - [100%] [avg time: 0.809 ms]
17:36:34: ==============================================================
17:36:34: 
17:36:34: 
17:36:34: Profiler CPU results:
17:36:34: 
17:36:34: ==============================================================
17:36:34: video thread frame - [cpu time: avg 4.617 ms, total 183894 ms] [avg calls per frame: 1]
17:36:34: | scene->Preprocess - [cpu time: avg 3.773 ms, total 150307 ms] [avg calls per frame: 1]
17:36:34: | GPU download and conversion - [cpu time: avg 0.071 ms, total 2839.22 ms] [avg calls per frame: 1]
17:36:34: | | flush - [cpu time: avg 0.044 ms, total 1778.41 ms] [avg calls per frame: 1]
17:36:34: | | CopyResource - [cpu time: avg 0.017 ms, total 702.004 ms] [avg calls per frame: 1]
17:36:34: | | conversion to 4:2:0 - [cpu time: avg 0.003 ms, total 156.001 ms] [avg calls per frame: 1]
17:36:34: Convert444Threads - [cpu time: avg 0.665 ms, total 52962.3 ms] [avg calls per frame: 2]
17:36:34: | Convert444toNV12 - [cpu time: avg 0.659 ms, total 52541.1 ms] [avg calls per frame: 2]
17:36:34: encoder thread frame - [cpu time: avg 0.189 ms, total 8096.45 ms] [avg calls per frame: 1]
17:36:34: ==============================================================
17:36:34: 
17:36:34: =====Stream End: 2013-11-28, 17:36:34=================================================
17:36:34: =====Stream Start: 2013-11-28, 17:36:34===============================================
17:36:34:   Multithreaded optimizations: On
17:36:34:   Base resolution: 1920x1080
17:36:34:   Output resolution: 1280x720
17:36:34: ------------------------------------------
17:36:34: Loading up D3D10 on NVIDIA GeForce GTX 660 Ti...
17:36:34: ------------------------------------------
17:36:34: Audio Format: 48000hz
17:36:34: Playback device {0.0.0.00000000}.{f11290df-a45b-4143-933b-6d72d395fd5c}
17:36:34: ------------------------------------------
17:36:34: Using desktop audio input: Headset (2- Logitech G430 Gaming Headset)
17:36:34: Using 7.1 surround speaker setup
17:36:34: ------------------------------------------
17:36:34: Using auxilary audio input: Headset (2- Logitech G430 Gaming Headset)
17:36:34: ------------------------------------------
17:36:34: Audio Encoding: AAC
17:36:34:     bitrate: 128
17:36:34: ------------------------------------------
17:36:34:     device: Logitech HD Webcam C270,
17:36:34:     device id \\?\usb#vid_046d&pid_0825&mi_00#6&1bca3d39&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{bbefb6c7-2fc4-4139-bb8b-a58bba724083},
17:36:34:     chosen type: I420, usingFourCC: false, res: 1280x960 - 1280x960, frameIntervals: 333333-2000000
17:36:34:     use buffering: false - 0, fourCC: 'I420'
17:36:34:     audio device: Disable,
17:36:34:     audio device id Disabled,
17:36:34: 
17:36:34: Using directshow input
17:36:35: Using Monitor Capture
17:36:35: Scene buffering time set to 400
17:36:35: ------------------------------------------
17:36:35: Video Encoding: x264
17:36:35:     fps: 30
17:36:35:     width: 1280, height: 720
17:36:35:     preset: ultrafast
17:36:35:     profile: high
17:36:35:     keyint: 60
17:36:35:     CBR: yes
17:36:35:     CFR: no
17:36:35:     max bitrate: 3500
17:36:35:     buffer size: 3500
17:36:35: ------------------------------------------
17:36:35: MMDeviceAudioSource: Frequency for device 'Headset (2- Logitech G430 Gaming Headset)' is 1536000, samples per sec is 48000
17:36:35: MMDeviceAudioSource: Frequency for device 'Headset (2- Logitech G430 Gaming Headset)' is 176400, samples per sec is 44100
17:36:36: Using RTMP service: Twitch / Justin.tv
17:36:36:   Server selection: rtmp://live-ord.justin.tv/app
17:36:36:   Interface: Realtek PCIe GBE Family Controller (ethernet, 1000 mbps)
17:36:36: Total frames encoded: 25, total frames duplicated: 1 (4.00%)
17:36:36: Total frames rendered: 36, number of late frames: 1 (2.78%) (it's okay for some frames to be late)
17:36:37: Completed handshake with rtmp://live-ord.justin.tv/app in 203 ms.
17:36:37: SO_SNDBUF was at 8192
17:36:37: SO_SNDBUF is now 65536
17:36:37: RTMPPublisher::SocketLoop: Graceful loop exit
17:36:37: Number of times waited to send: 0, Waited for a total of 0 bytes
17:36:37: Number of b-frames dropped: 0 (-1.$%), Number of p-frames dropped: 0 (-1.$%), Total 0 (-1.$%)
17:36:37: Number of bytes sent: 0
17:36:38: 
17:36:38: Profiler time results:
17:36:38: 
17:36:38: ==============================================================
17:36:38: video thread frame - [100%] [avg time: 7.439 ms] [children: 60.9%] [unaccounted: 39.1%]
17:36:38: | scene->Preprocess - [60%] [avg time: 4.46 ms]
17:36:38: | GPU download and conversion - [0.981%] [avg time: 0.073 ms] [children: 0.954%] [unaccounted: 0.0269%]
17:36:38: | | flush - [0.739%] [avg time: 0.055 ms]
17:36:38: | | CopyResource - [0.175%] [avg time: 0.013 ms]
17:36:38: | | conversion to 4:2:0 - [0.0403%] [avg time: 0.003 ms]
17:36:38: Convert444Threads - [100%] [avg time: 0.89 ms] [children: 99.3%] [unaccounted: 0.674%]
17:36:38: | Convert444toNV12 - [99.3%] [avg time: 0.884 ms]
17:36:38: encoder thread frame - [100%] [avg time: 1.04 ms]
17:36:38: ==============================================================
17:36:38: 
17:36:38: 
17:36:38: Profiler CPU results:
17:36:38: 
17:36:38: ==============================================================
17:36:38: video thread frame - [cpu time: avg 5.633 ms, total 202.801 ms] [avg calls per frame: 1]
17:36:38: | scene->Preprocess - [cpu time: avg 3.466 ms, total 124.801 ms] [avg calls per frame: 1]
17:36:38: | GPU download and conversion - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:36:38: | | flush - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:36:38: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:36:38: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:36:38: Convert444Threads - [cpu time: avg 0.39 ms, total 15.6 ms] [avg calls per frame: 2]
17:36:38: | Convert444toNV12 - [cpu time: avg 0.39 ms, total 15.6 ms] [avg calls per frame: 2]
17:36:38: encoder thread frame - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:36:38: ==============================================================
17:36:38: 
17:36:38: =====Stream End: 2013-11-28, 17:36:38=================================================


Last game capture log:
2013-11-28, 17:12:55: we're booting up: 
17:12:55: D3D9 Present
17:12:55: DXGI Present
17:12:55: NV Capture available
17:12:55: FBO available
17:12:55: GL Present
17:12:55: (half life scientist) everything..  seems to be in order
17:12:59: D3D9EndScene called
17:12:59: D3DPRESENT_PARAMETERS {
17:12:59: 	BackBufferWidth: 1920
17:12:59: 	BackBufferHeight: 1080
17:12:59: 	BackBufferFormat: D3DFMT_X8R8G8B8
17:12:59: 	BackBufferCount: 1
17:12:59: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:12:59: 	MultiSampleQuality: 0
17:12:59: 	SwapEffect: D3DSWAPEFFECT_DISCARD
17:12:59: 	hDeviceWindow: 591060
17:12:59: 	Windowed: false
17:12:59: 	EnableAutoDepthStencil: true
17:12:59: 	AutoDepthStencilFormat: D3DFMT_D24S8
17:12:59: 	Flags: D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 
17:12:59: 	FullScreen_RefreshRateInHz: 60
17:12:59: 	PresentationInterval: 0
17:12:59: };
17:12:59: successfully set up d3d9 hooks
17:12:59: D3D9Present called
17:12:59: DoD3D9GPUHook: success
17:12:59: D3DSURFACE_DESC {
17:12:59: 	Format: D3DFMT_X8R8G8B8
17:12:59: 	Type: D3DRTYPE_SURFACE
17:12:59: 	Usage: D3DUSAGE_RENDERTARGET 
17:12:59: 	Pool: D3DPOOL_DEFAULT
17:12:59: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:12:59: 	MultiSampleQuality: 0
17:12:59: 	Width: 1920
17:12:59: 	Height: 1080
17:12:59: };
17:12:59: successfully capturing d3d9 frames via GPU
17:14:00: D3D9Reset called
17:14:00: ---------------------- Cleared D3D9 Capture ----------------------
17:14:00: successfully set up d3d9 hooks
17:14:00: D3D9EndScene called
17:14:00: D3D9Present called
17:14:00: DoD3D9GPUHook: success
17:14:00: D3DSURFACE_DESC {
17:14:00: 	Format: D3DFMT_X8R8G8B8
17:14:00: 	Type: D3DRTYPE_SURFACE
17:14:00: 	Usage: D3DUSAGE_RENDERTARGET 
17:14:00: 	Pool: D3DPOOL_DEFAULT
17:14:00: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:14:00: 	MultiSampleQuality: 0
17:14:00: 	Width: 1920
17:14:00: 	Height: 1080
17:14:00: };
17:14:00: successfully capturing d3d9 frames via GPU
 

Sapiens

Forum Moderator
Could you test with a new scene that contains nothing but a game capture source (or window capture with Aero enabled)? If performance is still bad, post the new log from your test. Monitor capture is the worst method to use in Windows 7 and it would be good to make sure your camera isn't causing the problem either.
 

FerretBomb

Active Member
Seconded. Monitor capture is terribad under Win7. It can cause problems to the point of slowing down/stuttering the game; I had that happen when I was casting Mark of the Ninja, until I swapped to Game Capture.

Never use Monitor Capture except as a VERY LAST RESORT under Win7.
With the number of duplicated and late frames in the log, this is almost definitely the problem.

Also, 3500kbps is pretty high (and is the maximum that the Twitch ingests are supposed to be able to handle without problems); the maximum recommended for non-partnered streamers is 2000kbps (due to lack of transcoding options for lower-bitrate viewers). You probably should also go back to the Veryfast encoder preset... it's almost definitely the Monitor Capture crapping things up.
 

nodnerber

New Member
SOLUTION FOUND
It was simply running the game kept the fps really low, and once I switched it to windowless border, it runs a solid 60 fps the whole time! Thank you guys for your time.

and yeah, with the monitor capture, it's just one of my scenes I toggle between, and I've definitely noticed the issues you described whenever I forget to switch to the window capture of the game and leave it on monitor capture. It's terrible!

Cheers!
 
Top