Posted by bryanzug - 2010/09/04
Anyone have benchmark data on live streaming events? Estimating peak # for how many might simultaneously watch live stream of
As they say Saul, ask and ye shall receive.
First to note, the upload bandwidth (1) has nothing to do with the (2) download bandwidth people need to watch it on most services like UStream.
As a producer, you upload to UStream via your (1) connection to the web and UStream streams it out to everyone via (2) the connection from their server farm(s) to the individual computers people are watching the stream on.
This is mostly limited by the viewers connection to the internet – so people with lower bandwidth connections just see a lower quality version of the video (e.g. lower frames per second, lower resolution).
On to the data…
Here’s the details of the setup:
We used UStream Producer Pro to mix a live multicam stream for the event.
For this event we used the Standard HD Quality 16:9 – 960×540 @ 30fps, 650kbps, AAC 44.1k Stereo setting in UStream Producer Pro. I’ve listed all the options Producer Pro offers below, so you can get an idea about alternate bandwidths.
Whatever setup you use, a good rule of thumb is to have enough upload bandwith to handle twice the amount of the average data rate.
Also, the only way to monitor when the stream is up is to have someone watch and listen to it. So you are gonna need bandwidth for that. Usually this will adjust itself to the bandwidth available and you can use a very low bandwidth viewing stream to make sure everything is working OK.
Here are three session examples. I’ve included a few data points for each that give a good idea of the real world requirements. They are:
Flash Video FLV File Size:
UStream allows you to download a Flash Video FLV file of anything you session you record to the server when you are logged into your account. This size is what exactly was required to upload this video to UStream.
You can view FLV’s like these via VLC player pretty easily if you wanna see the quality outside of the browser of what UStream captured to their server.
Length of each session
Data rates of bandwidth required to broadcast each video in kbps (kilobits per second), KBps (kilobytes per second), MBps (megabytes per second), mbps (megabits per second) of bandwidth
I’m not a network guy, so I always get confused by MBps vs. mbps conversions.
I “think” I know enough to say they are different and that I’ve calculated these correctly.
If anyone sees any errors in these data conversions, please ping me via twitter (@bryanzug) let me know.
I used this utility to help with the conversion and terminology here.
So here are the examples:
Joe Marini: Windows Mobile Product Manager
Brian Fling: Making Money in Mobile
Lauren Isaacson: the State of the iOS Market
So it takes roughly a continuous 0.81 mbps connection to broadcast video of this quality via UStream. Doubling that to account for bursts means you should have a connection of roughly 1.5-1.6 mbps for an HD stream.
Doubling back through the UStream producer pro settings below, you should be able to calculate rough rates for whaterver quality of stream you want to produce.
UStream Producer Pro Settings
There are several settings you can select in UStream Producer Pro. They are:
- Lowest SD Quality 4:3
- 320×240 @ 20fps, 200kbps, AAC 32k Mono
- Lowest SD Quality 16:9
- 352×198 @ 20fps, 200kbps, AAC 32k Mono
- Basic SD Quality 4:3
- 320×240 @ 20fps, 350kbps, AAC 32k Mono
- Basic SD Quality 16:9
- 352×198 @ 20fps, 350kbps, AAC 32k Mono
- Standard SD Quality 4:3
- 320×240 @ 30fps, 350kbps, AAC 44.1k Stereo
- Standard SD Quality 16:9
- 352×198 @ 30fps, 350kbps, AAC 44.1k Stereo
- High SD Quality 4:3
- 640×480 @ 30fps, 500kbps, AAC 44.1k Stereo
- High SD Quality 16:9
- 720×405 @ 30fps, 500kbps, AAC 44.1k Stereo
- Best SD Quality 4:3
- 640×480 @ 30fps, 600kbps, AAC 44.1k Stereo
- Best SD Quality 16:9
- 720×405 @ 30fps, 600kbps, AAC 44.1k Stereo
- Standard HD Quality 16:9
- 960×540 @ 30fps, 650kbps, AAC 44.1k Stereo
- High HD Quality 16:9
- 960×540 @ 30fps, 800kbps, AAC 44.1k Stereo