STREAMING BASICS

 

What is Streaming?

 


The term streaming has become fairly broad in definition and now generally refers to media, such as video and audio, that is delivered over a network. Often this term has a more specific connotation for movies that are delivered to personal computers over the Internet.

There are two common approaches to streaming today: Realtime streaming and progressive streaming. Generally, if a video is being broadcast live or a streaming media server or protocol is used, such as RTSP (realtime streaming protocol), it is realtime streaming. If an HTTP server is used, the file is being delivered via progressive streaming.

Cleaner also supports files that must be downloaded entirely to the hard drive before they can be played. Downloadable files are common practice for MP3 and MPEG files, but can also be used for RealSystem and Windows Media files.

CHOOSING A STREAMING METHOD
Which delivery method is right for your project depends on your needs. A brief discussion of each method follows.

Windows Media and RealSystem only support realtime streaming; QuickTime supports delivering files via both realtime streaming and progressive streaming. For optimal results, you should prepare your movie specifically for the delivery method you decide to use.

Progressive streaming
Progressive streaming, also known as progressive download, refers to online media that users can watch as the files are downloaded. The user can see the part of the file that has downloaded at a given time, but can’t jump ahead to portions that haven’t been transferred yet. Progressive streaming files don’t adjust during transmission to match the bandwidth of the user’s connection like a realtime streaming format. Progressive streaming is often called HTTP streaming because standard HTTP servers can deliver files in this fashion and no special protocols are needed. QuickTime’s fast start feature is an example of a progressive streaming technology

Progressive streaming delivery is well suited to short movies that you want to be viewed at high quality, such as movie trailers and product advertisements. This method guarantees the quality of the final movie because the viewed portion of the file is losslessly downloaded before it is played. This means users may experience a delay before the movie starts, especially with slower connections.

Progressive streaming is especially useful for modem delivery of short pieces because it lets you create a movie with a higher data rate than a modem could stream in realtime. Although doing this causes the viewer some delay, it also allows you to present a much higher-quality movie.

Because progressive streaming material is placed on a standard HTTP or FTP server, it is easier to administer, and there generally aren’t any problems with firewalls.

Progressive streaming is not a good solution for long movies or material the user may want to randomly access, such as lectures, speeches or presentations. Progressive streaming technologies also don’t work for material that must be broadcast live — it is strictly an on-demand technology.

Realtime streaming
Realtime streaming refers to technologies that keep the bandwidth of the media signal matched to that of the viewer’s connection so that the media is always seen in realtime. The word realtime differentiates this type of streaming from HTTP streaming delivery. Dedicated streaming media servers and streaming protocols are required to enable realtime streaming. RealSystem, Windows Media and QuickTime all offer realtime streaming capabilities.

Realtime streaming delivery always happens in realtime, so it is well suited to live events. It also supports random access of material, so the user can fast forward to other parts of the movie, which may be useful for presentations and lectures. In theory, realtime streaming movies should never pause once they start playing, but in reality, periodic pauses may occur.

Realtime streaming movies must match the bandwidth of the viewer’s connection, which means the image quality is generally poor at modem speeds. Also, information that is lost in the network due to errors is often ignored, so the video quality will suffer if the network is congested or having problems. If you want to guarantee the quality of the final movie, progressive streaming delivery may be a better solution.

Realtime streaming media requires special servers, such as a QuickTime Streaming Server, a RealServer or a Windows Media Server. These servers give you a greater level of control over your media delivery but can be more complicated to set up and administer than a standard HTTP server. Also, realtime streaming uses special network protocols, such as RTSP (Realtime Streaming Protocol) or MMS (Microsoft Media Server). These protocols can sometimes have trouble with firewalls, so certain viewers may not be able to see realtime streaming material from certain locations.

ARCHITECTURES AND CODECS
As far as a computer is concerned, the two most important aspects of working with streaming media are:

To effectively handle these tasks, two special types of technology were developed: streaming architectures and codecs.

Architectures provide the overall structure and synchronization for media delivery. Codecs are the smaller encoding components that fit within an architecture. For example, QuickTime and Windows Media are architectures, Sorenson Video and MPEG-4 are video codecs, and QDesign, RealAudio and WMA are audio codecs.