Phases of Streaming Media


Before we go much further into the technical details, it’s important to point out the four phases of streaming. We’ve already alluded to two of them, but here they are, in order, along with a brief description of each.

  • Capturing: Pulling audio and video onto your computer from your camera, DVD player, or VCR and, when necessary, converting it to a digital form. In the case of on-demand streaming, the digitized content is saved to a file. For live streaming, it is not.

  • Encoding: Compressing the content using specific codecs and settings so that it takes up less bandwidth when being streamed.

  • Distribution: Delivering the compressed digital media over the network or onto storage media such as CD-ROM, DVD, or floppy disk.

  • Playback: Decompressing the audio and video for viewing in a player application.

To help you understand the process, let’s say you want to make a movie that currently resides on VHS tape available for streaming on the Internet.

Capturing

The capture phase is where you pull audio and video from its source and onto the computer using a capture card. If the source is analog, such as on a VHS videotape, then the capture card will convert the analog data to a digital form before depositing it on the computer. The digitizing process converts the audio and video to a stream of zeros and ones, or bits. Because data is being changed from one form to another, you will incur a slight quality loss during the process.

If you are using a digital device, such as a digital video camera, you would still run the audio and video through a capture card that is suitable for digital devices in order to get the data onto your computer. But since the data is already in a digital form, no conversion is necessary, and no degradation in quality occurs.

Many capture cards include a simple capture program that allows you to save the digitized media as an uncompressed AVI file, which is a standard video file format. If you are streaming a live event, saving the content into a file is not necessary because you move directly to the encode phase.

Encoding

Encoders come in two varieties: hardware and software. Their main purpose is to compress the content so it can be streamed over a network such as a local area network (LAN) or the Internet. After compression, the data is encoded into a streaming media format, such as Windows Media Video (WMV) or Windows Media Audio (WMA). Encoders use codecs (compressor/decompressors), which are algorithms that calculate and apply the amount of compression that is necessary based on the quality of the content and the intended transfer bit rate. Compressing is important because without it, content would never be suitable for streaming. For example, say the movie on a VHS tape is two hours long. Streaming it in its native state would require about 105 Mbps, which would choke a typical dial-up modem or broadband connection.

This book focuses on software encoders, specifically Windows Media Encoder 9 Series, which is introduced in chapter 2.

Distribution

With your movie digitized to a file on your computer, you can now distribute it in many ways. For example, you could put it in an e-mail message, burn it onto a CD, put it on a Web server for downloading, or stream it over the Internet.

Streaming content over the Internet requires a streaming media server. A streaming media server is different from a Web server in many ways.

First, a Web server delivers data as quickly as possible to the client computer and then moves on to service the next request. The Web server delivers this data in chunks in order to get it to the intended destination with minimal delay. In contrast, a streaming media server must maintain a constant connection with the client in order to send data at predictable rates. Maintaining a predictable rate is important because it reduces the potential for playback glitches and buffering delays that can disrupt the flow of content and negatively affect the end user experience. The streaming media server can also regulate the data being sent to the client based on feedback it receives from the player and log client data, which you can then use to understand trends, identify bottlenecks, or troubleshoot performance issues on your server. Web servers do not provide this kind of functionality.

Second, Web servers cannot use the User Datagram Protocol (UDP), which is a connectionless protocol and the preferred protocol for streaming. If the client requests content from a Web server, the delivery of the stream is more likely to be interrupted by periods of silence because the player must collect and temporarily store or buffer data from the server.

Third, Web servers do not support live or multicast streaming. Live streaming can be extremely useful when you want to distribute important news to employees of your company, for example, as a live presentation happens. Multicast streaming is a one-to-many distribution method that saves bandwidth because only one stream is distributed to many clients. (See chapter 22 for more information about multicast streaming.)

Finally, Web servers cannot stream content at multiple bit rates, which can be useful when you need to stream content to a number of clients who are accessing your server at various connection speeds.

Although there are several streaming media servers on the market today, this book focuses on Windows Media Services 9 Series, which is part of Windows Server 2003, and is discussed further in chapter 3.

Playback

The final phase is where you view the movie or listen to music on your computer. To play back a streamed file, you either enter the location of the content in your player application or click a link on a Web page. The player then contacts the server to start the stream.

The player application we will use in each scenario described in this book is Windows Media Player 9 Series, the third piece of the Windows Media 9 Series platform.




Microsoft Windows Media Resource Kit
Microsoft Windows Media Resource Kit (Pro-Resource Kit)
ISBN: 0735618070
EAN: 2147483647
Year: 2005
Pages: 258

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net