Полезная информация

Special Edition Using HTML 4

Previous chapterNext chapterContents

- 28 -
Streaming Video

by Mike Morgan

Adding Streaming Video--Why Your Connection Must Change

Currently, streaming video is the most demanding content you can add to your Web page. Despite tremendous advances in the technology, streaming video places demands on your server and its connection to the Internet, and on your users' machines and their connection to the Net.

The following sections describe the requirements of full-speed video transmission--the kind you get on your television--and then shows how the latest technology enables you to send video over the Internet.

NOTE: Some technology forecasters predict that, by the year 2000, your television, your computer, and your telephone will all be combined into a single appliance. They predict that the integration of streaming video into the Internet is one of the most important technical changes in this century.

ON THE WEB: http://www.hypertech.co.uk/video/digvid.htm  Visit this "Guide to Digital Video" for the latest information on digital and desktop video. The focus is on local networks and CD-ROMs, but you also can find links to sites that describe various aspects of Web-based streaming video.

Broadcast Video

When you turn on your television, you receive a video signal that refreshes at a rate of about 30 frames per second. (The reality is a bit more complex; a single frame of broadcast video consists of two interlaced fields, plus a brief period between frames. U.S. television sends 60 fields per second with 525 lines per frame, whereas European television sends 50 fields per second with 650 lines per frame.) The complete picture contains about 600,000 dots of information--200,000 in each of the three primary colors, red, green, and blue.

Along with this information, the broadcaster sends information about the brightness (called luminance) and chroma at each dot. (Chroma is the degree to which a color is diluted with white.) The broadcaster also sends synchronizing information so that the receiver knows when to start a new field, and one or two channels of audio. In conventional broadcasting, the finished color television signal occupies a band 6 MHz wide.

To pack this enormous amount of information onto an Internet dial-up connection, changes have to be made. The next two sections describe the ways in which engineers have transformed both the video signal and the Internet itself to make streaming video possible.

Squeezing the Signal

One of the easiest ways to improve the quality of streaming video is to resolve to send less content. You can reduce the size of video content by using some of the same techniques popular with still images: reduce the size of the image and reduce its color depth. With still images, you often experiment by encoding the image as a GIF or a JPEG to see which format gives you the best quality for the smallest size. Likewise, you can choose from a variety of coding techniques (represented by codecs) to compress your video data.

The next section describes each of these techniques for reducing the bandwidth required by the video. Codecs  The first engineering technique used to support streaming video is to take advantage of the large amounts of redundancy in the signal. Most television signals actually change very little from frame to frame. Compressors/decompressors, or codecs, compress the signal by a factor of 26:1 or more.

ON THE WEB: http://www.microsoft.com/netshow/codecs.htm  You'll find a nice tutorial on codec technology on the Microsoft site. You should also visit www.codeccentral.com for one-stop information on multimedia codecs.

Much of the dramatic capability the newest codecs have comes from the fact that they change their sampling rate as they run. If you see a codec that advertises itself as "fixed rate," it comes from an earlier generation; it may still be useful, but it won't have the compression capability of a variable-rate codec.

TIP: If you're adding streaming video to your site, you should compare codecs carefully. Your choice of codec is the single biggest factor that determines how much bandwidth you need for connecting your server and how much bandwidth an end user needs to receive your content.
Note, too, that some bandwidth is required for network overhead. If you're designing content for a 28.8Kbps dial-up connection, make sure the total bandwidth of your video and audio content stays below about 22Kbps to leave room for the overhead.

Many of the codecs available in streaming video products follow international standards. For example, H.261 and H.263 are the video coding standards developed by the International Telecommunication Union/Telecommunication Standardization Sector (ITU-T). H.261 is designed for videoconferencing and videophones. It supports bitrates of 64Kbps to 1,920Kbps. H.263 is designed for low-bitrate video; the basic configuration of the video source coding is based on H.261.

NOTE: You'll sometimes hear H.261 referred to as "P*64" because its bitrate is defined as the number p, which ranges from 1 to 30, times 64Kbps.

ON THE WEB: http://rice.ecs.soton.ac.uk/peter/h261/h261.html  You can compare H.261 codecs at various settings by viewing the video available here. You'll find a similar page for H.263 at http://rice.ecs.soton.ac.uk/peter/h263/h263.html.

