Question / Help Upload Speed + Bitrate

Sajirou

New Member
My current upload speed is around 32-37 MBPS, what should I set my bitrate too?

I've been finding my bitrate fluctuating too much for Twitch.TV's pleasure even with CBR and CFR ticked on, it doesn't offer a constant bitrate. So I'm wondering if maybe I'm setting my bitrate too high and its causing the bitrate to be not constant.

Currently I set bitrate at 2000.
 

Sajirou

New Member
Eh no matter what bitrate I give it, the framerate never remains constant, even with CBR and CFR. It just fluctuates WILDLY, even 1000 over whatever I set it at.
 

alpinlol

Active Member
bitrate with cbr fluctuates at a max +/- 200 as far as i experienced it myself
you dont really need cfr anymore for streaming only if you want to edit your stuff or do whatever else

also the twitch quality indicator is pure shit you cant trust it ... when i start streaming it says i got around 1900 min and max 3800 and after 10 minutes or so i refresh the page and it says excellent
 

Sajirou

New Member
:::.. Internet Speed Test Result Details ..:::
Download Connection Speed:: 37429 Kbps or 37.4 Mbps
Download Speed Test Size:: 33.9 MB or 34688 kB or 35520512 bytes
Download Binary File Transfer Speed:: 4679 kB/s or 4.7 MB/s
Upload Connection Speed:: 18116 Kbps or 18.1 Mbps
Upload Speed Test Size:: 30.6 MB or 31360 kB or 32112640 bytes
Upload Binary File Transfer Speed:: 2264 kB/s
Timed:: Download: 7.592 seconds | Upload: 14.181 seconds or 2.3 MB/s
Tested At:: http://TestMy.net Version 13
Test Time:: 2013-08-20 00:32:23 Local Time
Location:: (Blocked From View, why would I leave this in? Lol >> Destination:: Dallas, TX US
Validation:: http://testmy.net/db/OHA2hYQ.ZFjseha
TiP Measurement Summary (Download):: Min 17.55 Mbps | Middle Avg 39.53 Mbps | Max 42.3 Mbps | 43% Variance
TiP Data Points:: 19.74 Mbps, 32.6 Mbps, 42.3 Mbps, 41.8 Mbps, 41.26 Mbps, 41.26 Mbps, 40.99 Mbps, 41.32 Mbps, 41.39 Mbps, 41.19 Mbps, 41.26 Mbps, 40.66 Mbps, 40.66 Mbps, 41.05 Mbps, 19.74 Mbps, 41.6 Mbps, 41.39 Mbps, 41.6 Mbps, 17.55 Mbps
More Stats:: http://testmy.net/compID/6526334025894
User Agent:: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0 [!]

I see the upload at 14, but speedtest says I make 30-40 MBPS upload, so I dunno.

(Log File, next post..)
 

Sajirou

New Member
Code:
13:50:53: Open Broadcaster Software v0.55b - 64bit ( ^ω^)
13:50:53: -------------------------------
13:50:53: CPU Name: Intel(R) Core(TM) i7 CPU         930  @ 2.80GHz
13:50:53: CPU Speed: 2833MHz
13:50:53: Physical Memory:  12286MB Total, 9541MB Free
13:50:53: stepping id: 5, model 10, family 6, type 0, extmodel 0, extfamily 0, HTT 1, logical cores 8, total cores 4
13:50:53: monitor 1: pos={1440, 132}, size={1366, 768}
13:50:53: monitor 2: pos={0, 0}, size={1440, 900}
13:50:53: Windows Version: 6.1 Build 7601 S
13:50:53: Aero is Disabled
13:50:53: -------------------------------
13:50:53: OBS Modules:
13:50:53: Base Address     Module
13:50:53: 000000003F920000 OBS.exe
13:50:53: 00000000EC920000 OBSApi.dll
13:50:53: 00000000EE5B0000 DShowPlugin.dll
13:50:53: 00000000ECF90000 GraphicsCapture.dll
13:50:53: 00000000EE590000 NoiseGate.dll
13:50:53: 00000000ECF70000 PSVPlugin.dll
13:50:53: ------------------------------------------
13:50:53: Adapter 1
13:50:53:   Video Adapter: NVIDIA GeForce GTX 480
13:50:53:   Video Adapter Dedicated Video Memory: 1560739840
13:50:53:   Video Adapter Shared System Memory: 2683908096
13:50:53: =====Stream Start: 2013-08-19, 13:50:53===============================================
13:50:53:   Multithreaded optimizations: On
13:50:53:   Base resolution: 1280x720
13:50:53:   Output resolution: 1280x720
13:50:53: ------------------------------------------
13:50:53: Loading up D3D10 on NVIDIA GeForce GTX 480...
13:50:54: Playback device {0.0.0.00000000}.{4b446f6b-2e06-4ab0-b14c-3a864e4cce78}
13:50:54: ------------------------------------------
13:50:54: Using desktop audio input: Speakers (Realtek High Definition Audio)
13:50:54: ------------------------------------------
13:50:54: Using auxilary audio input: Microphone (Realtek High Definition Audio)
13:50:54: ------------------------------------------
13:50:54: Audio Encoding: MP3
13:50:54:     bitrate: 128
13:50:54: Using graphics capture
13:50:54: Using bitmap image
13:50:54: ------------------------------------------
13:50:54: Video Encoding: x264
13:50:54:     fps: 30
13:50:54:     width: 1280, height: 720
13:50:54:     preset: veryfast
13:50:54:     CBR: yes
13:50:54:     CFR: yes
13:50:54:     max bitrate: 2500
13:50:54: ------------------------------------------
13:50:54: MMDeviceAudioSource: Frequency for device 'Speakers (Realtek High Definition Audio)' is 352800, samples per sec is 44100
13:50:54: MMDeviceAudioSource: Frequency for device 'Microphone (Realtek High Definition Audio)' is 384000, samples per sec is 48000
13:51:05: SharedTexCapture hooked
13:51:13: Total frames rendered: 566, number of late frames: 2 (0.35%) (it's okay for some frames to be late)
13:51:13: Total duplicated frames to ensure constant framerate: 4 (0.71%)
13:51:14: 
13:51:14: Profiler results:
13:51:14: 
13:51:14: ==============================================================
13:51:14: frame - [100%] [avg time: 2.681 ms (cpu time: avg 1.901 ms, total 1076.41 ms)] [avg calls per frame: 1] [children: 99.9%] [unaccounted: 0.149%]
13:51:14: | frame preprocessing and rendering - [29.3%] [avg time: 0.786 ms (cpu time: avg 0.468 ms, total 265.203 ms)] [avg calls per frame: 1] [children: 0.0373%] [unaccounted: 29.3%]
13:51:14: | | scene->Preprocess - [0.0373%] [avg time: 0.001 ms (cpu time: avg 0.027 ms, total 15.6 ms)] [avg calls per frame: 1]
13:51:14: | video encoding and uploading - [70.5%] [avg time: 1.891 ms (cpu time: avg 1.433 ms, total 811.203 ms)] [avg calls per frame: 1] [children: 70%] [unaccounted: 0.559%]
13:51:14: | | flush - [3.54%] [avg time: 0.095 ms (cpu time: avg 0.055 ms, total 31.2 ms)] [avg calls per frame: 1]
13:51:14: | | CopyResource - [0.783%] [avg time: 0.021 ms (cpu time: avg 0.082 ms, total 46.8 ms)] [avg calls per frame: 0]
13:51:14: | | conversion to 4:2:0 - [1.08%] [avg time: 0.029 ms (cpu time: avg 0 ms, total 0 ms)] [avg calls per frame: 0]
13:51:14: | | call to encoder - [64.5%] [avg time: 1.73 ms (cpu time: avg 1.295 ms, total 733.203 ms)] [avg calls per frame: 0]
13:51:14: | | sending stuff out - [0.0373%] [avg time: 0.001 ms (cpu time: avg 0 ms, total 0 ms)] [avg calls per frame: 0]
13:51:14: | Convert444Threads - [2.44e+003%] [avg time: 65.312 ms (cpu time: avg 1.295 ms, total 733.204 ms)] [avg calls per frame: 1]
13:51:14: ==============================================================
13:51:14: 
13:51:14: =====Stream End: 2013-08-19, 13:51:14=================================================
13:51:16: =====Stream Start: 2013-08-19, 13:51:16===============================================
13:51:16:   Multithreaded optimizations: On
13:51:16:   Base resolution: 1280x720
13:51:16:   Output resolution: 1280x720
13:51:16: ------------------------------------------
13:51:16: Loading up D3D10 on NVIDIA GeForce GTX 480...
13:51:16: Playback device {0.0.0.00000000}.{4b446f6b-2e06-4ab0-b14c-3a864e4cce78}
13:51:16: ------------------------------------------
13:51:16: Using desktop audio input: Speakers (Realtek High Definition Audio)
13:51:16: ------------------------------------------
13:51:16: Using auxilary audio input: Microphone (Realtek High Definition Audio)
13:51:16: ------------------------------------------
13:51:16: Audio Encoding: MP3
13:51:16:     bitrate: 128
13:51:16: Using graphics capture
13:51:16: Using bitmap image
13:51:16: ------------------------------------------
13:51:16: Video Encoding: x264
13:51:16:     fps: 30
13:51:16:     width: 1280, height: 720
13:51:16:     preset: veryfast
13:51:16:     CBR: yes
13:51:16:     CFR: yes
13:51:16:     max bitrate: 2500
13:51:16: ------------------------------------------
13:51:16: MMDeviceAudioSource: Frequency for device 'Speakers (Realtek High Definition Audio)' is 352800, samples per sec is 44100
13:51:16: MMDeviceAudioSource: Frequency for device 'Microphone (Realtek High Definition Audio)' is 384000, samples per sec is 48000
13:51:16: SharedTexCapture hooked
13:51:18: Using RTMP service: Twitch / Justin.tv
13:51:18:   Server selection: rtmp://live-jfk.justin.tv/app
13:51:18:   Interface: Realtek PCIe GBE Family Controller (ethernet, 100 mbps)
13:51:20: SO_SNDBUF was at 8192
13:51:20: SO_SNDBUF is now 65536
13:51:22: GraphicsCaptureSource::NewCapture:  eliminating old capture
13:51:22: SharedTexCapture hooked
13:51:59: GraphicsCaptureSource::NewCapture:  eliminating old capture
13:51:59: SharedTexCapture hooked
13:52:50: GraphicsCaptureSource::NewCapture:  eliminating old capture
13:52:50: SharedTexCapture hooked
13:54:35: GraphicsCaptureSource::NewCapture:  eliminating old capture
13:54:35: SharedTexCapture hooked
13:54:48: GraphicsCaptureSource::NewCapture:  eliminating old capture
13:54:48: SharedTexCapture hooked
17:33:34: Capture window 0x00080090 invalid or changing, terminating capture
17:35:16: SharedTexCapture hooked
17:41:21: GraphicsCaptureSource::NewCapture:  eliminating old capture
17:41:21: SharedTexCapture hooked
17:48:28: GraphicsCaptureSource::NewCapture:  eliminating old capture
17:48:28: SharedTexCapture hooked
18:49:14: GraphicsCaptureSource::NewCapture:  eliminating old capture
18:49:14: SharedTexCapture hooked
23:31:39: Capture window 0x000F00E6 invalid or changing, terminating capture
23:31:44: Total frames rendered: 1044682, number of late frames: 57 (0.01%) (it's okay for some frames to be late)
23:31:44: Total duplicated frames to ensure constant framerate: 11928 (1.14%)
23:31:44: RTMPPublisher::SocketLoop: Graceful loop exit
23:31:44: Number of times waited to send: 4, Waited for a total of 16388 bytes
23:31:44: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
23:31:44: 
23:31:44: Profiler results:
23:31:44: 
23:31:44: ==============================================================
23:31:44: frame - [100%] [avg time: 1.767 ms (cpu time: avg 1.547 ms, total 1.61715e+006 ms)] [avg calls per frame: 1] [children: 99.8%] [unaccounted: 0.226%]
23:31:44: | frame preprocessing and rendering - [8.94%] [avg time: 0.158 ms (cpu time: avg 0.156 ms, total 163193 ms)] [avg calls per frame: 1] [children: 0.0566%] [unaccounted: 8.89%]
23:31:44: | | scene->Preprocess - [0.0566%] [avg time: 0.001 ms (cpu time: avg 0.001 ms, total 1341.61 ms)] [avg calls per frame: 1]
23:31:44: | video encoding and uploading - [90.8%] [avg time: 1.605 ms (cpu time: avg 1.39 ms, total 1.45234e+006 ms)] [avg calls per frame: 1] [children: 89.9%] [unaccounted: 0.905%]
23:31:44: | | flush - [6.79%] [avg time: 0.12 ms (cpu time: avg 0.088 ms, total 92929.8 ms)] [avg calls per frame: 1]
23:31:44: | | CopyResource - [0.679%] [avg time: 0.012 ms (cpu time: avg 0.011 ms, total 12121.3 ms)] [avg calls per frame: 0]
23:31:44: | | conversion to 4:2:0 - [1.64%] [avg time: 0.029 ms (cpu time: avg 0.004 ms, total 4664.44 ms)] [avg calls per frame: 0]
23:31:44: | | call to encoder - [78.3%] [avg time: 1.384 ms (cpu time: avg 1.256 ms, total 1.31236e+006 ms)] [avg calls per frame: 1]
23:31:44: | | sending stuff out - [2.49%] [avg time: 0.044 ms (cpu time: avg 0.021 ms, total 22214.5 ms)] [avg calls per frame: 1]
23:31:44: | Convert444Threads - [3.77e+003%] [avg time: 66.673 ms (cpu time: avg 1.435 ms, total 1.49961e+006 ms)] [avg calls per frame: 1]
23:31:44: ==============================================================
23:31:44: 
23:31:44: =====Stream End: 2013-08-19, 23:31:44=================================================


Last game capture log:
2013-08-19, 17:35:06: we're booting up: 
17:35:06: D3D9 Present
17:35:06: (half life scientist) everything..  seems to be in order
17:35:16: D3D9EndScene called
17:35:16: D3DPRESENT_PARAMETERS {
17:35:16: 	BackBufferWidth: 1440
17:35:16: 	BackBufferHeight: 900
17:35:16: 	BackBufferFormat: D3DFMT_A8R8G8B8
17:35:16: 	BackBufferCount: 1
17:35:16: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:35:16: 	MultiSampleQuality: 0
17:35:16: 	SwapEffect: D3DSWAPEFFECT_DISCARD
17:35:16: 	hDeviceWindow: 983270
17:35:16: 	Windowed: false
17:35:16: 	EnableAutoDepthStencil: false
17:35:16: 	AutoDepthStencilFormat: D3DFMT_UNKNOWN
17:35:16: 	Flags: D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 
17:35:16: 	FullScreen_RefreshRateInHz: 60
17:35:16: 	PresentationInterval: 1
17:35:16: };
17:35:16: successfully set up d3d9 hooks
17:35:16: D3D9Present called
17:35:16: DoD3D9GPUHook: success
17:35:16: D3DSURFACE_DESC {
17:35:16: 	Format: D3DFMT_A8R8G8B8
17:35:16: 	Type: D3DRTYPE_SURFACE
17:35:16: 	Usage: D3DUSAGE_RENDERTARGET 
17:35:16: 	Pool: D3DPOOL_DEFAULT
17:35:16: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:35:16: 	MultiSampleQuality: 0
17:35:16: 	Width: 1440
17:35:16: 	Height: 900
17:35:16: };
17:35:16: successfully capturing d3d9 frames via GPU
17:41:18: D3D9Reset called
17:41:18: ---------------------- Cleared D3D9 Capture ----------------------
17:41:19: successfully set up d3d9 hooks
17:41:21: D3D9EndScene called
17:41:21: D3D9Present called
17:41:21: DoD3D9GPUHook: success
17:41:21: D3DSURFACE_DESC {
17:41:21: 	Format: D3DFMT_A8R8G8B8
17:41:21: 	Type: D3DRTYPE_SURFACE
17:41:21: 	Usage: D3DUSAGE_RENDERTARGET 
17:41:21: 	Pool: D3DPOOL_DEFAULT
17:41:21: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:41:21: 	MultiSampleQuality: 0
17:41:21: 	Width: 1440
17:41:21: 	Height: 900
17:41:21: };
17:41:21: successfully capturing d3d9 frames via GPU
17:48:25: D3D9Reset called
17:48:25: ---------------------- Cleared D3D9 Capture ----------------------
17:48:26: successfully set up d3d9 hooks
17:48:28: D3D9EndScene called
17:48:28: D3D9Present called
17:48:28: DoD3D9GPUHook: success
17:48:28: D3DSURFACE_DESC {
17:48:28: 	Format: D3DFMT_A8R8G8B8
17:48:28: 	Type: D3DRTYPE_SURFACE
17:48:28: 	Usage: D3DUSAGE_RENDERTARGET 
17:48:28: 	Pool: D3DPOOL_DEFAULT
17:48:28: 	MultiSampleType: D3DMULTISAMPLE_NONE
17:48:28: 	MultiSampleQuality: 0
17:48:28: 	Width: 1440
17:48:28: 	Height: 900
17:48:28: };
17:48:28: successfully capturing d3d9 frames via GPU
18:49:10: D3D9Reset called
18:49:10: ---------------------- Cleared D3D9 Capture ----------------------
18:49:11: successfully set up d3d9 hooks
18:49:13: D3D9EndScene called
18:49:13: D3D9Present called
18:49:14: DoD3D9GPUHook: success
18:49:14: D3DSURFACE_DESC {
18:49:14: 	Format: D3DFMT_A8R8G8B8
18:49:14: 	Type: D3DRTYPE_SURFACE
18:49:14: 	Usage: D3DUSAGE_RENDERTARGET 
18:49:14: 	Pool: D3DPOOL_DEFAULT
18:49:14: 	MultiSampleType: D3DMULTISAMPLE_NONE
18:49:14: 	MultiSampleQuality: 0
18:49:14: 	Width: 1440
18:49:14: 	Height: 900
18:49:14: };
18:49:14: successfully capturing d3d9 frames via GPU

(Changed to a different log file, more recent.)
 

alpinlol

Active Member
Upload Binary File Transfer Speed:: 2264 kB/s

theres your answer

anything over 2200 will most likely make you drop frames and get a high ping you gotta stay at around 1850-2000 bitrate
to not run into any peak sometimes it will work sometimes it wont depending on how crowded twitch and your own isp provider is
 

Sajirou

New Member
Wondering then... why when I set the bitrate to 800 and it would peak at 1800 (since my bitrate fluctuates 1000 up or down depending) that the bitrate fluctuated wildly? Was I just setting it way too low that time? I don't quite understand my problem.

Maybe it's just their requirements detector that's f'n things up around me.
 

alpinlol

Active Member
it should NEVER fluctuates that far if you are using cbr ... its not even possible you should do good with 1900bitrate and cbr checked and the 128bit audio
 

Sajirou

New Member
Well I'm going to try 1850 as my setting, see if that does the trick and get back to you on that, but that's how much it was fluctuating ACCORDING to the Twitch requirement detector in the Dashboard.

Also OBS settings estimator told me to run at 4000 KBPS, someone might want to put in a thing for Binary Transfer Rate, if that indeed screws things up.
 

alpinlol

Active Member
i already told you that the twitch bullshit is pretty much worthless ... you have to stream for at least 30 minutes to 1 hour and then refresh the dashboard again to get an actual result ... as i already said i had the same
 

RockGuitarist1

New Member
With an upload of 21mb/s, I stream with a 4000 bitrate for 30fps 720p. AAC 160 audio. Flawless, beautiful streams.

A stream should never surpass 5000 bitrate, because most people will no be able to watch it when it is any higher, due to their slow DL speeds. Just run a 4000 like I do. 5000 is overkill and there is no difference.
 

Sajirou

New Member
Ran the Bitrate at 1850, it went up to 2950, fluctuating that wildly even with CBR on. I'm beginning to think its simply just twitch's detection program, even running 4 hours the program said I was only "Acceptable" and that my bitrate fluctuates up to 2000 KBPS more than I set it at and they won't be able to let people view on mobile devices.

I'm at wits end as to a solution to this problem and at this rate my exposure on Twitch is going to be hampered by these mobile devices and consoles.
 

Kharay

Member
Nothing wrong with Acceptable, really. Unless you're passionate about mobile devices being able to view your stream as well, Acceptable will be just fine.
 

Sajirou

New Member
Yeah well a percentage of my followers view my stream from their workplaces, so I would be missing out. Twitch is just being ... youtube.com/watch?v=07So_lJQyqw
 

alpinlol

Active Member
dunno how i often i have to tell you that twitchs detection shit is useless right now in case of bitrate ... but again its the 4th time now i guess... ITS NOT WORKIN PROPERLY JUST IGNORE IT
 

Sajirou

New Member
Unfortunately, Twitch won't ignore it and come tomorrow they'll pass judgement based on their little detection thing and I'll be screwed out of mobile device views as will anybody else who has this problem. I'm only lucky I pass the other two thanks to the quick response of the OBS team by adding that key interval thing.

Also the detector gives my bitrate a PERFECT when I broadcast using a different broadcaster and broadcast from a console. When I broadcast from a PC source, it's THEN that it has problems.

So, annoying.
 

Kharay

Member
Even since before it was added did OBS actually allow you to specify a keyframe interval. It's part of x264, not of OBS itself. The field that was added to OBS just passes that specific parameter to x264 in a more intuitive fashion.

Regardless, I do not think that it is entirely justified to place the blame squarely with Twitch. Yes, they have implemented these requirements but to some extent it just is a sign of the times. Emerging technologies and services have their influence on other technologies and service.

Having said that -- There are ways to force OBS and x264 into a more strict CBR. Getting an Excellent rating on Twitch isn't a challenge, nor is maintaining one. The key thing is -- doing so without a least some quality loss. Which in and of itself simply may end up being impossible. And that is just something people will have to learn to accept.
 
Top