Published: April 07, 1999

In many ways, mastering streaming media is all about managing bandwidth. Too little bandwidth for the content means poor performance, and too little content for the bandwidth means that your audio or video could have been that much richer.

Therefore, it's worth considering the following bandwidth issues in planning your content and your site:

  • Bandwidths to target

  • Total bandwidth required

  • Factors that influence the bandwidth of your content

Bandwidths to Target

One of the first things you need to do when creating streaming media content for Windows Media Services is to decide which bandwidth(s) you are going to target. This is important, because some types of content are just not suited to some bandwidths, and the content will need to be adjusted. For example, over a 28.8-Kbps Internet connection, having an entire football game would not be acceptable. That's because trying to fit a full field's action into a small (160 x 112 or 176 x 144) window would net you what looks like a screen full of ants scurrying from one end of the screen to another. However, having video interviews with sports stars would be perfectly acceptable and the quality would be good over a 28.8-Kbps connection.

You must also carefully consider who your audience is and which bandwidths they will connect on, as well as where they are in the world relative to where the content resides. For example, if your content is meant for business users, you could offer higher-bandwidth content because many users connecting from their offices travel over high-bandwidth connections. When your users are dialing in from their homes, you could also assume that the bulk of them will be connecting over low-bandwidth dial-up connections. Additionally, factors such as how far they are from where the content originates can impact the performance of the content. As an example, a user in Paris connecting over a high-bandwidth business network to content in San Francisco may experience poor performance simply because of the number of connections the signal must go through to travel that distance, so you might want to make lower-bandwidth content available. Likewise, there are times of the day when Internet traffic gets congested and it becomes difficult to get much performance from any connection. Try to anticipate those times and offer content at a variety of bandwidths to accommodate those users.

Total Bandwidth Required

The most difficult part is to accurately estimate the number of concurrent users who will connect to your content. More often than not, people overestimate the number of concurrent users. The most successful events on the Web have had tens of thousands of concurrent users, but the vast majority are wildly successful with a hundred concurrent connections.

Calculating the total bandwidth required is easier:

Total for each bandwidth = number of concurrent connections at a given bandwidth * the given bandwidth
Total bandwidth required = sum of total for each bandwidth

Example: 25 concurrent users at 28.8 Kbps, 25 concurrent users at 56 Kbps:

(25*28,800 bps)+(25*56,000 bps) = 720,000 bps + 1,400,000 bps = 2,120,000 bps or 2.12 Mbps

Now that you know how much bandwidth you will need, you will need to make sure that you have enough "pipe" to accommodate those users:

  • T-1 line = 1.5 Mbps, or approximately 50 concurrent 28.8-Kbps streams

  • T-3 or DS-3 = 45 Mbps, or approximately 1500 concurrent 28.8-Kbps streams

So in the preceding example, where we need 2.12 Mbps in bandwidth, we would need to have two T-1 lines in place when the content goes live.

Factors That Influence the Bandwidth of Your Content

As you get familiar with creating content for Windows Media Services, you will learn that there are some key factors you can play with so that your content will fit within a certain amount of bandwidth:

  • Frame size. The bigger the image sizes in pixels, the more bandwidth it will take for the content to play. In order to keep the picture size large, you will need to sacrifice some of the factors below.

  • Frame rate. The higher the frame rate, the more bandwidth it will take to play back the content. In order to keep the frame rate high, you will need to sacrifice frame size, picture quality, and/or number of colors.

  • Picture quality. The higher the picture quality, the more bandwidth it will take to play back the content. In order to keep the picture quality high, you will need to sacrifice frame size, frame rate, and/or number of colors.

  • Number of colors. Sometimes you will find that limiting the palette of colors you choose from in creating content will help conserve bandwidth. If you want to maintain bright, rich colors, though, you will need to adjust the above factors to fit the content over low bandwidths.

At very low bandwidths, you might consider sacrificing the video altogether and offering audio-only feeds, or perhaps audio-only plus URL flips to supplement the information. You could offer video-only with captions below the feed to supplement the information. At higher bandwidths, of course, you have much more freedom to include richer audio and video, and even to add script events and other data to make the feed still richer.