When developing streaming video, some experts expressed concern that the H.261-based codecs lacked the power to deal with the full range of video sequences. After all, they said, H.261 was developed for teleconferencing, in which every frame is much like every other frame--a talking head moving slightly from frame to frame. A clip of a football game, on the other hand, is characterized by high spatio-temporal complexity--the image changes dramatically within a short time span.

The Moving Pictures Expert Group (MPEG) has released an encoding standard for both audio and video content. The formal name of the standard is ISO/IEC JTC1 SC29 WG11, which says that it is the product of Work Group 11 of Subcommittee 29 of Joint Technical Committee 1 of the International Organization for Standardization/International Electro-technical Commission; everyone calls it MPEG. Much of the recent activity in streaming video has been based on MPEG-4, the MPEG initiative for very low bitrate coding. Loosely defined, the target range for MPEG-4 is 176x144 pixel images, with a frame rate of 10 frames per second, coded for a bitrate of 4,800 to 64,000 bps--precisely the range covered by today's dial-up connections.

ON THE WEB: http://www.crs4.it/HTML/LUIGI/MPEG/mpegfaq.html  Although this page is becoming dated, it gives a good overview of the MPEG standard.

TIP: If you're serving an audience that has a variety of connection speeds--some users with 28.8Kbps dial-up connections and others with high-speed intranets--encode the content with several different codecs, one for each speed.

Be sure to choose codecs that will be available to your end users--preferably ones that come with the player application. That way, you'll be sure that end users can play back your encoded content.

To find out what audio and video codecs are installed on a Windows 95 or Windows NT machine, open the Multimedia control panel and choose the Devices tab, as shown in Figure 28.1. Here you'll see a list of your codecs.

FIG. 28.1
Use the Multimedia control panel to see which codecs are already installed on your machine.

Smaller Images  The second engineering technique is that most streaming video technologies are designed for an image that's not much larger than a postage stamp. Unlike with television, in which the user sits across the room looking at a screen that's 19 inches or more across, most computer users sit within a foot or two of their screens. An image that's two inches across on your computer screen appears to the user to be about the same size as a 19-inch image viewed from across the room.

Fewer Colors  Third, many streaming video technologies sacrifice color depth. A typical television image can contain many thousands of different shades and hues, but the image may still be usable with as few as 8 or 16 colors.

Slower Frame Rate  Finally, most streaming video technologies slow the frame rate down--way down. At low bandwidths such as a 28.8Kbps dial-up link, the frame rate may drop to one frame every two or three seconds.

NOTE: When the pace of a video is relatively slow, many codecs can predict much of the next frame with very little bandwidth. This capability allows the video player to buffer several frames. If the data connection becomes noisy, or the action on the video becomes fast-paced, the player may be able to supply enough frames out of its buffer that the end user cannot tell a problem occurred. Because even fast-paced video clips usually are not fast-paced all the time, a streaming video product that falls a bit behind real time is likely to have a chance to catch up before the buffer becomes empty.

Expanding the Pipe

The second major technology change that is making streaming video possible is the revolution in connection capacity. Although many businesses pass information around their intranets at 10Mbps or more, their connection to the Internet may be only 1.54Mbps (on a T1 link). That connection may be shared by dozens of simultaneous users.

Most home users have connections that are even slower (though they seldom have to share them). The old reliable 14.4 and 28.8Kbps modems are rapidly being replaced by 33.6Kbps and 56Kbps modems. Even faster technologies--dual-channel ISDN at 128Kbps and Asymmetrical Digital Subscriber Line (ADSL) at 1.5Mbps and faster--promise affordable high-speed connections to many users.

ON THE WEB: http://www.coe.uga.edu/resources/gsams/onramp/adsl.html  Some telephone companies are offering Asymmetrical Digital Subscriber Lines (ADSL) for around $100 per month. If this price/performance ratio sounds attractive to you, visit this site to learn more about high-speed connections. If you're in Pacific Bell's service area, learn more at http://www.pacbell.com/products/business/fastrak/adsl/index.html

