
How do the number of users watching your live video stream affect your upload bandwidth?
I use Windows Media Encoder to stream a web cam feed to the Internet. I recently tested this while streaming footage from an online game on the PS3. With just one or two people watching the stream across the Internet, there was no noticeable lag while playing the game. However, later on I tried the same thing, and know that at least 5 people (possibly as many as 7 or
were watching the stream. This caused extreme lag to the point where the game was unplayable.
Why is the number of users watching effecting the bandwidth on my end? Does this have anything to do with “push” or “pull” encoding? Why specifically is my game lagging so badly with multiple connections watching the stream, and what can I do to fix this issue and make it possible to play a lag free game while streaming to a handful of viewers over the Internet? Thanks.
Is there any way to upload the stream to a webserver so that my own bandwidth won’t bear the burden of the extra viewers?
For argument’s sake, lets say you have a conservative slow DSL connection with a 1Mb download and a 256k upload link. Part of the reason for this is it is easier to overload the bandwidth of a smaller pipe than it is to overload say a 45Mb T3 connection. Also, I can do this with what some might consider ancient technology as an example.
Your game is going to require less than say about 32k up or down as most of the processing power is actually done in the box. As a reference, you can run a VoIP program such as Roger Wilco, Ventrilo or Teamspeak) and an air combat flight sim with up to 32 other players viewable on the screen. With these kinds of numbers, you can run the sim with voice communications over a good old dialup connection. So unless they are very wasteful, your PS3 game isn’t using much bandwidth. Keep in mind that when Roger Wilco was popular, each computer link was a sort of shared server and it still allowed several people to talk without a lot of lag. Ventrilo and Teamspeak each use a dedicated server to handle the distribution to connected players and places a lot less strain on the individual computer and the associated bandwidth.
Ok, now we can deal with your video stream. If we divide the 256k upstream by 6 we get about 42k and some change. Low resolution video can overload a 56k modem connection so now we have to redo our numbers using that conservative number. Using a conservative 56k pipe for each video feed, we arrive at just 4 viewers and what is left may be enough to run your game without serious lag.
So without actually measuring the actual bandwidth you are using for each stream, I hope you can see how you can overload your connection. Notice that the download speed becomes irrelevant since it is much faster than the upload speed. Also, streaming video is generally sent using UDP connections which means there isn’t a lot of data being sent to your computer to maintain the connection. Almost all the data is being sent out on the upstream and for most DSL and cable connections that is a lot less bandwidth than the downstream by as much as a factor of 10.
What you can try is reduce the resolution of the outgoing video stream. Think of your internet connection as two pipes. The downstream pipe is huge. I doubt it is even breaking a sweat. The upstream pipe is much smaller and could be as much as 1/10th the size of the downstream pipe. Just like a water pipe. You can only feed so many gallons per hour through a given pipe. In the computer case, you can only feed so many bits per second through your upstream pipe. The trick may be finding a resolution that limits lag and still allows enough resolution for the video.
An alternative would be to stream a single feed to another computer that acts as a server. That way you don’t overload your connection and another computer takes the strain of serving the extra connections. The only catch is that the server can’t be on your internet connection or you are back to the same bandwidth problem. Also, you can still overload your upstream limit by switching to a higher resolution for the single feed.
Everything is a sort of trade-off. You can have high res video and only one user or you can have low res video and many users. Somewhere in there will be settings that allow your game enough bandwidth to work without lag.
Shadow Wolf
Elemental Technologies Focused on Encoding for Adaptive Streaming
|
|
Sony IPELA SNT-EX101 – video multiplexer – 1 channels (45916Q) Category: Concentrators and Multiplexers $800.00 Item #: 45916Q. Device Type: Video multiplexer – color – NTSC/PALVideo Channels: 1Audio Channels: 1Image Resolution: 384×288, 720×480 (NTSC), 720×576 (PAL), 320×240, 640×480Voltage: 24 VDimensions (WxDxH): 2.9 in – 6.1 in – 1.3 inWeight: 14.1 oz Customers also search for: Technology\Networking\Server Racks and Equipment\Concentrators and Multiplexers Discount Sony IPELA SNT-EX101 – video multiplex… |
|
|
Performance Measurement of Video Streaming in UMTS Networks: Development of a quality assurance tool for most efficent video encoding parameters, adaptive … underlying third generation radio network $59.00 UMTS (Universal Mobile Telecommunications System), the third generation of mobile data services, introduces a new wireless, state-of-the-art technology and thus much higher data speeds to mobile and portable wireless devices. Streaming Media is one of the applications that takes major advantage of the new technology due to higher bit rates available. The objective of this book is to intro… |