How they work: “How Media Streaming works” (cont’d)

We looked at streaming media, let us go on and see Flash video which is a little different. It usually requires a Flash applet, which is a program designed to decode and play streaming Flash files.

Friday, March 05, 2010

We looked at streaming media, let us go on and see Flash video which is a little different. It usually requires a Flash applet, which is a program designed to decode and play streaming Flash files.

 Programmers can write their own Flash applets and customize them to fit the needs of a specific Web page. Flash is becoming a more popular option for playing streaming video.

It’s what YouTube, Google Video and a number of highly multimedia websites use to display videos on their sites.  Regardless of whether it’s an applet or a fully functional player, the program playing the streaming file discards the data as you watch.

A full copy of the file never exists on your computer, so you can’t save it for later playback. This is different from progressive downloads, which download part of a file to your computer, then allow you to view the rest as the download finishes.

Because it looks so much like streaming media, progressive downloading is also known as pseudo-streaming.  These players and applets do what many applications they play files.  That said and done, how do they finally arrive at your desktop?

Streaming video and audio files are compact and efficient, but the best ones start out as very large, high-quality files. These are high-quality digital files or analog recordings that have been digitized, and they haven’t been compressed or distorted in any way.

Although you can watch a streaming file on an ordinary TV set, editing the raw file requires lots of storage space and processing power. 

It might seem strange that a file that ends up nimble and efficient started out large and unwieldy.

The reason is that the compression process, required to make an ordinary file into a streaming file, lowers the file’s quality.

During compression, blurry, low-quality videos or hard-to-hear audio recordings will only get worse.  Fortunately, before you even compress a file, you can reduce its size without lowering its quality.  How?

Make the picture smaller; Most streaming videos don’t fill the whole screen on a computer. Instead, they play in a smaller frame or window.

If you stretch many streaming videos to fill your screen, you’ll see a drop in quality.

Reduce the frame rate; A video is really a series of still images. The frame rate is how quickly these images move from one to the next.

A lower frame rate means fewer total images and less data needed to recreate them. The reduction in frame rate is why some streaming videos flicker,  the frame rate is slow enough that your eye and brain sense the transitions between pictures. 

For both video and audio files, making the files even smaller requires codec,  (compression/decompression) software. Codecs discard unnecessary data, lower the overall resolution and take other steps to make the file smaller.

Different codecs also create specific types of files, which work on specific streaming players. The total reduction in quality depends on a number of factors, including the bitrate, or the speed of the transfer from the server to a computer.

For example, the bitrate of a television broadcast is about 240,000 kilobits per second (Kbps), but the bitrate of a dial-up Internet connection is a maximum of 56 Kbps.

Someone with a reliable broadband connection with lots of bandwidth can watch high-bitrate files, but someone using a dial-up modem needs to watch at a much lower bitrate.

The basic idea is to encode a file that’s large enough to look or sound good but small enough to work with the available bandwidth. Some codecs let you create files that will stream differently at different transfer rates, accommodating different connection types.

This is known as multi-bitrate encoding.  Once a file is edited, compressed and encoded, it’s uploaded to a server.
A server is more than just a massive hard drive, It’s also the software that delivers data to your computer. Some streaming servers can handle multiple file types, but others work only with specific formats.

For example, Apple QuickTime Streaming Server can stream QuickTime files but not Windows Media files.  Streaming servers typically deliver files to you with a little help from a Web server.

First, you go to a Web page, which is stored on the Web server. When you click the file you want to use, the Web server sends a message to the streaming server, telling it which file you want.

The streaming server sends the file directly to you, bypassing the Web server.  All of this data gets to where it needs to go because of sets of rules known as protocols, which govern the way data travels from one device to another.

We have already covered this in one of our editions about how the Internet works. Every time you surf the Web, you’re using HTTP.  Many protocols, such as transmission control protocol (TCP) and file transfer protocol (FTP), break data into packets.

These protocols can re-send lost or damaged packets, and they allow randomly ordered packets to be reassembled later.

This is convenient for downloading files and surfing the Web,  if Web traffic slows down or some of your packets disappear, you’ll still get your file. But these protocols won’t work as well for streaming media.

With streaming media, data needs to arrive quickly and with all the pieces in the right order.
 
eddie@afrowebs.com