There are 5 Categories of Internet Connections:
1. 5+ Mbps = Very High Broadband
2. 1-5 Mbps = High Broadband
3. 786 Kbps = Fast Broadband
4. 384 Kbps = Standard Broadband
5. 56 Kbps = Dial-up
To figure the bandwidth a viewer will need to view the streaming media file with perfect playback, we need to work through these formulas (one for a Standard Web Server, one for a Streaming Server (note: Streaming Servers are overviewed a few posts from now).
A: Figuring Bandwidth Needs From A Standard Server. Here things are easy because we get to figure things directly in ‘bandwidth’ math using bits not bytes.
1. Figure “Bits Per Second”
Video Height x Video Width x Frame Rate (fps) = Bits/second (Kbps)
eg. (320 x 240 video dimensions) x 15 fps = 1,152,000 Bits/second
2. Convert Bits Per Second (Kbps) to Megabits Per Second (Mbps)
Bps (Total from #1) / 1,024 (1 Mbps = 1,024 Kbps) = Needed Connection Speed
eg. 1,152,000 Kbps / 1,024 = 1,125 Mbps (so the person watching should have a, category 2, high broadband connection)
B: Figuring Bandwidth Needs From A Streaming Media Server. Here there are a few extra steps because streaming servers encode everything in Bytes Per Second (Bps), which needs to then be converted to Kbps to know the bandwidth need.
1. Figure Total Bits Per Second
Video Height x Video Width x Frame Rate (fps) = Total Bits/second
eg. (320 x 240 video dimensions) x 15 fps) = 1,152,000 Bits/second
2. Figure the Bytes Per Second (Bps)
Bps (total from #1) / 8 = Bps (divide by 8 because there are 8 bits in 1 byte)
eg. ((320 x 240 x 15) / 8) = 144,000 Bps
3. Convert Bps to Kbps
Bps (total from #2) / 1,000 = Kilobytes/second (Kbps)
eg. 144,000 Bps / 1000 = 1,152Kbps (which is rounded to 1.2 Mbps)
These formulas do not take into account your server’s bandwidth limitations, the number of simultaneous viewers, network congestion or a host of other variables. Now we know how to anticipate the needed connection speed for our streaming media.
Up next are some of the ways we can make a larger bandwidth file playback smooth on a low bandwidth connection.
– Troy @ TLC