LIS 525 - Streaming Media

Streaming Formats

Files in streaming formats can begin playing as soon as the first few packets are received. Even on a fast line (T1), however, the results can be unsatisfactory, with poor sound quality, and low resolution and dropouts in video. At the provider's end, encoding into streaming formats, though simple with the right tools, can take a lot of computer time.

RealAudio is a format for supplying streaming audio; RealVideo is a corresponding format for streaming video. RealAudio and RealVideo files have the extensions .ra, .ram, and .rm. In addition, there is a RealText (.rt) format for streaming text, and a RealPix (.rp) format for streaming GIF and JPEG images. Microsoft has its own Advanced Streaming Format (extensions .asf, .wma, .wmv, .wm); links on Web pages may actually be to Windows Media Metafiles (extension .asx, .wvx, .wax) which contain playlists and other information and point to the actual streaming format files.

RealNetworks produces Helix Server, which supports only RealAudio and RealVideo, and Helix Universal Server, which supports over 55 media formats, including Windows Media and QuickTime.

RealSystem Producer Basic, available for free download (in exchange for a bit of information), can be used for simple translation to RealAudio and RealVideo format.

Streaming is one of the features of Microsoft Windows Media Services, which is built into Windows 2000 Server and Advanced Server and Windows Server 2003 and is available for download for Windows NT 4.0. Microsoft Windows Media Services does not stream files in Real format. (RAW radio clips are delivered by a special server media.fims.uwo.ca or 129.100.34.36, not by the main FIMS Internet server. This server responds to pinging, but not to basic HTTP requests.)

QuickTime Streaming Server is part of the Mac OS X Server.

Web hosting services may offer streaming as an additional option for an extra charge (e.g., US$25 setup fee plus US$20 per month for 5 RealAudio/RealVideo streams) or included in higher-end plans.

Multicast

Most Internet traffic is unicast: a separate copy of data is sent from the source to each client that requests it. In broadcast, a single copy of data is sent to all clients, even those that do not request it. In multicast, a single copy of data is sent to all clients that request it, and only to those clients. To receive a multicast, the client listens to a particular IP address; the server does not need to know who has decided to receive the multicast. Multicasts are announced in advance so that clients know when one will be available. A client may need to send an initial message to inform a local router that it wants to receive multicasts directed at a particular group of clients.

The most widely used multicast network is the Internet Multicast Backbone (the MBone), which has been in place since 1992. The MBone consists of those portions of the Internet (multicast islands) on which multicasting has been enabled, connected by unicast tunnels. Multicasts are typically announced using the Session Description Protocol (SDP).

Why HTTP Is Not Suited to Streaming

HTTP (which is based on TCP) is suited to the transfer of Web pages, but performs less well for streaming media. Some reasons follow.

Many Web hosting services deliver streaming content via HTTP, but some, such as Hostway, use streaming protocols.

RTP

RTP is the Internet-standard protocol for the transport of real-time data, including audio and video. The initial target networking environment for RTP is UDP/IP; this is a protocol used instead of TCP/IP to provide better speed, which checksums its data to ensure integrity, but provides few error recovery services. Efforts have been made, however, to make RTP independent so that it can be used over other protocols. RTP can run over IP version 4 or IP version 6.

No end-to-end protocol can ensure in-time delivery, but RTP provides functionality suited for carrying real-time content, including mechanisms for synchronizing different streams. RTP data is carried on an even UDP port number and the corresponding RTCP (control) packets are carried on the next higher (odd) port number.

Two proposed standards, RTSP (Real Time Streaming Protocol) and H.323, both use RTP to format packets of multimedia content. RTSP is designed for videoconferencing, while H.323 is designed for broadcast. RTSP is supported by Helix Universal Server, Quick Time Streaming Server, and Windows Media Player 9, and as a plugin in Windows Media Services.

In MMS (Microsoft Media Server), a proprietary protocol developed by Microsoft, TCP is typically used for sending and receiving media control commands, and UDP for the actual streaming. (RAW Radio clips are accessed with MMS.)

For More Information


Home

Last updated October 31, 2007.
This page maintained by Prof. Tim Craven
E-mail (text/plain only): craven@uwo.ca
Faculty of Information and Media Studies
University of Western Ontario,
London, Ontario
Canada, N6A 5B7