You can deliver digital media files to clients over a network by using one of two methods: streaming or downloading. This topic provides an overview and a comparison of each method.
To deliver content to users by using the downloading method, you typically save the content to a Web server and provide users with a link to the content by adding the link to the content on a Web page, for example. The user then clicks the link, downloads the file to his or her local hard disk, and then plays back the content using a player.
Downloading requires that users copy entire files to their computers before they can play the content, which consumes both time and disk space. In addition, because the entire file must be downloaded to a computer before it can play, downloading can not be used with live content.
Downloading does not make efficient use of available bandwidth. When a client begins to download a digital media file, all available network bandwidth is used to transfer the data as quickly as possible. As a result, other network functions may slow down or be disrupted.
To deliver content to users by using a streaming method, you can save the content to a Windows Media server, and then assign the content to a publishing point. You can then provide users with access to the content by either creating an announcement file or by supplying users with the URL of the publishing point. You can embed the announcement file or the URL in a Web page or send it in an e-mail message. When the user clicks the link or the announcement file, the player opens and connects to the stream.
Streaming uses bandwidth more efficiently than downloading because it sends data over the network only at the speed that is necessary for the client to render it properly. This helps prevent the network from becoming overloaded and helps maintain system reliability. There is typically a delay between the time the stream is received by the player and the point at which it begins playing because the player must first buffer the data in case there are delays or gaps in the stream. Because data streaming and rendering occurs at the same time, streaming also enables you to deliver live content.
To stream content smoothly, the
The impact of inadequate available client bandwidth can be minimized if multiple-bit-rate (MBR) content is streamed. MBR content enables the player to request a lower bit rate stream from the server so that stream thinning is not necessary.
Windows Media Services 9 Series includes Fast Streaming, which provides several features that combine the advantages of streaming and downloading.
The server can use the Fast Start and Advanced Fast Start features to ensure that the client can begin playing the content as quickly as possible after the stream begins. The Fast Start feature enables the player to download and buffer a small portion of the content from the server as fast as the network will permit before the content begins to play. Once the buffer has been filled on the player, the server slows down the stream until it matches the rendering speed of the player.
The server can take Fast Streaming one step further by using the Advanced Fast Start feature to enable clients to begin playing the content even before the player's buffer is full. As soon as the player receives a minimum amount of data, it can begin playing the content. The player's buffer continues to fill at an accelerated rate—a rate that is faster than the encoded bit rate of the content. When the buffer is full, Fast Start acceleration stops and the player begins receiving data at the encoded bit rate.
When the server uses the Fast Cache feature, it streams all of the content to the player at the highest possible bit rate so that the effects of network congestion or interruption can be minimized. As with normal streaming, the player begins rendering the content as soon as the necessary amount of data has been buffered. The rest of the data is stored in a temporary cache on the client computer.
If you are streaming variable-bit-rate (VBR) content, the amount of bandwidth required to transmit the stream can fluctuate based on the complexity of the content. Fast Streaming can take advantage of periods of lower bandwidth by sending extra data to the player to replenish the content buffer, enabling the VBR content to play back smoothly when streamed from the server.