Question / Help Cannot make OBS work

Muf

Forum Moderator
Belial88 said:
So I understand this to mean that the FPS is not a cpu intensive task, but rather, that Upload x Avg Time = Maximum possible fps?
The "avg time" indicates how many milliseconds it takes to process one frame. Divide 1 second (1000 ms) by the time it takes to process a frame, and you get your theoretical maximum framerate.
1000 ÷ Avg Time = Maximum FPS
Note that I say theoretical, because profiler results are average over the entire stream duration; it could still be that certain frames take longer than others to render which could result in dropped frames. However, generally if processing on average takes LESS than 16.6ms, it's safe to say that you should be able to stream at 60fps.

Now bitrate is another matter entirely, because if you stream at 60fps you will be cramming twice as many frames in the same bits per second (at 3000kbps, one frame will be 100kb in size at 30fps, but only 50kb at 60fps). Now that doesn't immediately equate to quality that's twice as bad or that you should double your bitrate, because the difference between two adjacent frames is also smaller at 60fps than it is at 30fps, resulting in more efficiently encoded (smaller) frames.

So in the end it's a compromise between smoothness, bitrate and picture quality (you know the deal; pick any two). It's up to you and your viewers to decide what's optimal for your given internet connection.
 

Belial88

Member
Wow, that's totally different than what you read on

7946878116_e7bdb17f43_o.png


Which I feel like is a crap guide anyways.


But what you say doesn't really explain why at 50 fps I had stutter.

http://www.twitch.tv/belialtester88/b/336325049

I also see everyone seems to pick 25, 30, 45, or 60 fps, so maybe it has to do with me having picked 50? I'll try 45 though. But I can assume that picture quality may go down a bit if I pick 45 fps instead of 25-30 fps. It seems like my average time is usually around 18ms, but it seems to be 15-16 often times too.

And any idea why when I set 2k+/2k+ bitrate, my video stutters a bunch? Is it because my speedtest results aren't showing my true speed or isn't what I'm getting at the servers or something? Is it a problem on OBS end, because I don't get it on xsplit.
 

Belial88

Member
So here's the optimal settings I think I'm going with.

