I'm having a bit of a frustrating problem streaming to twitch.tv where streaming applications take more bitrate then I set. I can even set it down to something as low as 1000kps, but eventually it will kick up the bitrate to something my connection can't manage, thus lagging the game and the stream.
My stream is set to 1800kps but it frequently jumps up to 2000kps+
I tried xsplit with the exact same results as well, so I'm debating if this is either some sort of shared problem with the way both programs work or maybe it's a problem with twitch. Any help would be much appreciated.
I should also mention - my stream setup was working fine up until about 2 weeks ago. Something changed either at twitch or OBS that started overusing my bandwidth. I'm aware of twitches requirement for CBR and keyframes set to 2, I had that on and it worked without trouble before that.
My stream is set to 1800kps but it frequently jumps up to 2000kps+

I tried xsplit with the exact same results as well, so I'm debating if this is either some sort of shared problem with the way both programs work or maybe it's a problem with twitch. Any help would be much appreciated.
I should also mention - my stream setup was working fine up until about 2 weeks ago. Something changed either at twitch or OBS that started overusing my bandwidth. I'm aware of twitches requirement for CBR and keyframes set to 2, I had that on and it worked without trouble before that.
Code:
21:40:42: Open Broadcaster Software v0.571b - 64bit ( ^ω^)
21:40:42: -------------------------------
21:40:42: CPU Name: Intel(R) Core(TM) i7 CPU 930 @ 2.80GHz
21:40:42: CPU Speed: 2806MHz
21:40:42: Physical Memory: 12279MB Total, 9198MB Free
21:40:42: stepping id: 5, model 10, family 6, type 0, extmodel 0, extfamily 0, HTT 1, logical cores 8, total cores 4
21:40:42: monitor 1: pos={0, 0}, size={1920, 1080}
21:40:42: monitor 2: pos={-900, -85}, size={900, 1600}
21:40:42: Windows Version: 6.1 Build 7601 S
21:40:42: Aero is Disabled
21:40:42: -------------------------------
21:40:42: OBS Modules:
21:40:42: Base Address Module
21:40:42: 000000003FCC0000 OBS.exe
21:40:42: 00000000EC0F0000 OBSApi.dll
21:40:42: 00000000F63E0000 DShowPlugin.dll
21:40:42: 00000000F62E0000 GraphicsCapture.dll
21:40:42: 00000000F85D0000 NoiseGate.dll
21:40:42: 00000000F63C0000 PSVPlugin.dll
21:40:42: ------------------------------------------
21:40:42: Adapter 1
21:40:42: Video Adapter: NVIDIA GeForce GTX 660 Ti
21:40:42: Video Adapter Dedicated Video Memory: 2086993920
21:40:42: Video Adapter Shared System Memory: 2147807232
21:40:42: Using fixed low latency mode, factor 20
21:40:42: =====Stream Start: 2013-10-10, 21:40:42===============================================
21:40:42: Multithreaded optimizations: On
21:40:42: Base resolution: 960x540
21:40:42: Output resolution: 960x540
21:40:42: ------------------------------------------
21:40:42: Loading up D3D10 on NVIDIA GeForce GTX 660 Ti...
21:40:42: ------------------------------------------
21:40:42: Audio Format: 48000hz
21:40:42: Playback device Default
21:40:42: ------------------------------------------
21:40:42: Using desktop audio input: SPDIF Interface (FiiO USB DAC-E07K)
21:40:42: ------------------------------------------
21:40:42: Using auxilary audio input: Microphone (Yeti Stereo Microphone)
21:40:42: ------------------------------------------
21:40:42: Audio Encoding: AAC
21:40:42: bitrate: 128
21:40:42: Using graphics capture
21:40:42: ------------------------------------------
21:40:42: Video Encoding: x264
21:40:42: fps: 25
21:40:42: width: 960, height: 540
21:40:42: preset: faster
21:40:42: profile: main
21:40:42: keyint: 50
21:40:42: CBR: yes
21:40:42: CFR: no
21:40:42: max bitrate: 1800
21:40:42: buffer size: 1800
21:40:42: ------------------------------------------
21:40:42: MMDeviceAudioSource: Frequency for device 'SPDIF Interface (FiiO USB DAC-E07K)' is 352800, samples per sec is 44100
21:40:42: MMDeviceAudioSource: Frequency for device 'Microphone (Yeti Stereo Microphone)' is 352800, samples per sec is 44100
21:40:45: Using RTMP service: Twitch / Justin.tv
21:40:45: Server selection: rtmp://live.justin.tv/app
21:40:45: Interface: Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller #2 (ethernet, 1000 mbps)
21:40:45: Completed handshake with rtmp://live.justin.tv/app in 80 ms.
21:40:46: SO_SNDBUF was at 8192
21:40:46: SO_SNDBUF is now 65536
21:40:47: SharedTexCapture hooked
21:41:41: RTMPPublisher::Socketloop: Increasing send buffer to ISB 131072 (buffer: 238576 / 246784)
21:43:00: Total frames encoded: 3421, total frames duplicated: 5 (0.15%)
21:43:00: Total frames rendered: 3420, number of late frames: 1 (0.03%) (it's okay for some frames to be late)
21:43:00: RTMPPublisher::SocketLoop: Graceful loop exit
21:43:00: Average send payload: 12283 bytes, average send interval: 51 ms
21:43:00: Number of times waited to send: 22, Waited for a total of 90162 bytes
21:43:00: Number of b-frames dropped: 25 (0.75%), Number of p-frames dropped: 25 (0.75%), Total 50 (1.5%)
21:43:00: Number of bytes sent: 31667776
21:43:00:
21:43:00: Profiler time results:
21:43:00:
21:43:00: ==============================================================
21:43:00: video thread frame - [100%] [avg time: 0.699 ms] [children: 0.143%] [unaccounted: 99.9%]
21:43:00: | scene->Preprocess - [0.143%] [avg time: 0.001 ms]
21:43:00: GPU download and conversion - [100%] [avg time: 0.393 ms] [children: 68.4%] [unaccounted: 31.6%]
21:43:00: | flush - [59.3%] [avg time: 0.233 ms]
21:43:00: | CopyResource - [8.4%] [avg time: 0.033 ms]
21:43:00: | conversion to 4:2:0 - [0.763%] [avg time: 0.003 ms]
21:43:00: Convert444Threads - [100%] [avg time: 0.549 ms] [children: 98.5%] [unaccounted: 1.46%]
21:43:00: | Convert444toNV12 - [98.5%] [avg time: 0.541 ms]
21:43:00: encoder thread frame - [100%] [avg time: 0.859 ms]
21:43:00: ==============================================================
21:43:00:
21:43:00:
21:43:00: Profiler CPU results:
21:43:00:
21:43:00: ==============================================================
21:43:00: video thread frame - [cpu time: avg 0.072 ms, total 249.602 ms] [avg calls per frame: 1]
21:43:00: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
21:43:00: GPU download and conversion - [cpu time: avg 0.022 ms, total 78 ms] [avg calls per frame: 1]
21:43:00: | flush - [cpu time: avg 0.009 ms, total 31.2 ms] [avg calls per frame: 1]
21:43:00: | CopyResource - [cpu time: avg 0.009 ms, total 31.2 ms] [avg calls per frame: 1]
21:43:00: | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
21:43:00: Convert444Threads - [cpu time: avg 0.624 ms, total 4243.23 ms] [avg calls per frame: 2]
21:43:00: | Convert444toNV12 - [cpu time: avg 0.621 ms, total 4227.63 ms] [avg calls per frame: 2]
21:43:00: encoder thread frame - [cpu time: avg 0.045 ms, total 156.001 ms] [avg calls per frame: 1]
21:43:00: ==============================================================
21:43:00:
21:43:00: =====Stream End: 2013-10-10, 21:43:00=================================================
Last game capture log:
2013-10-10, 21:30:19: we're booting up:
21:30:19: D3D9 Present
21:30:19: DXGI Present
21:30:19: (half life scientist) everything.. seems to be in order
21:30:19: D3D9EndScene called
21:30:19: D3DPRESENT_PARAMETERS {
21:30:19: BackBufferWidth: 1280
21:30:19: BackBufferHeight: 720
21:30:19: BackBufferFormat: D3DFMT_A8R8G8B8
21:30:19: BackBufferCount: 1
21:30:19: MultiSampleType: D3DMULTISAMPLE_NONE
21:30:19: MultiSampleQuality: 0
21:30:19: SwapEffect: D3DSWAPEFFECT_DISCARD
21:30:19: hDeviceWindow: 1443692
21:30:19: Windowed: true
21:30:19: EnableAutoDepthStencil: true
21:30:19: AutoDepthStencilFormat: D3DFMT_D24S8
21:30:19: Flags: None
21:30:19: FullScreen_RefreshRateInHz: 0
21:30:19: PresentationInterval: 0
21:30:19: };
21:30:19: successfully set up d3d9 hooks
21:30:19: D3D9Present called
21:30:19: DoD3D9GPUHook: success
21:30:19: D3DSURFACE_DESC {
21:30:19: Format: D3DFMT_A8R8G8B8
21:30:19: Type: D3DRTYPE_SURFACE
21:30:19: Usage: D3DUSAGE_RENDERTARGET
21:30:19: Pool: D3DPOOL_DEFAULT
21:30:19: MultiSampleType: D3DMULTISAMPLE_NONE
21:30:19: MultiSampleQuality: 0
21:30:19: Width: 1280
21:30:19: Height: 720
21:30:19: };
21:30:19: successfully capturing d3d9 frames via GPU
21:30:20: ---------------------- Cleared D3D9 Capture ----------------------
21:30:20: D3D9EndScene called
21:30:20: D3D9Present called
21:30:22: received restart event, capturing
21:30:22: DoD3D9GPUHook: success
21:30:22: D3DSURFACE_DESC {
21:30:22: Format: D3DFMT_A8R8G8B8
21:30:22: Type: D3DRTYPE_SURFACE
21:30:22: Usage: D3DUSAGE_RENDERTARGET
21:30:22: Pool: D3DPOOL_DEFAULT
21:30:22: MultiSampleType: D3DMULTISAMPLE_NONE
21:30:22: MultiSampleQuality: 0
21:30:22: Width: 1280
21:30:22: Height: 720
21:30:22: };
21:30:22: successfully capturing d3d9 frames via GPU
21:33:44: D3D9Reset called
21:33:44: ---------------------- Cleared D3D9 Capture ----------------------
21:33:44: D3DPRESENT_PARAMETERS {
21:33:44: BackBufferWidth: 1920
21:33:44: BackBufferHeight: 1080
21:33:44: BackBufferFormat: D3DFMT_A8R8G8B8
21:33:44: BackBufferCount: 1
21:33:44: MultiSampleType: D3DMULTISAMPLE_NONE
21:33:44: MultiSampleQuality: 0
21:33:44: SwapEffect: D3DSWAPEFFECT_DISCARD
21:33:44: hDeviceWindow: 1443692
21:33:44: Windowed: true
21:33:44: EnableAutoDepthStencil: true
21:33:44: AutoDepthStencilFormat: D3DFMT_D24S8
21:33:44: Flags: None
21:33:44: FullScreen_RefreshRateInHz: 0
21:33:44: PresentationInterval: 0
21:33:44: };
21:33:44: successfully set up d3d9 hooks
21:33:45: D3D9EndScene called
21:33:45: D3D9Present called
21:33:45: DoD3D9GPUHook: success
21:33:45: D3DSURFACE_DESC {
21:33:45: Format: D3DFMT_A8R8G8B8
21:33:45: Type: D3DRTYPE_SURFACE
21:33:45: Usage: D3DUSAGE_RENDERTARGET
21:33:45: Pool: D3DPOOL_DEFAULT
21:33:45: MultiSampleType: D3DMULTISAMPLE_NONE
21:33:45: MultiSampleQuality: 0
21:33:45: Width: 1920
21:33:45: Height: 1080
21:33:45: };
21:33:45: successfully capturing d3d9 frames via GPU
21:37:53: D3D9Reset called
21:37:53: ---------------------- Cleared D3D9 Capture ----------------------
21:37:53: D3DPRESENT_PARAMETERS {
21:37:53: BackBufferWidth: 1280
21:37:53: BackBufferHeight: 720
21:37:53: BackBufferFormat: D3DFMT_A8R8G8B8
21:37:53: BackBufferCount: 1
21:37:53: MultiSampleType: D3DMULTISAMPLE_NONE
21:37:53: MultiSampleQuality: 0
21:37:53: SwapEffect: D3DSWAPEFFECT_DISCARD
21:37:53: hDeviceWindow: 1443692
21:37:53: Windowed: true
21:37:53: EnableAutoDepthStencil: true
21:37:53: AutoDepthStencilFormat: D3DFMT_D24S8
21:37:53: Flags: None
21:37:53: FullScreen_RefreshRateInHz: 0
21:37:53: PresentationInterval: 0
21:37:53: };
21:37:53: successfully set up d3d9 hooks
21:37:53: D3D9EndScene called
21:37:53: D3D9Present called
21:37:53: DoD3D9GPUHook: success
21:37:53: D3DSURFACE_DESC {
21:37:53: Format: D3DFMT_A8R8G8B8
21:37:53: Type: D3DRTYPE_SURFACE
21:37:53: Usage: D3DUSAGE_RENDERTARGET
21:37:53: Pool: D3DPOOL_DEFAULT
21:37:53: MultiSampleType: D3DMULTISAMPLE_NONE
21:37:53: MultiSampleQuality: 0
21:37:53: Width: 1280
21:37:53: Height: 720
21:37:53: };
21:37:53: successfully capturing d3d9 frames via GPU
21:38:09: ---------------------- Cleared D3D9 Capture ----------------------
21:38:09: D3D9EndScene called
21:38:09: D3D9Present called
21:38:14: D3D9Reset called
21:38:14: ---------------------- Cleared D3D9 Capture ----------------------
21:38:14: successfully set up d3d9 hooks
21:38:15: D3D9EndScene called
21:38:15: D3D9Present called
21:38:50: received restart event, capturing
21:38:50: DoD3D9GPUHook: success
21:38:50: D3DSURFACE_DESC {
21:38:50: Format: D3DFMT_A8R8G8B8
21:38:50: Type: D3DRTYPE_SURFACE
21:38:50: Usage: D3DUSAGE_RENDERTARGET
21:38:50: Pool: D3DPOOL_DEFAULT
21:38:50: MultiSampleType: D3DMULTISAMPLE_NONE
21:38:50: MultiSampleQuality: 0
21:38:50: Width: 1280
21:38:50: Height: 720
21:38:50: };
21:38:50: successfully capturing d3d9 frames via GPU
21:40:11: D3D9Reset called
21:40:11: ---------------------- Cleared D3D9 Capture ----------------------
21:40:11: successfully set up d3d9 hooks
21:40:12: D3D9EndScene called
21:40:12: D3D9Present called
21:40:12: DoD3D9GPUHook: success
21:40:12: D3DSURFACE_DESC {
21:40:12: Format: D3DFMT_A8R8G8B8
21:40:12: Type: D3DRTYPE_SURFACE
21:40:12: Usage: D3DUSAGE_RENDERTARGET
21:40:12: Pool: D3DPOOL_DEFAULT
21:40:12: MultiSampleType: D3DMULTISAMPLE_NONE
21:40:12: MultiSampleQuality: 0
21:40:12: Width: 1280
21:40:12: Height: 720
21:40:12: };
21:40:12: successfully capturing d3d9 frames via GPU
21:40:24: ---------------------- Cleared D3D9 Capture ----------------------
21:40:24: D3D9EndScene called
21:40:24: D3D9Present called
21:40:30: D3D9Reset called
21:40:30: ---------------------- Cleared D3D9 Capture ----------------------
21:40:30: successfully set up d3d9 hooks
21:40:31: D3D9EndScene called
21:40:31: D3D9Present called
21:40:40: D3D9Reset called
21:40:40: ---------------------- Cleared D3D9 Capture ----------------------
21:40:40: successfully set up d3d9 hooks
21:40:41: D3D9EndScene called
21:40:41: D3D9Present called
21:40:43: D3D9Reset called
21:40:43: ---------------------- Cleared D3D9 Capture ----------------------
21:40:43: D3DPRESENT_PARAMETERS {
21:40:43: BackBufferWidth: 1920
21:40:43: BackBufferHeight: 1080
21:40:43: BackBufferFormat: D3DFMT_A8R8G8B8
21:40:43: BackBufferCount: 1
21:40:43: MultiSampleType: D3DMULTISAMPLE_NONE
21:40:43: MultiSampleQuality: 0
21:40:43: SwapEffect: D3DSWAPEFFECT_DISCARD
21:40:43: hDeviceWindow: 1443692
21:40:43: Windowed: true
21:40:43: EnableAutoDepthStencil: true
21:40:43: AutoDepthStencilFormat: D3DFMT_D24S8
21:40:43: Flags: None
21:40:43: FullScreen_RefreshRateInHz: 0
21:40:43: PresentationInterval: 0
21:40:43: };
21:40:43: successfully set up d3d9 hooks
21:40:44: D3D9EndScene called
21:40:44: D3D9Present called
21:40:47: received restart event, capturing
21:40:47: DoD3D9GPUHook: success
21:40:47: D3DSURFACE_DESC {
21:40:47: Format: D3DFMT_A8R8G8B8
21:40:47: Type: D3DRTYPE_SURFACE
21:40:47: Usage: D3DUSAGE_RENDERTARGET
21:40:47: Pool: D3DPOOL_DEFAULT
21:40:47: MultiSampleType: D3DMULTISAMPLE_NONE
21:40:47: MultiSampleQuality: 0
21:40:47: Width: 1920
21:40:47: Height: 1080
21:40:47: };
21:40:47: successfully capturing d3d9 frames via GPU
21:43:00: ---------------------- Cleared D3D9 Capture ----------------------
21:43:00: D3D9EndScene called
21:43:00: D3D9Present called
21:48:25: D3D9Reset called
21:48:25: ---------------------- Cleared D3D9 Capture ----------------------
21:48:25: D3DPRESENT_PARAMETERS {
21:48:25: BackBufferWidth: 1280
21:48:25: BackBufferHeight: 720
21:48:25: BackBufferFormat: D3DFMT_A8R8G8B8
21:48:25: BackBufferCount: 1
21:48:25: MultiSampleType: D3DMULTISAMPLE_NONE
21:48:25: MultiSampleQuality: 0
21:48:25: SwapEffect: D3DSWAPEFFECT_DISCARD
21:48:25: hDeviceWindow: 1443692
21:48:25: Windowed: true
21:48:25: EnableAutoDepthStencil: true
21:48:25: AutoDepthStencilFormat: D3DFMT_D24S8
21:48:25: Flags: None
21:48:25: FullScreen_RefreshRateInHz: 0
21:48:25: PresentationInterval: 0
21:48:25: };
21:48:25: successfully set up d3d9 hooks
21:48:25: D3D9EndScene called
21:48:25: D3D9Present called