Question / Help Low fps with starcraft 2

Plokoon

New Member
Hello,

I'm having issues with obs while streaming some starcraft 2. I have around 40 fps at the beginning of the game and it can go under 15 fps during big battles.

I don't know if it is because my laptop is not powerful enough or if i didn't configured obs correctly. Here is a log :

Code:
17:18:34: Open Broadcaster Software v0.584b - 64bit ( ^ω^)
17:18:34: -------------------------------
17:18:34: CPU Name: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
17:18:34: CPU Speed: 2494MHz
17:18:34: Physical Memory:  5255MB Total, 2553MB Free
17:18:34: stepping id: 9, model 58, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 2
17:18:34: monitor 1: pos={0, 0}, size={1600, 900}
17:18:34: Windows Version: 6.2 Build 9200 
17:18:34: Aero is Enabled
17:18:34: -------------------------------
17:18:34: OBS Modules:
17:18:34: Base Address     Module
17:18:34: 00000000B7C80000 OBS.exe
17:18:34: 0000000011620000 OBSApi.dll
17:18:34: 000000001CFA0000 DShowPlugin.dll
17:18:34: 000000001AF40000 GraphicsCapture.dll
17:18:34: 000000001DFF0000 NoiseGate.dll
17:18:34: 000000001D140000 PSVPlugin.dll
17:18:34: ------------------------------------------
17:18:34: Adapter 1
17:18:34:   Video Adapter: Intel(R) HD Graphics 4000
17:18:34:   Video Adapter Dedicated Video Memory: 33554432
17:18:34:   Video Adapter Shared System Memory: 1711276032
17:18:34:   Video Adapter Output 1: pos={0, 0}, size={1600, 900}, attached=true
17:18:34: ------------------------------------------
17:18:34: Adapter 2
17:18:34:   Video Adapter: NVIDIA GeForce GT 635M   
17:18:34:   Video Adapter Dedicated Video Memory: 2091446272
17:18:34:   Video Adapter Shared System Memory: 2147233792
17:18:34: Using fixed low latency mode, factor 20
17:18:34: =====Stream Start: 2013-11-19, 17:18:34===============================================
17:18:34:   Multithreaded optimizations: On
17:18:34:   Base resolution: 1600x900
17:18:34:   Output resolution: 1600x900
17:18:34: ------------------------------------------
17:18:34: Loading up D3D10 on Intel(R) HD Graphics 4000...
17:18:35: ------------------------------------------
17:18:35: Audio Format: 48000hz
17:18:35: Playback device {0.0.0.00000000}.{a649db52-9e65-4a7b-a2b0-0d1bb812d565}
17:18:35: ------------------------------------------
17:18:35: Using desktop audio input: Speakers (Realtek High Definition Audio)
17:18:35: ------------------------------------------
17:18:35: Using auxilary audio input: Microphone (Realtek High Definition Audio)
17:18:35: ------------------------------------------
17:18:35: Audio Encoding: AAC
17:18:35:     bitrate: 128
17:18:35: Using text output
17:18:36: Using bitmap image
17:18:36: Scene buffering time set to 400
17:18:36: ------------------------------------------
17:18:36: Video Encoding: x264
17:18:36:     fps: 30
17:18:36:     width: 1600, height: 900
17:18:36:     preset: veryfast
17:18:36:     profile: high
17:18:36:     keyint: 60
17:18:36:     CBR: yes
17:18:36:     CFR: yes
17:18:36:     max bitrate: 800
17:18:36:     buffer size: 800
17:18:36: ------------------------------------------
17:18:36: MMDeviceAudioSource: Frequency for device 'Speakers (Realtek High Definition Audio)' is 384000, samples per sec is 48000
17:18:36: MMDeviceAudioSource: Frequency for device 'Microphone (Realtek High Definition Audio)' is 352800, samples per sec is 44100
17:18:37: Using RTMP service: Twitch / Justin.tv
17:18:37:   Server selection: rtmp://live-lhr.justin.tv/app
17:18:37:   Interface: Qualcomm Atheros AR9485 Wireless Network Adapter (802.11, 54 mbps)
17:18:38: Completed handshake with rtmp://live-lhr.justin.tv/app in 439 ms.
17:18:39: SO_SNDBUF was at 65536
17:18:39: SO_SNDBUF is now 65536
17:18:58: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
17:18:58:   New Scene
17:18:59: ------------------------------------------
17:18:59:     device: USB2.0 HD UVC WebCam,
17:18:59:     device id \\?\usb#vid_04f2&pid_b354&mi_00#7&5275bea&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global,
17:18:59:     chosen type: MJPG, usingFourCC: false, res: 1280x720 - 1280x720, frameIntervals: 333333-666666
17:18:59:     use buffering: false - 0, fourCC: 'MJPG'
17:18:59:     audio device: Désactiver,
17:18:59:     audio device id Disabled,
17:18:59: 
17:19:01: Using directshow input
17:19:01: Using Monitor Capture
17:19:01: PERFORMANCE WARNING: Scene change took 2382 ms, maybe some sources should be global sources?
17:19:02: Total frames encoded: 767, total frames duplicated: 70 (9.13%)
17:19:02: Number of frames skipped due to encoder lag: 2 (0.26%)
17:19:02: Total frames rendered: 699, number of late frames: 4 (0.57%) (it's okay for some frames to be late)
17:19:07: RTMPPublisher::SocketLoop: Received FD_CLOSE, 5069 ms since last send (buffer: 232 / 131072)
17:19:07: RTMPPublisher::SocketLoop: Aborting due to FD_CLOSE during shutdown, 232 bytes lost, error 0
17:19:07: Average send payload: 5856 bytes, average send interval: 51 ms
17:19:07: Number of times waited to send: 0, Waited for a total of 0 bytes
17:19:07: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
17:19:07: Number of bytes sent: 2559257
17:19:07: 
17:19:07: Profiler time results:
17:19:07: 
17:19:07: ==============================================================
17:19:07: video thread frame - [100%] [avg time: 5.058 ms] [children: 22.1%] [unaccounted: 77.9%]
17:19:07: | scene->Preprocess - [9.37%] [avg time: 0.474 ms]
17:19:07: | GPU download and conversion - [12.7%] [avg time: 0.644 ms] [children: 8.32%] [unaccounted: 4.41%]
17:19:07: | | flush - [4.43%] [avg time: 0.224 ms]
17:19:07: | | CopyResource - [3.78%] [avg time: 0.191 ms]
17:19:07: | | conversion to 4:2:0 - [0.119%] [avg time: 0.006 ms]
17:19:07: Convert444Thread - [100%] [avg time: 3.665 ms] [children: 99.4%] [unaccounted: 0.573%]
17:19:07: | Convert444toNV12 - [99.4%] [avg time: 3.644 ms]
17:19:07: encoder thread frame - [100%] [avg time: 2.665 ms]
17:19:07: ==============================================================
17:19:07: 
17:19:07: 
17:19:07: Profiler CPU results:
17:19:07: 
17:19:07: ==============================================================
17:19:07: video thread frame - [cpu time: avg 0.625 ms, total 437.5 ms] [avg calls per frame: 1]
17:19:07: | scene->Preprocess - [cpu time: avg 0.089 ms, total 62.5 ms] [avg calls per frame: 1]
17:19:07: | GPU download and conversion - [cpu time: avg 0.223 ms, total 156.25 ms] [avg calls per frame: 1]
17:19:07: | | flush - [cpu time: avg 0.111 ms, total 78.125 ms] [avg calls per frame: 1]
17:19:07: | | CopyResource - [cpu time: avg 0.112 ms, total 78.125 ms] [avg calls per frame: 1]
17:19:07: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
17:19:07: Convert444Thread - [cpu time: avg 3.527 ms, total 2437.5 ms] [avg calls per frame: 1]
17:19:07: | Convert444toNV12 - [cpu time: avg 3.527 ms, total 2437.5 ms] [avg calls per frame: 1]
17:19:07: encoder thread frame - [cpu time: avg 1.655 ms, total 1250 ms] [avg calls per frame: 1]
17:19:07: ==============================================================
17:19:07: 
17:19:07: =====Stream End: 2013-11-19, 17:19:07=================================================
17:23:11: Using fixed low latency mode, factor 20
17:23:11: =====Stream Start: 2013-11-19, 17:23:11===============================================
17:23:11:   Multithreaded optimizations: On
17:23:11:   Base resolution: 1600x900
17:23:11:   Output resolution: 1600x900
17:23:11: ------------------------------------------
17:23:11: Loading up D3D10 on Intel(R) HD Graphics 4000...
17:23:11: ------------------------------------------
17:23:11: Audio Format: 48000hz
17:23:11: Playback device {0.0.0.00000000}.{a649db52-9e65-4a7b-a2b0-0d1bb812d565}
17:23:11: ------------------------------------------
17:23:11: Using desktop audio input: Speakers (Realtek High Definition Audio)
17:23:11: ------------------------------------------
17:23:11: Using auxilary audio input: Microphone (Realtek High Definition Audio)
17:23:11: ------------------------------------------
17:23:11: Audio Encoding: AAC
17:23:11:     bitrate: 128
17:23:11: ------------------------------------------
17:23:11:     device: USB2.0 HD UVC WebCam,
17:23:11:     device id \\?\usb#vid_04f2&pid_b354&mi_00#7&5275bea&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global,
17:23:11:     chosen type: MJPG, usingFourCC: false, res: 1280x720 - 1280x720, frameIntervals: 333333-666666
17:23:11:     use buffering: false - 0, fourCC: 'MJPG'
17:23:11:     audio device: Désactiver,
17:23:11:     audio device id Disabled,
17:23:11: 
17:23:12: Using directshow input
17:23:12: Using text output
17:23:12: Using bitmap image
17:23:12: Scene buffering time set to 400
17:23:12: ------------------------------------------
17:23:12: Video Encoding: x264
17:23:12:     fps: 30
17:23:12:     width: 1600, height: 900
17:23:12:     preset: veryfast
17:23:12:     profile: high
17:23:12:     keyint: 60
17:23:12:     CBR: yes
17:23:12:     CFR: yes
17:23:12:     max bitrate: 800
17:23:12:     buffer size: 800
17:23:12: ------------------------------------------
17:23:12: MMDeviceAudioSource: Frequency for device 'Speakers (Realtek High Definition Audio)' is 384000, samples per sec is 48000
17:23:12: MMDeviceAudioSource: Frequency for device 'Microphone (Realtek High Definition Audio)' is 352800, samples per sec is 44100
17:23:13: ++++++++++++++++++++++++++++++++++++++++++++++++++++++
17:23:13:   New Scene
17:23:13: ------------------------------------------
17:23:13:     device: USB2.0 HD UVC WebCam,
17:23:13:     device id \\?\usb#vid_04f2&pid_b354&mi_00#7&5275bea&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global,
17:23:13:     chosen type: MJPG, usingFourCC: false, res: 1280x720 - 1280x720, frameIntervals: 333333-666666
17:23:13:     use buffering: false - 0, fourCC: 'MJPG'
17:23:13:     audio device: Désactiver,
17:23:13:     audio device id Disabled,
17:23:13: 
17:23:14: Using RTMP service: Twitch / Justin.tv
17:23:14:   Server selection: rtmp://live-lhr.justin.tv/app
17:23:14:   Interface: Qualcomm Atheros AR9485 Wireless Network Adapter (802.11, 54 mbps)
17:23:14: Completed handshake with rtmp://live-lhr.justin.tv/app in 442 ms.
17:23:14: Using directshow input
17:23:14: Using Monitor Capture
17:23:14: PERFORMANCE WARNING: Scene change took 1090 ms, maybe some sources should be global sources?
17:23:15: SO_SNDBUF was at 65536
17:23:15: SO_SNDBUF is now 65536
18:07:34: Total frames encoded: 79838, total frames duplicated: 1812 (2.27%)
18:07:34: Number of frames skipped due to encoder lag: 383 (0.48%)
18:07:34: Total frames rendered: 79299, number of late frames: 84 (0.11%) (it's okay for some frames to be late)
18:07:34: RTMPPublisher::SocketLoop: Graceful loop exit
18:07:34: Average send payload: 6055 bytes, average send interval: 51 ms
18:07:34: Number of times waited to send: 28, Waited for a total of 79310 bytes
18:07:34: Number of b-frames dropped: 35 (0.044%), Number of p-frames dropped: 29 (0.036%), Total 64 (0.08%)
18:07:34: Number of bytes sent: 310518356
18:07:34: 
18:07:34: Profiler time results:
18:07:34: 
18:07:34: ==============================================================
18:07:34: video thread frame - [100%] [avg time: 2.539 ms] [children: 83.2%] [unaccounted: 16.8%]
18:07:34: | scene->Preprocess - [57.5%] [avg time: 1.46 ms]
18:07:34: | GPU download and conversion - [25.7%] [avg time: 0.653 ms] [children: 17.3%] [unaccounted: 8.39%]
18:07:34: | | flush - [11.8%] [avg time: 0.299 ms]
18:07:34: | | CopyResource - [5.28%] [avg time: 0.134 ms]
18:07:34: | | conversion to 4:2:0 - [0.276%] [avg time: 0.007 ms]
18:07:34: Convert444Thread - [100%] [avg time: 3.468 ms] [children: 99.3%] [unaccounted: 0.692%]
18:07:34: | Convert444toNV12 - [99.3%] [avg time: 3.444 ms]
18:07:34: encoder thread frame - [100%] [avg time: 3.736 ms]
18:07:34: ==============================================================
18:07:34: 
18:07:34: 
18:07:34: Profiler CPU results:
18:07:34: 
18:07:34: ==============================================================
18:07:34: video thread frame - [cpu time: avg 1.376 ms, total 109172 ms] [avg calls per frame: 1]
18:07:34: | scene->Preprocess - [cpu time: avg 0.904 ms, total 71750 ms] [avg calls per frame: 1]
18:07:34: | GPU download and conversion - [cpu time: avg 0.257 ms, total 20390.6 ms] [avg calls per frame: 1]
18:07:34: | | flush - [cpu time: avg 0.151 ms, total 12000 ms] [avg calls per frame: 1]
18:07:34: | | CopyResource - [cpu time: avg 0.073 ms, total 5843.75 ms] [avg calls per frame: 1]
18:07:34: | | conversion to 4:2:0 - [cpu time: avg 0.004 ms, total 328.125 ms] [avg calls per frame: 1]
18:07:34: Convert444Thread - [cpu time: avg 2.667 ms, total 211516 ms] [avg calls per frame: 1]
18:07:34: | Convert444toNV12 - [cpu time: avg 2.659 ms, total 210891 ms] [avg calls per frame: 1]
18:07:34: encoder thread frame - [cpu time: avg 1.819 ms, total 145219 ms] [avg calls per frame: 1]
18:07:34: ==============================================================
18:07:34: 
18:07:34: =====Stream End: 2013-11-19, 18:07:34=================================================

Note, i'm using a the monitor capture because the game capture doesn't work. It just show a black screen. And i'm using the intel card graphic because i have the same problem with the nvidia graphic card.

Thanks for the help.

EDIT: my setting on sc2 http://i.imgur.com/xMpTIOu.png
 

Ianuarius

Member
I've noticed that with game capture you need to nudge it around a little bit to get it work. Try hitting the refresh button, restarting OBS, restarting StarCraft 2, hitting refresh again, and selecting the game app so that it's active. Until you get the game active, it'll show just a black screen.

With monitor capture, try disabling Aero.
 

pacholol

Member
17:18:34: Base resolution: 1600x900
17:18:34: Output resolution: 1600x900

Try lower the output resolution (resolution downscale) to 1.25 (720p) or lower since you are using a laptop temperatures will go kinda high so u need lower settings. Also your bitrate it's low for 900p (I recommend you to keep 800 for lower than 720p and 1250 for 720p)
 

Plokoon

New Member
Ok thx for the answers. I already set the downscale resolution to 1.25.

Also your bitrate it's low for 900p (I recommend you to keep 800 for lower than 720p and 1250 for 720p)

Sorry but i don't really understand what I need to change. If i want to stream in 720, i need to increase my bitrate at 1250 but if i want to keep my bitrate at 800 what do i need to do? And how do i know if a stream in 900 p?

I use the 1280x780 resolution in the sc2 setting, does that change something?

http://i.imgur.com/SmjWUKu.png Why is aero grey?
 

Ianuarius

Member
Bitrate of 800 makes 900p a little bit too messy to be enjoyable. :)

I stream at 720p and try (if possible) to get it over 1600.
 

pacholol

Member
Plokoon said:
Ok thx for the answers. I already set the downscale resolution to 1.25.

Also your bitrate it's low for 900p (I recommend you to keep 800 for lower than 720p and 1250 for 720p)

Sorry but i don't really understand what I need to change. If i want to stream in 720, i need to increase my bitrate at 1250 but if i want to keep my bitrate at 800 what do i need to do? And how do i know if a stream in 900 p?

I use the 1280x780 resolution in the sc2 setting, does that change something?

http://i.imgur.com/SmjWUKu.png Why is aero grey?

Ehm... let's see if you are using 1280x780 is that windowed mode or you use it on full screen O.o If you are running it on windowed mode and you only want to show the game I recommend you doing this : go to Configuration - Video - "Custom" and input the resolution of your windowed game (if it's 1280x720 or whatever just input it there) and then check if u still need a downscale for making it runing better.
However I recommend you to play on full screen windowed mode (so you get 1600x900 base resolution and you can downscale it to 1280x720) You can keep streaming 720p with 800 kbps it will not be top quality but it will be good for 30fps i think.
 

dodgepong

Administrator
Forum Admin
Your game capture isn't working because you're running OBS on the wrong GPU/ Follow this post to fix that: viewtopic.php?f=5&t=5965

But your computer isn't the most powerful, anyway. You have a dual-core CPU, which is pretty weak for streaming. I recommend downscaling further than 1.25, probably by at least 1.5x or even 2x.

Aero only needs to be disabled for monitor capture with Windows 7 and earlier. You have Windows 8, so you're fine.
 

Plokoon

New Member
Thank you all for the help, i can now stream in 480p with game capture at90-110 fps. I'll try at 720p but this is perfect for me already :)
 
Top