I recently discovered OBS and decided to give it a go, but have ran into a performance issue that I have been unable to solve myself. I currently use a combination of DXtory and FFsplit to stream at 1680x1050@30fps with a 5000 bitrate. This was with very little impact on in game fps.
When trying the same settings with OBS I get a large drop(from 110 fps to 20 fps) with the in game fps and the stream is only able to maintain about 20 fps. I can scale it down to 1120x700@30fps and the stream maintains the constant 30 fps, but the in game fps still gets tanked to the 40-50 range.
Upon investigating this I noticed that the CopyResource times from the OBS logs were extremely high(about 90%). My first thoughts is that OBS is using the GPU more then FFSplit does(it just spawns a FFmpeg process). My GPU is a bit dated(GTX 260), but I still think that is a bit much for a performance hit since my CPU is sitting under 50% usage(this is with the game and OBS going) during this. Also it might be important to note this happens at the menu of the game, so GPU strain should be minimal at this point anyways. Not tried testing in game yet.
Here are two OBS logs I made. One at 1680x1050 and the other at 1120x700. Both have a very high CopyResource wait time, and from what I've seen of other logs posted here this is abnormal.
When trying the same settings with OBS I get a large drop(from 110 fps to 20 fps) with the in game fps and the stream is only able to maintain about 20 fps. I can scale it down to 1120x700@30fps and the stream maintains the constant 30 fps, but the in game fps still gets tanked to the 40-50 range.
Upon investigating this I noticed that the CopyResource times from the OBS logs were extremely high(about 90%). My first thoughts is that OBS is using the GPU more then FFSplit does(it just spawns a FFmpeg process). My GPU is a bit dated(GTX 260), but I still think that is a bit much for a performance hit since my CPU is sitting under 50% usage(this is with the game and OBS going) during this. Also it might be important to note this happens at the menu of the game, so GPU strain should be minimal at this point anyways. Not tried testing in game yet.
Here are two OBS logs I made. One at 1680x1050 and the other at 1120x700. Both have a very high CopyResource wait time, and from what I've seen of other logs posted here this is abnormal.
Open Broadcaster Software v0.465a - 32bit (´・ω・`)
-------------------------------
CPU Name: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
CPU Speed: 3392MHz
Physical Memory: 4095MB Total, 4095MB Free
stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
Windows Version: 6.2 Build 9200
Aero is Enabled
------------------------------------------
Adapter 1
Video Adapter: NVIDIA GeForce GTX 260
Video Adapter Dedicated Video Memory: 911605760
Video Adapter Shared System Memory: 3354996736
------------------------------------------
Adapter 2
Video Adapter: Microsoft Basic Render Driver
Video Adapter Dedicated Video Memory: 0
Video Adapter Shared System Memory: 268435456
=====Stream Start=====================================================================
Multithreaded optimizations: On
Base resolution: 1680x1050
Output resolution: 1680x1050
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
bitrate: 128
------------------------------------------
device: Dxtory Video 1,
device id (null),
chosen type: RGB32, usingFourCC: false, res: 1680x1050 - 1680x1050, fps: 30-30, fourCC: 00000000
Using directshow input
------------------------------------------
Video Encoding: x264
fps: 30
width: 1680, height: 1050
preset: veryfast
CBR: no
max bitrate: 5000
buffer size: 1000
quality: 8
------------------------------------------
Total frames rendered: 1318, number of frames that lagged: 1279 (97.04%) (it's okay for some frames to lag)
=====Stream End=======================================================================
Profiler results:
==============================================================
frame - [100%] [avg time: 45.439 ms] [avg calls per frame: 1] [children: 98.8%] [unaccounted: 1.19%]
| scene->Preprocess - [2.81%] [avg time: 1.276 ms] [avg calls per frame: 1]
| video encoding and uploading - [96%] [avg time: 43.623 ms] [avg calls per frame: 1] [children: 96%] [unaccounted: 0.044%]
| | CopyResource - [91.4%] [avg time: 41.515 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.0594%] [avg time: 0.027 ms] [avg calls per frame: 0]
| | call to encoder - [4.53%] [avg time: 2.06 ms] [avg calls per frame: 0]
| | sending stuff out - [0.0022%] [avg time: 0.001 ms] [avg calls per frame: 0]
==============================================================
-------------------------------
CPU Name: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
CPU Speed: 3392MHz
Physical Memory: 4095MB Total, 4095MB Free
stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
Windows Version: 6.2 Build 9200
Aero is Enabled
------------------------------------------
Adapter 1
Video Adapter: NVIDIA GeForce GTX 260
Video Adapter Dedicated Video Memory: 911605760
Video Adapter Shared System Memory: 3354996736
------------------------------------------
Adapter 2
Video Adapter: Microsoft Basic Render Driver
Video Adapter Dedicated Video Memory: 0
Video Adapter Shared System Memory: 268435456
=====Stream Start=====================================================================
Multithreaded optimizations: On
Base resolution: 1680x1050
Output resolution: 1680x1050
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
bitrate: 128
------------------------------------------
device: Dxtory Video 1,
device id (null),
chosen type: RGB32, usingFourCC: false, res: 1680x1050 - 1680x1050, fps: 30-30, fourCC: 00000000
Using directshow input
------------------------------------------
Video Encoding: x264
fps: 30
width: 1680, height: 1050
preset: veryfast
CBR: no
max bitrate: 5000
buffer size: 1000
quality: 8
------------------------------------------
Total frames rendered: 1318, number of frames that lagged: 1279 (97.04%) (it's okay for some frames to lag)
=====Stream End=======================================================================
Profiler results:
==============================================================
frame - [100%] [avg time: 45.439 ms] [avg calls per frame: 1] [children: 98.8%] [unaccounted: 1.19%]
| scene->Preprocess - [2.81%] [avg time: 1.276 ms] [avg calls per frame: 1]
| video encoding and uploading - [96%] [avg time: 43.623 ms] [avg calls per frame: 1] [children: 96%] [unaccounted: 0.044%]
| | CopyResource - [91.4%] [avg time: 41.515 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.0594%] [avg time: 0.027 ms] [avg calls per frame: 0]
| | call to encoder - [4.53%] [avg time: 2.06 ms] [avg calls per frame: 0]
| | sending stuff out - [0.0022%] [avg time: 0.001 ms] [avg calls per frame: 0]
==============================================================
Open Broadcaster Software v0.465a - 32bit (´・ω・`)
-------------------------------
CPU Name: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
CPU Speed: 3392MHz
Physical Memory: 4095MB Total, 4095MB Free
stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
Windows Version: 6.2 Build 9200
Aero is Enabled
------------------------------------------
Adapter 1
Video Adapter: NVIDIA GeForce GTX 260
Video Adapter Dedicated Video Memory: 911605760
Video Adapter Shared System Memory: 3354996736
------------------------------------------
Adapter 2
Video Adapter: Microsoft Basic Render Driver
Video Adapter Dedicated Video Memory: 0
Video Adapter Shared System Memory: 268435456
=====Stream Start=====================================================================
Multithreaded optimizations: On
Base resolution: 1680x1050
Output resolution: 1120x700
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
bitrate: 128
------------------------------------------
device: Dxtory Video 1,
device id (null),
chosen type: RGB32, usingFourCC: false, res: 1680x1050 - 1680x1050, fps: 30-30, fourCC: 00000000
Using directshow input
------------------------------------------
Video Encoding: x264
fps: 30
width: 1120, height: 700
preset: veryfast
CBR: no
max bitrate: 5000
buffer size: 1000
quality: 8
------------------------------------------
Total frames rendered: 517, number of frames that lagged: 22 (4.26%) (it's okay for some frames to lag)
=====Stream End=======================================================================
Profiler results:
==============================================================
frame - [100%] [avg time: 24.297 ms] [avg calls per frame: 1] [children: 98.2%] [unaccounted: 1.84%]
| scene->Preprocess - [4.77%] [avg time: 1.158 ms] [avg calls per frame: 1]
| video encoding and uploading - [93.4%] [avg time: 22.692 ms] [avg calls per frame: 1] [children: 93.3%] [unaccounted: 0.0453%]
| | CopyResource - [89.4%] [avg time: 21.715 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.0741%] [avg time: 0.018 ms] [avg calls per frame: 0]
| | call to encoder - [3.9%] [avg time: 0.947 ms] [avg calls per frame: 0]
| | sending stuff out - [0.00412%] [avg time: 0.001 ms] [avg calls per frame: 0]
==============================================================
-------------------------------
CPU Name: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
CPU Speed: 3392MHz
Physical Memory: 4095MB Total, 4095MB Free
stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
Windows Version: 6.2 Build 9200
Aero is Enabled
------------------------------------------
Adapter 1
Video Adapter: NVIDIA GeForce GTX 260
Video Adapter Dedicated Video Memory: 911605760
Video Adapter Shared System Memory: 3354996736
------------------------------------------
Adapter 2
Video Adapter: Microsoft Basic Render Driver
Video Adapter Dedicated Video Memory: 0
Video Adapter Shared System Memory: 268435456
=====Stream Start=====================================================================
Multithreaded optimizations: On
Base resolution: 1680x1050
Output resolution: 1120x700
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
bitrate: 128
------------------------------------------
device: Dxtory Video 1,
device id (null),
chosen type: RGB32, usingFourCC: false, res: 1680x1050 - 1680x1050, fps: 30-30, fourCC: 00000000
Using directshow input
------------------------------------------
Video Encoding: x264
fps: 30
width: 1120, height: 700
preset: veryfast
CBR: no
max bitrate: 5000
buffer size: 1000
quality: 8
------------------------------------------
Total frames rendered: 517, number of frames that lagged: 22 (4.26%) (it's okay for some frames to lag)
=====Stream End=======================================================================
Profiler results:
==============================================================
frame - [100%] [avg time: 24.297 ms] [avg calls per frame: 1] [children: 98.2%] [unaccounted: 1.84%]
| scene->Preprocess - [4.77%] [avg time: 1.158 ms] [avg calls per frame: 1]
| video encoding and uploading - [93.4%] [avg time: 22.692 ms] [avg calls per frame: 1] [children: 93.3%] [unaccounted: 0.0453%]
| | CopyResource - [89.4%] [avg time: 21.715 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.0741%] [avg time: 0.018 ms] [avg calls per frame: 0]
| | call to encoder - [3.9%] [avg time: 0.947 ms] [avg calls per frame: 0]
| | sending stuff out - [0.00412%] [avg time: 0.001 ms] [avg calls per frame: 0]
==============================================================