From the point of view of the server, a popular piece of video on a Web site can be devastating. Suppose you have a Web page that receives 100,000 visits per day; the page, including graphics, is 60K. If the average user can receive the content at a rate of 30,000 bits per second, and if all the requests were distributed evenly throughout the day, you could support the load on your server by supporting about 23 simultaneous 30Kbps connections. That works out to about 694Kbps. Because the requests won't be evenly distributed, you'll probably want to provide at least twice that capacity; a 1.54Mbps-wide T1 connection could provide adequate performance.

Now suppose that you add a modest streaming video clip--say, 5 minutes at 22Kbps--to the page. If every visitor plays the clip, you need more than 90 times the original capacity. If you needed a single T1 before, you now need between 30 and 60 T3 connections. The communications cost impact is staggering, not to mention the additional computing power that would be required.

The essence of video-on-demand is unicasting: each user gets his or her own connection to the server. An alternative design is called multicasting. Instead of sending the video to each user upon request, the video clip (or live event) is played continuously to a special address (called a Class D, or multicast, address). Anyone who wants to listen in can "tune in" to that address. (You can always spot a Class D address--the first octet will be between 224 and 239. Thus, is a Class D address.)

NOTE: You can learn more about multicasting in RFC 1112, "Host Extensions for IP Multicasting." RFCs are "Requests for Comments," many of which serve to define standards on the Internet. You can download RFC 1112 from http://ds.internic.net/rfc/rfc1112.txt or another RFC repository closer to you.

If you replace your video clip with a multicast feed, you need only one connection in addition to those already provided for the static page content. The additional connection could be at a speed as low as 22Kbps. You can accommodate this additional load easily, with little or no change in the communications configuration.

Much of the early work on multicasting was done with the Virtual Internet Backbone for Multicast IP, or MBONE. At that time, many routers--the boxes that steer data packets around the Net--did not accommodate multicasting. The design of the MBONE was to provide multicasting in many small areas and connect these multicasting centers together with unicasting connections (known as tunnels).

Today many routers support multicasting, so the need for the MBONE is not as great as it once was. On the other hand, the rise of streaming video has increased the demand for bandwidth. Many of the lessons learned on the MBONE are applicable to the ways servers and networks are designed to support streaming video.

ON THE WEB: http://www.best.com/~prince/techinfo/mbone.html  Learn about MBONE applications and technical information.

Streaming Video--The Market

The combination of highly compressed video and higher bandwidth connections has made streaming video a reality. The largest players in the computing industry, including Microsoft and Oracle, are making major investments to ensure that content providers and end users adopt their particular technology. This section summarizes the leading video formats and products:

ON THE WEB: http://www.vdo.net/cgi-bin/press?54  Learn more about the strategic alliance between Microsoft and VDOnet from this press release.

The remainder of this chapter examines each of these technologies in detail.


RealNetworks, the folks who first developed streaming audio, added streaming video in early 1997. Today they are combining the two protocols: the client is called RealPlayer, and the servers belong to a family known as Real Servers. RealNetworks has the lion's share of what is still a fairly small market; their competitor, Microsoft, has made a 10 percent investment in them. Microsoft has also invested heavily in other companies with similar technology; they have taken an equity position in VDOnet Corporation, and they own VXtreme outright.

The following sections describe the process of developing video content and delivering it to the desktop.

ON THE WEB: http://www.real.com/products/realvideo/index.html  Start here to visit RealNetworks' online description of RealVideo.

Before You Start: Non-Technical Considerations

Many of the issues related to producing video for the Internet have nothing to do with technology. Here's a checklist of steps you should take when getting ready to shoot your own video:

1. Develop a storyboard, showing your video scene by scene. Remember to keep your overall design simple; shorter is better.

2. Script each scene. Again, keep your design simple and short.

3. Arrange for actors, props, locations, and other resources. Use professional actors whenever possible; the quality will show through in your finished product.

4. Obtain high-quality cameras. Although you may not need professional-quality equipment, don't try to do professional work with VHS or 8mm camcorders. Invest in, or rent, a Hi8 camera, such as the Sony TR400.

5. Make sure you budget for high-quality microphones as well as a good mixer and audio capture board. Poor audio ruins more productions than poor video.

6. During filming, keep the camera steady and let the actors move. Shots in which the camera moves are based on advanced techniques and should be left to the professionals. Be sure you stay close to the action; remember that the finished product will be only an inch or so across.

