The technology of networked media consists of three main components: the server, the network, and the client machine. These three components must work in tandem to deliver good Web multimedia to the desktop. It makes no difference how high-end your video server and network are if your users are running low-end desktop machines that cannot handle the demands of playback.
The wildest of all these wild cards is bandwidth. If you purchase a high-end media server, you can expect a certain level of performance. You can predict playback performance on desktop machines. These elements are somewhat measurable. But unless you are working with a dedicated network, bandwidth will be hugely variable and difficult to predict. Issues regarding bandwidth run from the basic configuration of your connection to the network to the amount of network traffic at any given time.
Given these variables, the parameters for creating and delivering Web multimedia are not easily defined. They will vary depending on the scope and content of your project. If you are creating a Web site for a corporate intranet, for example, your media can be more technologically demanding than if you send it worldwide over the Internet. The key is to be well acquainted with the configuration of your client base and prepare accordingly.
Streaming technology sends data to the desktop continuously but does not download the entire file. In the optimal scenario, the content is stored on a media server, which maintains a constant conversation with the client to determine how much data the user can support. Based on this information, the server adjusts the data stream accordingly and sends just enough data to the client.
Streaming offers many benefits, the first of which is random access. Streaming technology permits movies to be viewed at any point in the video stream. If your reader is accessing an hour's worth of video and wishes to view only the last five minutes, he or she can use the controls to move forward to the desired starting point. Another benefit is a lower storage demand on the client machine. Streaming media plays directly to the display; it is not stored in memory or on the hard drive.
The strengths of streaming are also its shortcomings. To play a movie in real time the player software needs to keep up with the incoming data sent from the server. As a result, if there are glitches in the network or if the client machine cannot handle playback, the data may simply be lost. Streaming playback requires significant processing power, so playback may be suboptimal if the processor has to drop frames to keep up with the incoming stream. Also, streaming media needs to be heavily compressed to create a file small enough to play in real time.
Downloadable media is temporarily stored on the client machine in memory or on the hard drive. Most downloadable media is progressive, which means that the information necessary for playback is stored at the beginning of the file. Progressive download allows playback before the entire file has downloaded. Downloadable media is sent to the client using the same HTTP protocol as a Web page, so no special server is required. As long as the download speed stays above the data rate of the movie, playback will be uninterrupted.
The quality of downloadable media is generally higher than that of streaming media. Because the data rate is not required to remain low enough to play the material in real time, more data can be devoted to image quality and motion. Downloadable media also has integrity: all the data in the original movie is contained in the downloaded version. This means that playback is predictable and that you can download the data onto your disk for future use.
The main drawback of downloadable media is the storage demand it places on the client machine. Even videos of short duration require many megabytes of storage. The other problem is that downloadable media does not allow random access. If you want to view only the last few minutes of a long clip you must wait for the entire clip to download. One solution to both of these problems is to split longer media segments into smaller chunks. This reduces the demands on the client machine and allows users more direct access to the material they want.