1750/1750. 2k/2k gets stutter sometimes, and 1500/1500 the quality is slightly noticeable lower. I'm going with 45fps, because that's a decent step up from 30fps, and since my upload is good, THATS where I can take advantage of a low end computer with a high end upload (or bitrate quality, but bitrate quality isn't as noticeable as high fps i think). Based on what I've learned that Bitrate & FPS = Image Quality

Also, since my GPU is relatively high end (gtx460, which is super power for 720 starcraft), I can 'artificially' increase my stream quality by raising my graphics settings. So my stream might look prettier than the standard i5 or i7 on low or a much higher bitrate because of better in-game graphics settings.

There's a couple dropped bframes dropped, not many at all. I think maybe lowering it could reduce it to zero, not sure, I've seen dropped frames at 1500/1500 too though.

Anyways, thanks for helping me set up a very nice looking stream on a not-so-nice computer, and showing me that OBS>Everything else out there. I think OBS has a lot of nice options on it that make it great, and you Jim, have given more feedback than any other stream guy out there (this thread exists in the ffsplit and xsplit forums too lol).

Here's a video of the stream settings just being perfect. And a pretty kick-ass game to boot, it's a ZvP and the game actually ends up in a tie, except it isn't a countdown situation. We both killed eachother's last building at the exact same second and so the system ruled it a tie. Something neither of us had ever seen before, quick shocking ending actually.

http://www.twitch.tv/belialtester88/b/336786825

Code:
Open Broadcaster Software v0.411a - 32bit (´・ω・`)
-------------------------------
CPU Name: AMD Phenom(tm) II X4 B50 Processor
CPU Speed: 3415MHz
Physical Memory:  4095MB Total, 1265MB Free
stepping id: 3, model 5, family 15, type 0, extmodel 8, extfamily 0
Send Buffer Size: 8192
=====Stream Start=====================================================================
  Base resolution: 1280x720
  Output resolution: 1280x720
------------------------------------------
------------------------------------------
Adapter 1
  Video Adapter: NVIDIA GeForce GTX 460
  Video Adapeter Dedicated Video Memory: 1025966080
  Video Adapeter Shared System Memory: 1878683648
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Headset Microphone (Logitech USB Headset)
------------------------------------------
Audio Encoding: AAC
    bitrate: 96
------------------------------------------
Video Encoding: x264
    fps: 45
    width: 1280, height: 720
    quality: 10
    preset: veryfast
    i444: no
    max bitrate: 1750
    buffer size: 1750
------------------------------------------
Total frames rendered: 36618, number of frames that lagged: 268 (0.73%) (it's okay for some frames to lag)
Number of b-frames dropped: 46, Number of p-frames dropped: 0
=====Stream End=======================================================================

Profiler results:

==============================================================
frame - [100%] [avg time: 15.638 ms] [avg calls per frame: 1] [children: 97.9%] [unaccounted: 2.06%]
| scene->Preprocess - [46.3%] [avg time: 7.234 ms] [avg calls per frame: 1]
| video encoding and uploading - [51.7%] [avg time: 8.082 ms] [avg calls per frame: 1] [children: 41.3%] [unaccounted: 10.4%]
| | CopyResource - [30.3%] [avg time: 4.733 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [11%] [avg time: 1.724 ms] [avg calls per frame: 0]
==============================================================
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
I'm glad you got it working - thank you very much for taking all this time for all this feedback, I greatly appreciate it. The app is still a work in progress - there are a lot of things I do better than the other apps, but still places where I greatly need to improve, and with time I hopefully will get them all in. By the way, I posted a new test build that may improve performance further in the feedback forum.
 

Belial88

Member
Hey so what does this mean?

Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Code:
Open Broadcaster Software v0.43a - 64bit ( ^ω^)
-------------------------------
CPU Name: AMD Phenom(tm) II X4 B50 Processor
CPU Speed: 3415MHz
Physical Memory:  4095MB Total, 1602MB Free
stepping id: 3, model 5, family 15, type 0, extmodel 8, extfamily 0, HTT 1, logical cores 4, total cores 4
------------------------------------------
Adapter 1
  Video Adapter: NVIDIA GeForce GTX 460
  Video Adapeter Dedicated Video Memory: 758579200
  Video Adapeter Shared System Memory: 1878683648
Send Buffer Size: 8192
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 1280x720
  Output resolution: 1280x720
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Headset Microphone (2- Logitech USB Headset)
------------------------------------------
Audio Encoding: AAC
    bitrate: 96
------------------------------------------
Video Encoding: x264
    fps: 45
    width: 1280, height: 720
    quality: 10
    preset: veryfast
    i444: no
    max bitrate: 1750
    buffer size: 1750
------------------------------------------
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Warning -- MMDeviceAudioSource::GetBuffer: GetNextPacketSize failed
Total frames rendered: 51054, number of frames that lagged: 9 (0.02%) (it's okay for some frames to lag)
Number of b-frames dropped: 37, Number of p-frames dropped: 0
=====Stream End=======================================================================
Send Buffer Size: 8192
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 1280x720
  Output resolution: 1280x720
------------------------------------------
Loading up D3D10...
------------------------------------------
Using auxilary audio input: Microphone (5- HP Webcam HD-4110)
------------------------------------------
Audio Encoding: AAC
    bitrate: 96
------------------------------------------
Video Encoding: x264
    fps: 45
    width: 1280, height: 720
    quality: 10
    preset: veryfast
    i444: no
    max bitrate: 1750
    buffer size: 1750
------------------------------------------
Total frames rendered: 126987, number of frames that lagged: 94 (0.07%) (it's okay for some frames to lag)
Number of b-frames dropped: 0, Number of p-frames dropped: 0
=====Stream End=======================================================================

Profiler results:

==============================================================
frame - [100%] [avg time: 8.363 ms] [avg calls per frame: 1] [children: 92.8%] [unaccounted: 7.19%]
| scene->Preprocess - [52.7%] [avg time: 4.404 ms] [avg calls per frame: 1]
| video encoding and uploading - [40.2%] [avg time: 3.358 ms] [avg calls per frame: 1] [children: 28.9%] [unaccounted: 11.3%]
| | CopyResource - [0.335%] [avg time: 0.028 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.849%] [avg time: 0.071 ms] [avg calls per frame: 0]
| | call to encoder - [27.7%] [avg time: 2.318 ms] [avg calls per frame: 0]
==============================================================

That's not all of it, i mean this Warning! literally went on for like 20 pages, no way i could copy all of that itd take forever and wouldnt fit anyways.

I mean here's the stream vod:
http://www.twitch.tv/belialtester88/b/337906238

Everything was fine in-game and the stream vod looks perfectly fine. What's this warning about though?

on a side note i think a lot of my dropped frame issues occured because of my router. i might be able to raise bitrate, ill report back if that was the issue there with the big disparity between my maxed allowable buffer and my upload, im not worried about it (i mean 1750/1750@45fps my stream looks better than 90% of the pro streams out there).
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
heh, you should make a new thread next time -- anyway, having the message repeat is a bug on my part. I'll fix it.
 
Top