7. Make sure you get plenty of light. Your video is more likely to be too dark than too light.

You'll have a choice of video formats going into your video capture system. The most common formats, shown here in order of decreasing quality, are

Note, too, that you'll often have a choice of S-Video or Composite output from your video hardware. S-Video generally gives somewhat higher quality.

ON THE WEB: http://www.yahoo.com/Business_and_Economy/Companies/Entertainment/VideoProduction/  If, after reviewing this section, you decide to hire a professional to produce your video, check out the listings on Yahoo!. Make sure the company you choose has prior experience producing streaming video for use on the Internet.

Video Capture Hardware

The first step in producing a RealVideo clip is to capture the video and audio to the disk. You'll need two computer components for this step (in addition to lights, camcorder, and other equipment for the actual production):

NOTE: If you already have your video in QuickTime or AVI format, you can skip this step and go directly to encoding.

Video Capture Card  One place where you can save in your video budget is on your video card. Video cards come in a range of quality, from some low-budget cards priced at under $1,000, to professional-grade cards costing thousands of dollars. If you're producing content for use on a CD-ROM or other non-network delivery mechanism, you'll appreciate the difference in quality. Unless the video you're producing will also be used off the Web, however, you don't need to use the high-end cards. The codecs will decrease the quality of your video to the point where the end users cannot tell the difference between video captured through a top-of-the-line video capture card and video captured through a much less expensive device.

TIP: Most video capture cards can output your finished video back to tape. After you edit your video and have a finished product ready for digitizing, save it to videotape as well. You can use the tape as a demo to show off your work without having to have access to the Net.

ON THE WEB: http://www.yahoo.com/Computers_and_Internet/Information_and_Documentation/Product_Reviews/Peripherals/Video_Card s/Video_Capture/  Read the online reviews of video capture cards before choosing your product.

Like most computer equipment, any video capture card you buy runs the risk of being obsolete tomorrow. Nevertheless, the following few companies and products have been around for a while and have a good reputation:

You'll find the latest list of video capture cards that have been tested by RealNetworks at http://www.real.com/products/realvideo/reviewg/rvencoding.html. In general, any video capture device that produces Video For Windows output is acceptable. \

Seagate A/V Professional Disk Drive  Although strictly speaking the A/V Drive is optional, consider the use of a special hard drive. Video capture puts an extraordinary load on your hard drive; many products that are quite acceptable for storing other files cannot keep up with video. Seagate's A/V Professional series have been specifically designed for video capture.

NOTE: The reason most hard drives can't capture video reliably is that they must stop accepting data occasionally. From time to time, most disk drives must stop accepting data for a moment so that they can recalibrate. With most applications, this temporary downtime is unnoticeable; the application storing data to the drive stops and waits for the disk drive to catch up. With real-time video, however, the video card and its associated software can't wait; any downtime on the drive translates into dropped frames.
To learn more about configuring Seagate's A/V Professional drives to work properly in a video capture application, read http://www.seagate.com/support/disc/AV_pro.shtml.

Editing the Video

