Bug Report Frame Skipping?

Smoshi

Member
http://www.twitch.tv/xsmoshi/b/354270876
Around the 15:00 minute mark.

Doesn't matter what resolution, fps, buffer size, etc. I set, it will run perfectly for about 10-20 seconds, and then freeze up for about 2-3 seconds.. then go back to normal for another 10 seconds and it just repeats. Audio doesn't lag, just the picture.

CPU: Intel i3 3220 @ 3.3GHz
Ram: 8GB
GPU: AMD Radeon 6670 1GB

I am trying to stream a game called Age of Empires 2. It was make back in the 90s. I get no FPS loss in game, simply because this game is so old.. it doesn't require much CPU usage.



These are my OBS settings;
Quality 10
Max Bitrate: 3500
Max Buffer: 3500
Audio: AAC 128
Resolution: 1920x1080
Res. Downscale: 960x540
FPS: 20
CPU Preset: Veryfast

Another thing to mention.. this game uses DX7 so I am unable to use Game Source so I am forced to use Screen Region.

Any help would be much appreciated. I want to know what might be causing this, and what I can try to see if we can't fix this.

Thank you
 

Pugget

Twitch
3.5-3.8 Mbps is pushing it on a connection with ~4Mbps upstream. Keep in mind that speedtest is a pretty bad way to understand how much usable bandwidth you have - all it really tells you is what could you sustain for a short period of time to a particular server, one your ISP has likely made special considerations for. Looking at your logs, I would try and bring it down to 3.2 or 3.0 Mbps, which will still give you a very crisp, clear image. Of course, the problem might be elsewhere, but it's worth a try.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
According to that last log, you were still getting network congestion of some sort.

The thing that people typically don't understand about streaming is that if you want to stream with no frame drops or issues, you have to set it to your most stable "lower limit" that your connection can handle. Speed test may report that you can upload at 4mb/s, but this is a small sample window.

For example, I have a 3.0mb/s upload reported by speedtest (that's actually my personal upload speed). Speed test does only a sample window of less than half a minute. Now, I could stream with values near that number, but it would only be sustainable for at most a minute or two, and then I would start getting frame drops and such. This is because the upload rate is just not guaranteed to always stay at that rate. The upload and download rates of your internet connection are not fully fixed rates. For me, the best value that I can set that usually never causes me problems is 2100/2100. Obviously this is about 70% of my actual "max" bitrate. 70% of speed test is my personal "lower limit" where I am pretty much guaranteed not to get any fluctuation. This is normal.

Due to the nature of encoding, the numbers you set for encoding are the numbers it expects you to be able to handle consistently with no fluctuation, so if you set 3000/3000, you'd better be absolutely sure you can sustain that exact rate for a very long period of time and that your upload rate isn't going to fluctuate below that value. Otherwise you risk frame drops and/or freezing.

So, what you have to do is find that "lower limit" of how much you can stream that will never cause any network congestion. This is always going to be a number fairly lower than your speedtest result. It does not mean that the application is at fault, or that your internet is horrible, it is just the nature of encoding and streaming. Until we can get a variable bitrate option in you have to find the most stable "lower limit" that your connection can handle without fluctuation.

The color indicator and frame drop number on the status bar are a good way to tell if you're having any sort of troubles with network congestion. It also outputs to the log files as well. You will see those messages of having to wait to send bytes if there were any problems.
 

Krazy

Town drunk
A good tool is called Shaper Probe and can be found at www.measurementlab.net along with other useful network testing tools. I should really make a guide thread outlining some of these tools and how to understand how they apply to getting the info you need for streaming...
 

Smoshi

Member
Thank you all for your support.
I will try a very low bitrate, stream for roughly 45 minutes to an hour, if it comes back with little to no drops/stutters/etc. then I will raise little by little until I start running into problems and then set my bitrate to the highest, most stable.

I will also try them diagnostic tools.
 

Smoshi

Member
Well,
I've fixed my stream. I guess the problem was, my bitrate was too high. I had it set at 3000, and my stream was skipping around. It's set at 2000 now and doesn't seem to be doing that anymore.

But, I don't understand. If I can reach a maximum of 4.2 upload, why can't I at least use 3000?
I did some tests, and my upload will drop as low as 2200. Could that be a problem with my connection/PC? or does Comcast just suck :lol:

I also have one more question. Does bitrate and buffer have to be the same? Or can I try different combinations. For example, 3000 bitrate, 2500 buffer.
 

Krazy

Town drunk
It's because ISPs have powerboost BS that give you more upload for a brief period of time. That's why the shaper probe tool is good because it will more accurately figure out your sustained upload.

There's no real reason to have bitrate and buffer be at different sizes.
 

Pugget

Twitch
I have so much to say about Comcast, but sadly it will have to wait for a memoir.

Increasing your VBV will, generally, allow for greater bitrate fluctuations. It is a more interesting option to play with if you are using CBR and/or VFR, and doesn't tend to have a huge effect streaming most content with VBR. Leaving the bitrate and VBV the same is a very standard and safe option. That said, Twitch recommends that streams should be CBR for the best end-user viewing experience.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Dude, for the past month I haven't even been able to access half of twitch due to comcast. These guys man.. they have caused me no end of pain.
 

Smoshi

Member
This is what the Shaper Detection program shows;

DiffProbe release. January 2012. Build 1008.
Shaper Detection Module.

Connected to server 64.9.225.142.

Estimating capacity:
Upstream: 4218 Kbps.
Downstream: 25432 Kbps.

The measurement will take upto 2.5 minutes. Please wait.

Checking for traffic shapers:

Upstream: Burst size: 5199-5282 KB;
Shaping rate: 2128 Kbps.

Downstream: Burst size: 9412-9928 KB;
Shaping rate: 15978 Kbps.



What should I do?
 

Krazy

Town drunk
That means your sustained upload is actual 2100 bitrate or so. Need to adjust your OBS settings accordingly.
 

Smoshi

Member
That's pretty stupid... paying all this money for good, stable internet and realistically they cut it in half.
 

Krazy

Town drunk
Well, are you actually paying for 4mbit though? Every speedtest I've ever done has powerboosted the hell out of my connection, but the shaper probe told me the rate that I was actually paying to get.

The good news is, even like 1500 bitrate should be good enough for that resolution with AoE 2 at 30fps.
 

Smoshi

Member
I have no idea what I'm paying for. I've had to get new lines when I moved in here because the internet kept cutting out. I can handle 2000 bitrate, but anything higher than that and I get frame drops and very blurry in-game.

I don't know why I can't stream at 2000 bitrate and a 1.5x downscale. I get massive frame drops at those settings and my fps is only set to 25.

It's not like AoE 2 is a cpu intensive game. What gives?
 
Top