Most video professionals prefer Adobe Premiere (http://www.adobe.com/prodindex/premiere/main.html) for editing their video. Your video capture card probably came with an editor, too, which may be entirely satisfactory.

NOTE: Several of the leading streaming video companies, including RealNetworks, offer Adobe Premiere plug-ins, allowing you to export from Premiere directly into the encoded format. Learn more at www.adobe.com/prodindex/premiere/streamvid.html.

TIP: Many amateurs over-edit, getting caught up in cross fades, dissolves, and complex transitions. Get your drama from the pacing of the cuts and from background music, not from the technical gimmicks of the editor.

Encoding Video

Earlier in this chapter, in the section "Adding Streaming Video--Why Your Connection Must Change," you learned that the process of turning a high-bandwidth video signal into a bitstream that can pass through the Internet is computationally complex. That process is called encoding. To do it right, you'll need plenty of computing resources.

ON THE WEB:  Download this content developer's guide (an Adobe PDF document) from RealNetworks' site. It shows you how to build high quality video presentations and stream them economically.

Encoding a Pre-Recorded Clip  In many cases, you'll produce a digital video clip, edit it, and then send it to the RealVideo encoder. If you use this approach, you don't need the fastest hardware because the encoder isn't under the time constraints imposed by live data. If you're a Windows user, you can get by with a 486 at 66 MHz for simple encoding tasks. If you're processing complex video images with a low-bandwidth codec, however, you'll want additional speed. For best results, get a faster processor; RealNetworks recommends a Pentium 120. Similarly, 16M of RAM is adequate, but 32M is recommended.

Mac users can get by with a PowerPC and 16M of RAM, though a PowerPC 604 with 32M is recommended.

Live Encoding  When you're encoding a live event, the encoder doesn't have an opportunity to stop and work a bit harder on a difficult sequence; the encoder must keep up with the in-coming data. You'll need fast hardware to keep up with this demanding task. If you're planning to encode at a frame rate faster than two frames per second, RealNetworks recommends that you use a dual Pentium at 200 MHz with at least 64M of RAM, running Windows NT. If you're content with a slower frame rate, you can drop down to a Pentium at 166 MHz and 32M.

Scaling and Cropping  The RealVideo encoder accepts any frame size that has a height and width that are multiples of 16; 176x144 is a nice size. (It will also accept 160x120.) Most video capture cards produce frames that are somewhat larger than these figures; for example, the smallest frame the miro DC30 and the Truevision Bravado 1000 can produce is 320x240. You'll need to scale and crop the video before sending it to the encoder. You can make these changes in your video editor.

Choosing a Codec  One of the codec's major tasks is to extract enough information from the original video to allow the video player to predict most of the pixels of the next frame. If you need to produce a bitstream that can fit over a dial-up connection, this task becomes technically challenging. You can set three variables that will measurably affect the quality of your output:

Although end users will put up with low-quality video, they must be able to hear the audio track. Table 28.1 shows some rules of thumb for choosing the audio codec if you are designing a clip for a 28.8Kbps connection. (Better audio codecs are available if the end user has a higher speed connection.)

Table 28.1  Choose the Audio Codec First, Based on the Quality of Sound You Require

Type of Audio Recommended Codec Audio Bitrate in Kbps
Voice 6.5Kbps voice 6.5
Background music RealMedia 8Kbps music 8.0
Foreground music RealMedia 12Kbps music 12.0

A low-speed dial-up connection typically has 28.8Kbps of bandwidth available. Some of this bandwidth is required for network overhead; you should not use more than 22Kbps for your video clip. Plan for a lower figure--19Kbps. Of that 19Kbps, give the audio bitstream as much room as it needs, and force the video to work with the remainder. Table 28.2 shows RealNetworks' recommended bitrate for four different connection speeds.

Table 28.2  Choose Your Bitrate Based on the End User's Connection Speed

Connection Speed in Kbps Target Bitrate in Kbps
28.8 19
56.0 44
64.0 56
128.0 105

After you select an audio codec and a video bitrate, the only control left is the frame rate. Here are some rules of thumb for encoding various types of video:

TIP: If you have a video clip that cannot be encoded with a frame rate higher than 1 fps, consider switching to "slide show mode." Figure 28.2, part of an Elton John music video from ramhurl.real.com/cgi-bin/ramhurl.cgi?ram=eltonj20_12_5.rm, shows this mode.

FIG. 28.2
If you need to put the music in the foreground, consider switching to slide show mode for the video.

You can tell the encoder to "optimize frame rate." It will adjust the frame rate based on the spatio-temporal complexity of the video that it is encoding. If you still cannot encode your video to fit within your targeted bitrate, decrease the frame size and try again.

TIP: You don't have to choose codecs by trial and error. Start with the templates that come with the RealVideo encoder, and find one that's a close match to your clip. If you're not happy with the results of any of the templates, switch to Advanced mode and write your own template, based on the closest matching template you can find.

You have a choice of two video codecs: standard and fractal. For low bitrates, you'll get better results from the standard codec. At higher bitrates, experiment to see which codec you prefer; most clips encode somewhat better in the standard codec.

Serving Video from Real Servers

Serving streaming video isn't as demanding as encoding it, but you'll still want a fast computer to host the server. RealNetworks recommends that you use a 486 at 66 MHz or faster; a Pentium, of course, is even better. RealNetworks offers versions of their server for most common UNIX systems, including Sun's Solaris and SunOS, Silicon Graphic's IRIS, DEC UNIX, and IBM's AIX.

For any of these operating systems, you should budget 3M of RAM plus 60K for each simultaneous user.

The RealVideo Servers employ "Smart Networking"; they will attempt to use the most efficient transport mechanism available, stepping through the following mechanisms in order:

Delivering the Finished Product with RealPlayer

Your finished HTML page should include a link to http://www.real.com/products/player/index.html. There your visitors can download a free copy of RealPlayer or an evaluation copy of RealPlayer Plus.

TIP: Use bandwidth negotiation (described in Chapter 27, "Streaming Audio,") to let the end user's copy of RealPlayer work with the server to determine the optimum bandwidth. Figure 28.3 shows a clip of actor John Tuturro being interviewed by Spike Lee. This 36.4Kbps clip is played through a 28.8Kbps connection, from ramhurl.real.com/cgi-bin/ramhurl.cgi?ram=tutn.rm.
When the RealPlayer client connects to the server, it uses a TCP/IP connection to send bandwidth information to the server. The client and the server agree on a bandwidth, and the server begins to download a version of the video encoded with the proper codec. If there's no version of the video encoded with a slow-enough codec, the client cannot receive the video clip.

Other Players

During 1997, Microsoft began taking a stake in the streaming video market. They bought 10 percent of RealNetworks, established strategic alliances with Vivo and VDOnet, and bought one major player--VXtreme--outright.

Microsoft seems convinced that streaming video is going to be an important part of the Web. By consolidating the major players around their standard (the Active Streaming Format), they may bring some degree of standardization to this emerging market. These moves also ensure that their product, NetShow, is left in a strong position.

FIG. 28.3
The server works with the client to select the best bandwidth.


VDOnet's product, VDOLive, is characterized by the fact that the content needs to be encoded only once. A video file that is encoded by using VDOnet's technology will take advantage of higher bandwidth as it becomes available. This design allows you to make video content available through a single link; if a user with a 28.8Kbps modem connects, he or she will see a slow, rather fuzzy image. If the user has ADSL or another high-bandwidth connection, he or she will see near TV-quality video. (The threshold for getting clear, 30 frame-per-second video seems to be about 512Kbps.) In contrast, RealNetworks recommends that you encode the content several times--once for each bandwidth you plan to support--though they do support bandwidth negotiation so that the end user can connect through a single link.

VDOnet reports that, under ideal conditions, an end user with a 56Kbps modem can display 15 to 19 frames per second at a frame size of 320x240 pixels. Of course, this figure goes down as the available bandwidth at the server and the client decrease. Figure 28.4 shows the VDOLive player in action.

ON THE WEB: http://www.vdo.net/  Start your "VDO Experience" at VDOnet's home page. You can download the player by clicking Download Software. Then go to VDO Guide and visit the Site Gallery or the Best of VDO.

FIG. 28.4
White House Drug Czar General Barry McCaffrey, live through VDOLive.


VXtreme's Web Theater supports low bit-rate streaming but is aimed at the 56Kbps niche. Starting with Web Theater 2.2, it can provide high-quality quarter-screen video (320x240). Figure 28.5 shows a smaller frame: 150x154.

FIG. 28.5
VXtreme's site features a Microsoft video describing its approach to streaming video.

By acquiring VXtreme, Microsoft got access to their technology, their customers, and their employees. VXtreme's customers include CNN Interactive, Warner Brothers, CNNfn, and General Electric. You can see some of these sites by visiting http://cnnfn.com/fnonair/vxtreme/index.html and http://www.warnerbros.com/vxtreme/.

ON THE WEB: http://www.vxtreme.com/  For more information about VXtreme and their acquisition by Microsoft, visit their Web site.


Vivo Software was one of the first companies to enter the streaming video market. They are working closely with Microsoft; they support Microsoft's ASF and can directly play video produced with Microsoft NetShow. Their production environment, VivoActive Producer, generates ASF files, readable from their own player or from NetShow. Figure 28.6 shows the VivoActive Player. This screen shot is from PBS's Nova program, produced by WGBH. For similar programs, visit http://www.pbs.org/wgbh/pages/nova/avalanche/previews.html. (Vivo also offers non-streaming AVI and QuickTime versions of these clips, as well as RealAudio narration.)

FIG. 28.6
Nova's program on avalanches features scientist Othmar Buser.

ON THE WEB: http://www.vivo.com/index.html  From here, you can download the VivoActive Player and visit Vivo Software's site gallery.

Microsoft and the Active Streaming Format

By acquiring an interest in many of the major streaming video players, Microsoft hopes to establish its Active Streaming Format (ASF) as the de facto standard for streaming video. From that position, Microsoft's own streaming video product, NetShow, may be able to challenge RealNetworks' RealVideo for market dominance.

NOTE: Microsoft has demonstrated a unified multimedia technology called DirectX. Look for this Microsoft standard to play an important role in Internet multimedia. Learn more about their approach at http://directx/default.asp.

ON THE WEB: http://www.microsoft.com/products/prodref/201_ov.htm  Learn about NetShow from the Microsoft site. You'll also want to visit www.microsoft.com/netshow/ for more technical information.

Encoding Video with NetShow Tools

NetShow comes with tools that convert existing video files, including AVI and QuickTime movies, to Microsoft's Active Streaming Format (ASF). Microsoft distributes 10 codecs but allows you to plug in other codecs that you may prefer.

TIP: If you choose to use a codec that doesn't come with the NetShow player, be sure to give your site visitors a way to download it. Microsoft provides sample code for this task at http://www.microsoft.com/netshow/codecs.htm#install. The disadvantage of this approach is that it relies on the CODEBASE parameter of the <OBJECT> tag, which is specific to Microsoft Internet Explorer.

Selecting a Codec  Microsoft ships five codecs in the NetShow client core installation kit:

NetShow is also compatible with any fixed-rate ACM codec.

If the end user has opted for the full installation of the NetShow player, or if he or she has Microsoft Internet Explorer 4.0, you can count on the following codecs being present in addition to the ones listed for the core installation:

End users with Internet Explorer 4.0 will also have the Intel H.263 codec, a good low- to medium-bitrate video codec.

ON THE WEB: http://www.microsoft.com/netshow/codecs.htm  Learn more about NetShow's codec- independence.

System Requirements  The system requirements for the NetShow tools (which include their encoder) are comparable to those for RealVideo: you should have at least a 486 running at 66 MHz with 16M of RAM, though a 200 MHz Pentium Pro with 32M or more is recommended.

CAUTION: Many of the examples on the Microsoft's NetShow Web site show VBScripting or other features available only in Microsoft Internet Explorer. If you intend to make your Web pages accessible to Netscape Navigator users as well, avoid these Microsoft-specific features.

The NetShow Server

Not surprisingly, the NetShow server runs on Microsoft's Windows NT 4.0 operating system. They offer both unicast and multicast connections. Recall that too many simultaneous unicast connections can saturate a server; NetShow offers a server management feature that allows you to limit the number of concurrent users or even limit the amount of data coming from one server. If you set up a server farm, you can arrange for requests to be distributed across multiple servers, to keep the load within the capabilities of any one machine.

NOTE:etShow also offers an "illustrated audio" mode, with audio synchronized with still images. This mode corresponds with RealVideo's "slide show" mode, described earlier in this chapter in the section "RealVideo."

ON THE WEB: http://www.microsoft.com/netshow/provider/webcstrs.htm  If you want help developing or hosting your NetShow content, check this list of providers who are working with Microsoft.

Loading the NetShow Player

Players are available for Windows 95 and Windows NT machines. Microsoft is developing versions for the Macintosh, Windows 3.1, and various UNIX platforms. Figure 28.7 shows a Microsoft-illustrated ASF file that gives driving directions from the Seattle-Tacoma airport (SEATAC) to Microsoft's main campus in Redmond, Washington.

FIG. 28.7
Use illustrated audio when you need to emphasize audio over video content.

ON THE WEB: http://www.microsoft.com/netshow/download/player.htm  Direct visitors to this page so that they can download the NetShow player.

Xing StreamWorks and XingMPEG

Recall from Chapter 27, "Streaming Audio," that Xing Technology Corporation has made a strong commitment to the standards set by the Moving Pictures Experts Group (MPEG). Xing offers XingMPEG, which is an MPEG encoder and player, and StreamWorks, which allows you to download XingMPEG files as streaming video. Their gallery, at http://www.xingtech.com/content/sw2_content.html, contains over 80 sites demonstrating both audio and video content. Figure 28.8, shot from video.aquarius.eds.com/jason/j6.xdm, demonstrates Stream-work's capability to expand the image to the full screen (with a consequent loss of resolution).

FIG. 28.8
Dr. Bob Ballard introduces this video clip of JASON's voyage to Hawaii.

ON THE WEB: http://www.xingtech.com/  Learn more about Xing's products and download their free players.

Apple's QuickTime

Apple introduced QuickTime technology early in the life of the Macintosh. They quickly delivered both a Macintosh and a Windows version of viewers. Not surprisingly, QuickTime became the de facto standard for time-based media, including video content. Market research firm Griffin Dix Research Associates found that QuickTime and the Mac OS are the platforms of choice in the digital video and multimedia markets (http://product.info.apple.com/press_releases/1997/q4/970805.pr.rel.griffindix.html).

Today Apple offers several members of the QuickTime family, including the following:

ON THE WEB: http://quicktime.apple.com/qtsites.html  Apple calls the combination of the members of the QuickTime technology family the "QuickTime Media Layer." You can visit QuickTime-enhanced sites by following the links that start on this page.

In addition to the "tween" track for 3DMFs, QuickTime supports sampled audio tracks and a special music track (based on high-quality 16-bit MIDI).

NOTE: Apple's MPEG codec allows cutting, copying, and pasting of MPEG files--rare capabilities among video players.

ON THE WEB: http://quicktime.apple.com/  Learn more about Apple's QuickTime technology online. Download their PDF document, "QuickTime and the Internet Fact Sheet," to learn more about including QuickTime movies on your Web page.

Netscape bundles Apple's QuickTime plug-in with their browsers, so Web developers can embed QuickTime movies in their pages. Figure 28.9 shows a sophisticated example of QuickTime, with 16-bit color, MIDI sounds, text track overlays, and modifier track transitions. MovieWorks is a Macintosh application that allows developers to integrate text, sound, paint, and video easily.

FIG. 28.9
This QuickTime sample was built with MovieWorks Interactive.


Like the Windows AVI format, a QuickTime movie generally needs to be downloaded to the client computer before it can be played. To support Web users, Apple rearranged the order of the information in the QuickTime file. This rearrangement is called "fast-start." The QuickTime plug-in reads the length and size of the movie and makes a determination on how much of the file it needs before it can begin to play. Even on a dial-up connection, the QuickTime movie can begin to play within a few seconds.

ON THE WEB: http://www.digigami.com/moviescreamer/  If you want to apply fast-start to a QuickTime movie from your Windows or UNIX computer, get MovieScreamer from DigiGami. Mac users can use QuickTime 2.5 itself, available at quicktime.apple.com/sw/sw.html. Just click the Make movie self-contained and Make movie playable on other computers options in the Save As dialog box.

TIP: If you have QuickTime movies and want to make them available by streaming video, consider using the RealVideo encoder to convert them to RealVideo.

Streaming QuickTime and QuickTime TV

Although fast-start represents an improvement for QuickTime, QuickTime is still essentially a file-based technology. Apple wants to offer a true streaming video technology; their first version, called "streaming QuickTime," is described at http://streaming.quicktime.apple.com. The demo application developed with streaming QuickTime was called "QuickTime TV." QuickTime TV is a real-time-only technology--just the opposite of conventional QuickTime. To support video clips with a real-time technology, Apple developed "broadcasters" and "reflectors" to make it easy to multicast the video content.

In March 1997, Apple put the streaming QuickTime project on hold; they expect to start it again so that streaming QuickTime moves into the supported version of QuickTime in 1998. Meanwhile, all the tools, players, and sample files are available through http://streaming.quicktime.apple.com. Figure 28.10 shows a screen shot of a streaming QuickTime clip developed by KCAT (Channel 20), a community broadcast station in California.

FIG. 28.10
KCAT makes video content available over the Web.

Previous chapterNext chapterContents

© Copyright, Macmillan Computer Publishing. All rights reserved.