Chapter 19

Using Multimedia


CONTENTS

Multimedia is the fusion of communication streams that affect different sensory modalities. Multimedia is a powerful tool for computing information systems, enabling you to convey ideas via mechanisms, such as graphics, 3-D modeling, motion, and sound.

With multimedia, you are better able to communicate meaning to your audience; these techniques more directly interface with an individual's real-world perceptions. Some examples of multimedia may merely provide flash, attempting to amaze users with technical wizardry; however, the best use of these devices enables your Intranet to illustrate concepts that can't be sufficiently explained through the textual medium.

In this chapter, you will learn:

Using Sound

The primary means through which humans communicate is sound. Early PCs were limited to producing simple beeps and buzzes, but most desktop machines today can re-create speech, music, and advanced sound effects. This medium adds a whole new dimension to your audience's experience as they use your Intranet.

Sound File Characteristics

Sound is a perception created by pressure waves that are sensed by the ear. This real world phenomenon must be translated into data understood by a computer. Two very different types of sound files available to desktop computers accomplish this, MIDI files and waveform files.

Musical Instrument Digital Interface (MIDI) is a format that is used to reproduce music. It tells a music synthesizer when to start and stop playing certain notes and instruments. MIDI is a very compact and efficient format, but it doesn't attempt to precisely reproduce a prerecorded, real world auditory experience.

Waveform files are much less compact, but attempt to describe the wave corresponding to a sound. These files can replicate voices and reproduce specific musical presentations. For these reasons, most Intranet applications are best suited to waveform versus MIDI data. Sound information in these files is characterized by three parameters:

All of these parameters affect the quality and compactness of the digitized sound.

Sound File Formats

Waveform audio data is usually stored in one of many file formats, which make up a confusing array of schemes. It is useful to incorporate previously recorded sounds into your Intranet. Understanding the commonly available formats assists you in developing a consistent collection. The formats you commonly find are shown in table 19.1.

Table 19.1  Common Sound File Formats
Format TypeExtension
NeXT/Sunau, .snd
RIFF WAVE (Microsoft).wav
Creative Voice.voc
Macintosh/SGI AIFF.aiff
Macintosh HCOM soundnone

Playing, Creating, and Editing Sound Files

In order to work with sound files, your desktop computer must have suitable hardware. Macintosh and most UNIX workstations are constructed with the minimum necessary hardware. The basic speaker on a PC, however, is suited to playing simple beeps and not much more; drivers have been written to demand more from this little piece of hardware, but the reproduced sounds are very poor in quality and the speaker has no ability to record sounds. Thus, to support multimedia sound, PCs should be equipped with one of many available sound cards, the most common being the Creative Labs SoundBlaster series.

CAUTION
Sounds can be very distracting in an office environment. When using audio files on an Intranet, make sure that you make it clear to the individual viewing the page that a sound will be played if he proceeds. Use sounds judiciously.

Many good sound applications are available on the Internet for different platforms. WHAM for Windows can play and record many sound formats, including all listed in table 19.1. SoundApp for Macintosh plays a similarly impressive array of formats. Enabling your Web browser to utilize these applications is a two step process that is similar for all "helper" applications:

  1. Download the software, unpack it, and install it onto your computer.
  2. Configure your Web browser to use the application as a helper. This is done through your helper application preferences menu and configuring your browser to launch the application for "audio/basic," "audio/x-wav," and "audio/x-aiff" formats.

Recording sound files may require additional hardware, such as a microphone or an interface to a CD. You need to choose a file format and the characteristics that make the most sense to your Intranet. You need to record the most compact files with the necessary level of quality. For speech and simple sound effects, a rate of 8,000 samples/sec and saved in the ubiquitous NeXT/Sun .au format is probably the best idea. For high-fidelity music, choosing a higher sampling rate and a format like WAVE makes more sense. Realize that such files require a significant amount of space and take a considerable delay in downloading.

For more advanced sound file editing, Cool Edit for Windows (see figure 19.1) is a high-quality application that is available on the Internet. With Cool Edit, you can record sounds, retouch files, add special effects, merge files, and work with many sound file formats. If you work a great deal with sound and find this program's capabilities limiting, more advanced commercial packages are available at greater costs.

Figure 19.1 : Cool Edit allows you to manipulate waveform sound files.

NOTE
WHAM is available from URL: http://www.winsite.com/pc/win3/sounds/wham133.zip
SoundApp is available from URL: http://hyperarchive.lcs.mit.edu/HyperArchive/Archive/gst/snd/sound-app-202.hqx
Cool Edit is available from URL: http://www.netzone.com/syntrillium/

RealAudio

RealAudio is a commercial audio delivery system developed by Progressive Networks. While other sound file formats require large storage space and a significant delay to transmit from the server, RealAudio is designed to provide efficient, on-demand audio. RealAudio provides a good solution for audio-intensive Intranets.

The RealAudio system consists of three components: The RealAudio Player enables Windows, UNIX, and Macintosh computers to play RealAudio sounds and is freely available. The RealAudio Server enables an Intranet to transmit audio information, and a license must be purchased from Progressive Networks. The RealAudio Encoder enables you to encode standard audio formats into the RealAudio format.

Once the RealAudio Player has been installed on a desktop computer, it can receive and play RealAudio files. The Player contacts the server with a TCP connection to control the transmission, while the sound data is sent back as a stream of UDP datagrams. The Player reproduces the sound as it receives the stream of data, meaning that perceived download time is minimal. Sound quality is generally good, though over a busy network, datagrams will be lost and quality will degrade.

Audio content is provided by installing the RealAudio Server and then creating links in your HTML page to RealAudio metafiles. A metafile is a simple text file; it contains the URL to the sound file and should be transmitted with a MIME type of "audio/x-pn-realaudio." When the browser receives the metafile, it passes it to the Player, which then receives the RealAudio sound identified by the URL. The steps to setting up the RealAudio server are:

  1. Download the RealAudio Server archive file from Progressive Networks as per the instructions provided by them. For Windows NT systems, the file will be a PKZip archive. On UNIX systems, the file will be a UNIX compressed TAR archive. If you are installing the server from a CD-ROM, mount the CD and copy the directory structures to your machine. Ensure that the permissions are appropriate and skip to step 3.

    TIP
    You need a special utility to extract PKZip archive files. The PKWare utilities are available from URL: http://www.pkware.com/

  2. Move the file into the directory where the server should reside. Under Windows NT, "C:\win32app" may be a good choice. Under UNIX systems, "/usr/local" may be most appropriate. The following examples assume these directories. Uncompress the file.
  3. Configure the server by editing the file called "server.cfg," located within the "pnserver" directory. Ensure that all defaults are appropriate. You will need to add values for the "CustomerName" and "LicenseKey" settings with the information provided by Progressive Networks in order to use your licensed server.
  4. You will want to have the server start up automatically during your machine's boot process. To do this under Windows NT, you will need to use a utility provided by Progressive Networks, invoked as so:
    C:\win32app\pnserver\bin\crtsvc
    C:\win32app\pnserver\bin\pnserv20.exe
    C:\win32app\pnserver\server.cfg
    This utility will add the RealAudio server into your Services Control Panel. You can now use that utility to configure the startup characteristics of the PNServer service. Ensure that the Startup Type is set to "Automatic."
    To start the server automatically under UNIX systems, you will need to add the following lines to an appropriate startup script, depending on the UNIX platform you use. Consult your system administrator for assistance.
    if [-f /usr/local/pnserver/bin/pnserver ]; then
    echo "Starting RealAudio server..."
    /usr/local/pnserver/bin/pnserver /usr/local/pnserver/
    server.cfg
    fi
  5. You've now successfully setup your RealAudio server. Reboot your machine to start the server. Now you need to create RealAudio content. Refer to the Real Audio Content Creation for detailed instructions on creating RealAudio data files, which end in the .ra extension. Place them into the server's BasePath directory.
  6. You must create a metafile which points the RealAudio player to the appropriate RealAudio data file. For example, the metafile "test.ram" intended to play "test.ra" would contain:
    pnm://myserver/test.ra
  7. Configure your HTTP server to serve .ram metafiles as the content type "audio/x-pn-realaudio".
  8. Create an HTML page which links to the metafile. For example:
    <A HREF="test.ram">test RealAudio file</A>
  9. Ensure that your browser has the RealAudio player properly installed and try out the HTML page created in step 8.

The RealAudio Player has a Netscape Plug-in feature which is supported by Windows and Macintosh systems. If you use the Netscape Navigator as your browser, the Plug-in enables you to embed RealAudio files within your Intranet's HTML pages, and place the controls to the Player directly alongside the rest of your content. You can customize the interface by placing certain controls within specific parts of your pages.

With the Netscape Plug-in, a powerful multimedia presentation feature is possible. With the special events tool, you can create a control file that directs the Plug-in to guide the user's browser through a series of Web pages while RealAudio content is provided. For instance, a series of HTML pages could be leafed through while a narrator provides additional information.

RealAudio makes another type of presentation possible-live events. Users can connect to your Intranet and experience RealAudio content in real-time as it is being recorded. Individuals who arrive late join the presentation in progress. As data is captured from a source, such as a microphone, the RealAudio system passes it on to all connected clients, enabling you to set up Intranet-based events such as speeches and lectures.

The major drawback to implementing RealAudio on your Intranet is the cost for the Server. Special Intranet pricing is available, but you need to decide if the powerful Intranet applications possible with RealAudio are worth the price. As of this writing, a single Intranet server with support providing five simultaneous connections costs $790, while one providing unlimited access costs $5,990.

NOTE
Information regarding RealAudio products is available at URL: http://www.realaudio.com/products/

Video and Animation

Few visual cues grab your audience's attention better than motion. A casual surf through the Net demonstrates that this fact hasn't been overlooked by Internet Web developers. Scattered bits of flash may liven up a page, but Intranets demonstrate the real value of moving pictures, which convey information and communicate ideas.

Basic Animation Techniques

The simplest Web animations consist of a series of static image files, usually GIFs or JPEGs, which when displayed sequentially create the perception of motion. These are the most commonly seen techniques for animation, since the technology required for authoring and display is minimal. All of these techniques are adequate for simple moving pictures, but are inappropriate for complex multimedia data.

The easiest and most limiting technology is client-pull. This technique uses a special HTTP header, which can be mimicked by an HTML element, to tell a Web browser to load another page after a certain delay. Listing 19.1 shows the implementation of this technique by using the META tag as indicated.


Listing 19.1  A Client-Pull HTML Document
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="refresh" CONTENT="1; http://www.company.com/Âpage2.html">
<TITLE>Client Pull</TITLE>
</HEAD>
<BODY>
<H1>Client Pull</H1>
<P><IMG SRC="image1.gif" ALT="animation"></P>
</BODY>
</HTML>

Netscape defined this technique, and it is supported by their browser and Microsoft's Internet Explorer. This technique is easy to implement, since you only need to create a series of Web pages with embedded images that, when displayed in order, appear animated. Only HTML knowledge is required. Client-pull drawbacks stem from the fact that the browser must initiate a new TCP connection, with its associated overhead, for each frame. The delay caused can be quite noticeable, usually spoiling the illusion of animation.

A slightly more complex mechanism is server-push, where the Web server sends a multipart document that encapsulates a series of images. Again, this technique was defined by Netscape and is supported by both the Netscape Navigator and the Microsoft Internet Explorer.

Server-push allows the animation data to be much more focused than with client-pull. Only one connection is maintained, making this more efficient for the client and allowing for smoother animation of in-line images. Server-push, however, presents certain problems relating to long-term network connections and places a significant burden upon the Web server. Furthermore, most implementations require that a CGI application be written and supported on the server to maintain the server-push sequence. Finally, the delay between each frame is determined by download time, and leads to jerky animation at times.

By far, the most elegant implementation of simple animations is based on technology defined in 1987. The GIF87 specification enabled a GIF image file to contain a series of snapshots. The GIF89a specification enabled this feature to be extended through Application Extension Blocks (AEBs), allowing for application-specific information to be included in the file. Netscape has defined such an AEB, which allows for a specific delay time to be defined between the display of each snapshot, as well as looping capabilities throughout the series of images.

The latest versions of Netscape Navigator and Microsoft Internet Explorer support these images, and many advantages of this technique are readily apparent. The GIF89a animation file is transmitted as a single, compact unit, and requires no ongoing network connections that burden server, client, or network. These images can be displayed as easily as in-line images on HTML pages in an efficient manner. In fact, most popular Web sites on the Internet use GIF89a images exclusively, abandoning client-pull and server-push.

Most GIF file editing environments don't support these file formats, but many tools are quickly filling the void. On Windows systems, you can utilize the bookware Gif Construction Set; Macintosh computers have GifBuilder to use, while gifmerge is available for UNIX workstations. The editing environment is currently spartan with these tools, though you will witness quick results.

NOTE
The Gif Construction Set is available from URL: http://www.mindworkshop.com/alchemy/alchemy.html
GifBuilder is available from URL: http://iawww.epfl.ch/Staff/Yves.Piguet/clip2gif-home/GifBuilder-0.3.2.sit.hqx
gifmerge is available from URL: http://www.iis.ee.ethz.ch/~kiwi/gifmerge.html

Embedding and Linking Video Files

While the previously described techniques are suitable for cartoon-like animations, experiences which approach video-quality on an Intranet rely upon video file formats. Commonly used formats include: AVI, whose background is based on Microsoft Windows; QuickTime, developed on Apple Macintosh systems; and MPEG, a platform-independent solution from its inception.

Viewers are available across platforms to handle these and other video file formats. It makes sense to enable your Intranet audience to accept as many as possible. NET TOOB (see figure 19.2) is a shareware utility for Windows that supports AVI, QuickTime, and MPEG. Sparkle is freely available for Macintosh computers, supporting both QuickTime and MPEG files. XAnim for UNIX plays QuickTime, AVI, and MPEG files.

Figure 19.2 : NET TOOB allows you to play many video formats.

NOTE
NET TOOB is available from URL: http://www.duplexx.com/dl_nt.html
Sparkle is available from URL: http://hyperarchive.lcs.mit.edu/HyperArchive/Archive/gst/mov/sparkle-245.hqx
XAnim is available from URL: http://www.portal.com/~podlipec/home.html

It is probably best for an Intranet to standardize on one video file format, and MPEG is probably the best solution. It's cross-platform support is superior and it enables high-resolution, high-compression video and audio data.

MPEG's basic design is to predict motion from frame to frame, using three types of frames. Intra frames serve as reference points, coding an entire still image. Predicted frames are decoded from the most recently reconstructed intra or predicted frame. Finally, there are bidirectional frames, which are conceptually similar to intra frames, except that they are predicted from two frames, one in the past and one in the future.

Creating video scenes from scratch requires hardware to which many individuals don't have access, but entry-level technologies are inexpensive. Digital cameras enable you to capture live scenes, while video capture cards enable you to create digital video files from other sources like prerecorded video tapes and television transmissions. Simple digital cameras for Windows and Macintosh computers cost only one to two hundred dollars, while many SGI UNIX workstations arrive with a camera already attached.

Developing your own video data is no longer the realm of high-tech design studios and well-funded hobbyists. With a little work, Intranet applications can be greatly enhanced by capitalizing upon this technology.

Real-Time Video

Transmitting real time video data presents some very significant challenges, and most solutions available for Intranet uses are still somewhat immature. A few real time and broadcasting video systems are available, such as Xing StreamWorks and SGI's WebFORCE Media Server. The most widespread technology is Enhanced CU-SeeMe from White Pine.

Enhanced CU-SeeMe has multiplatform support and enables up to 8 individuals to interact with appropriate hardware. Of more usefulness to the Intranet is the Reflector, which can broadcast a single video stream to many clients on the network. White Pine currently makes available demo versions of all server and client software, so that you can determine if these applications meet your Intranet needs.

The real-time video market will mature rapidly, and more Intranet solutions will soon be tenable. Any attempt to incorporate video into an Intranet should be carefully thought out: Video can be slow to transmit, uses a significant portion of available bandwidth, and places considerable demands on workstations.

NOTE
Information regarding StreamWorks products is available at URL: http://www.xingtech.com/streams/index.html
Information regarding the WebFORCE MediaServer is available at URL: http://www-europe.sgi.com/Products/cosmo/media_base/index.html
Information regarding CU-SeeMe products is available at URL: http://goliath.wpine.com/cu-seeme.html

Other Moving Picture Techniques

A few other technologies, which may make sense depending on your Intranet development resources, present themselves today. Java applets are commonly used to create simple animations. These applets require a significantly greater overhead than GIF89a animation's, but enable users to interact and control the animation's progression.

Other third party animation formats are being released for use with Intranets. One premier technology is Macromedia Director, a professional quality animation studio system. The Shockwave for Director Plug-in, supported by the Netscape Navigator, enables Director files to be embedded directly into Web pages. As other vendors capitalize on the potential of the Intranet, additional quality solutions will become available.

TIP
"Shockwave" is a general term Macromedia uses for all of its plug-ins which support a variety of their products. For example, Shockwave for Director allows you to view Director animation files embedded within Web pages, while Shockwave for Authorware allows you to utilize files from that multimedia authoring system.

NOTE
Information regarding Java is available at URL: http://java.sun.com/allabout.html
Information regarding Director and Shockwave for Director is available at URL: http://www.macromedia.com/Tools/Studios/DMS/index.html

Creating 3-D Worlds with VRML

Virtual Reality Modeling Language (VRML) is a language that enables developers to create three-dimensional (3-D) worlds. The original goal of VRML was to change the Web from a text-based interface to a 3-D-based interface. For instance, instead of reading pages and clicking on links to get information, users walk down corridors and grab books off a shelf. While current browsers and authoring software aren't up to the task of creating such experiences, VRML provides many capabilities for an Intranet.

Perhaps the most exciting use of VRML for an Intranet is to model objects that cannot be adequately described with just text and 2-D graphics. VRML empowers you to create a model that can be viewed from any perspective in the three dimensional virtual space. Your users can zoom in, rotate, and move through your objects. Generating a complex model may take a great deal of effort, but even simple models can illustrate concepts in a powerful manner.

Language Overview

VRML's basic design defines objects in virtual 3D-space. The basic set of objects are nodes, which create or transform items in the virtual world. Nodes form the basis for all VRML worlds, and the 36 instances fall into seven groups:

  1. Nodes that define geometric shapes (e.g. spheres, rectangular solids, arbitrary shapes)
  2. Nodes that define the properties and appearance of shapes
  3. Nodes that transform the virtual working space
  4. Nodes that define the user's perspective on the world
  5. Nodes that define the lighting in the world
  6. Nodes that group other nodes for certain purposes
  7. Nodes that import other objects from the network

Listing 19.2 shows a simple VRML scene which defines a light source, creates a blue sphere at the origin, and then creates a red cube centered two meters from the origin. If you save this file with a ".wrl" extension and load it into one of the VRML viewers described on the following page, you will be able to view and move about this simple model.


Listing 19.2  Simple VRML Scene
#VRML V1.0 ascii
Separator {
  DirectionalLight {
   direction 0 0 -1    # Light from observer into scene
  }
  Separator {        # Create an example blue sphere
   Material {
     diffuseColor 0 0 1  # Use blue color
   }
   Sphere {}        # Draw spehere of default radius
  }
  Separator {        # Create an example of a red cube
   Material {
     diffuseColor 1 0 0  # Red color
   }
   Transform {
     translation 0 2 0  # Move it up 2 meters (y-axis) from origin
   }
   Cube {}         # Draw cube of default dimensions
  }
}

Limitations and Future of VRML

Before delving into VRML, it is useful to understand its limitations. The current VRML 1.0 specification defines three-dimentional shapes, lighting effects, surface properties, and hypertext links to other resources on the network. It doesn't provide audio capabilities, animation, or complex interactions between the user and the virtual scene.

There is a proposal for VRML 2.0 known as Moving Worlds, created by SGI in collaboration with Sony and Mitra. Moving Worlds has been chosen by the VRML Architecture Group as the basis for the creation of a final VRML 2.0 draft. Moving Worlds not only extends VRML's static modeling features, but adds animation, user interactions, scripting, and prototyping so that objects can be reused. VRML 2.0 will make truly encompassing virtual experiences possible.

VRML Viewers

Many VRML viewers are available for various platforms, and the ability of these products to render virtual worlds in an efficient manner is steadily increasing. The Netscape Navigator on Windows platforms supports Netscape's Live3D Plug-in, so that VRML scenes can be viewed directly within the browser. For the Internet Explorer, Microsoft has created the Microsoft VRML Add-in, extending VRML support to Windows 95 systems.

Helper applications are available for UNIX and Macintosh systems. For UNIX workstations, VRWeb is a good utility that is freely available and can be compiled on many platforms. VRML Equinox provides Macintosh PowerPC computers with VRML capabilities. These helper applications should be configured to be launched by a browser for files of the "x-world/x-vrml" MIME type, the content type all Web servers should use to transmit VRML files.

VRML Authoring Applications

Listing 19.2 illustrates the simple design of VRML, but creating complex worlds by hand is tedious and time consuming. Fortunately, many 3-D authoring tools, which support the VRML specification, are available. If you are just setting out to create virtual worlds, the freely available ClayWorks can provide great assistance in developing your Intranet's 3-D models. ClayWorks is a DOS application, but runs without problems on Windows NT.

If you need professional quality 3-D design systems for your Intranet applications, two good systems are Lightwave 3-D Modeler and WebSpace Author. (See figure 19.3.) Lightwave runs on Windows NT, SGI, and Amiga, while WebSpace Author runs on SGI platforms only.

Figure 19.3 : ClayWorks provides a convenient interface for creating 3-D objects.

NOTE
Live3-D is available from URL: http://home.netscape.com/comprod/products/navigator/live3d/index.html
The Microsoft VRML Add-in is available from URL: http://www.microsoft.com/ie/addons/vrml.htm
VRWeb is available from URL: http://hyperg.iicm.tu-graz.ac.at/vrweb
VRML Equinox is available from URL: http://www.northplains.com/EquiInfo.html#EquiDownload
ClayWorks is available from URL: http://cent1.lancs.ac.uk/tim/clay.html
Information regarding Lightwave 3-D Modeler is available at URL: http://www.newtek.com/medium/lw-info.html
Information regarding WebSpace Author is available at URL: http://webspace.sgi.com/WebSpaceAuthor/index.html

Other Multimedia Experiences

As the Web matures, new technologies are used as vehicles for multimedia systems, while established technologies are adapted to the new Web paradigm. Intranets will become the proving ground for these new multimedia applications and systems.

Java Multimedia Applets

Java's true multimedia potential is a great deal more than custom-coded image-flipping applets. Furthermore, an emphasis on Java application development may be misplaced with Intranet implementations. Most Intranet developers do not have the resources to create and support complex Java programs.

The Java market is progressing at an extremely aggressive pace, and soon third-party applets will support video, sound, and other forms of multimedia. Java will enable your audience to interact with these multimedia experiences. Importantly, these solutions will not demand programming resources for your Intranet implementation, but merely the ability to install and support a Java applet.

These applets will leverage off of Java's strengths. They will be distributed on-demand from your Intranet to your audience's Web browsers, requiring no end-user interaction. Multimedia Java applications will execute on all Java-capable browsers, which are available for UNIX, Macintosh, and 32-bit Windows systems. Windows 3.1 Java implementations will be arriving in the near future. Perhaps most importantly, Java's design places heavy emphasis on security, allowing for an increasingly convenient method of transparent network distribution to be safe in your business environment.

CADIS KrakatoA is one Java product that is already available. KrakatoA allows you to set up a powerful search engine for your Intranet, and includes a user-friendly Java interface for browsers. The Java interface is convenient, presenting information more understandably than an HTML-based search interface. However, for clients which cannot run Java, the KrakatoA product includes a pure HTML front-end.

NOTE
For other examples of Java applets and applications to use within your Intranet, visit the Gamelan directory, available at URL: http://www.gamelan.com/

ActiveX Technology

The Microsoft Internet Explorer introduces the ActiveX technology to the Web. With ActiveX controls, formerly known as OLE controls or OCX, dynamic content and application linkages can be developed. For instance, ActiveX controls with Internet Explorer can provide an in-line animation or allow an Excel spreadsheet to be embedded within a Web page.

In many ways, Java applets and ActiveX controls provide similar capabilities to the Web. Java provides an innovative, secure architecture, while ActiveX draws strength from Microsoft's market control and enables companies to build off of their existing OLE development investments. Time will tell which provides a more lasting solution.

Professional Multimedia Systems

Companies developing multimedia authoring systems have not missed the tremendous potential of the Web. Two major players in this market have recently released Plug-ins for the Netscape Navigator that can bring advanced capabilities to your Intranet. Multimedia authoring systems have been firmly established in the desktop market for years, but only now are making a transition to Web-based information schemes. These authoring systems have traditionally been targeted toward computer-based training, on-line documentation, simulations, electronic publications, and kiosks, all of which dove-tail nicely with Intranet goals.

Macromedia Authorware, available for Macintosh and Windows systems, is a professional tool for developing interactive multimedia systems. It supports many external media types, styles, and navigation techniques. Authorware content can be loaded onto an Intranet, and your audience can use the freely available Macromedia Shockwave for Authorware to utilize your information.

Another major player in this market is AimTech IconAuthor. IconAuthor has a good editing environment and powerful data handling. A Netscape Plug-in for IconAuthor is available, allowing this system to be smoothly integrated with your Intranet.

NOTE
Information regarding Authorware and Shockwave for Authorware is available at URL: http://www.macromedia.com/Tools/Studios/AIS/index.html
Information regarding IconAuthor is available at URL: http://www.aimtech.com/Iia.htm

Concerns About Delivering Multimedia Content

Integration of multimedia content into your Intranet creates a number of challenges. Recognizing the issues you will face, and developing a plan for dealing with them, minimizes the time you spend troubleshooting problems and developing work-arounds.

Configuring Desktop Machines

Your Intranet physically resides on one, or a relatively small set of machines, so you can develop a fine degree of control of the machine's configuration. Loading multimedia content that you develop onto your Intranet won't present too many obstacles. However, unlike standard Web technologies, such as HTML, in-line images, and hypertext links, browsers don't come automatically configured to handle multimedia content.

For each new multimedia technology, identify the hardware and software requirements for all desktop machines you support. Things to consider include:

Once you fully understand all of these issues, develop a plan for rolling out new multimedia content to your audience. Depending on the level of sophistication of your users, you may need to provide documentation that can be located on the Intranet itself, create installation scripts, or even allocate resources to load software for each user.

Problems with Network Restrictions

Most Web communications occur through well-defined protocols that have been in place for many years. One of the goals of most secure network environments is to ensure that only those known protocols are allowed and no more. Unknown protocols could potentially provide an access hole from the Internet into your internal environment. Firewalls are a way of addressing these concerns.

If your internal network is spread throughout several physical locations, firewalls may be in place to establish the security of the intervening links. Furthermore, many areas of your internal network may need to follow different security policies, and thus firewalls may be placed between departments in an internal network. Thus, even in a seemingly homogenous internal environment, network access throughout that environment can be closely controlled.

One of the problems that multimedia presents to these types of environments is that some technologies define their own application protocols and standards. For instance, RealAudio relies upon the server's ability to send UDP datagrams to the client machine. Until a standard firewall is reconfigured, RealAudio content is unavailable to a user, if the server lies beyond the firewall.

Unless you already know what you might be dealing with, troubleshooting these problems can be extremely frustrating. Table 19.2 shows some mult-imedia applications and what modifications must be made to firewall configurations. Enabling these protocols can compromise your site's security stance, so careful, well-informed decisions must be made before acting.

Table 19.2  Multimedia Applications that Affect Firewalls
ApplicationNetwork Protocols to Enable
RealAudio7070/TCP (outgoing), 6970/UDP through 7170/UDP
CU-SeeMe7648/UDP, 7649/UDP
StreamWorks1558/UDP
WebFORCE Media Serverunknown at this time

Limitations of Network Bandwidth

One of the most pressing concerns about delivering multimedia content is in the area of network bandwidth. Networks are designed to handle a certain threshold of traffic and as usage approaches that limit, response times degrade, connections are refused, transmissions are cut off, and, in the case of streaming protocols like RealAudio, the content's resolution is degraded. In other words, the quality of your Intranet suffers as the pipeline becomes congested.

Multimedia applications are particularly susceptible to these problems, since most of them require a great deal of digital information in order to encode their data. As you integrate more and more multimedia technologies, your network usage will rapidly increase. Before your Intranet's success becomes its own downfall, it's a good idea to consider ways of dealing with congestion.

The simplest mechanism for reducing network load is to ensure that your audience is using a sufficiently large disk cache. Disk caches allow browsers to retrieve and store data from the Intranet once, only retransmitting the data when the file has been modified from the reference source. While large caches limit a user's remaining disk space, small caches mean that stored data is quickly overwritten and the benefit of the cache disappears.

There are steps that the Intranet content provider can take, such as limiting the resolution and amount of multimedia data. For audio data, reduced granularity means lower sampling rates, fewer bits per sample, and less sampling channels (e.g. mono versus stereo sound). For graphical information, techniques such as reduced pixel dimensions and fewer colors may reduce the file sizes. Limiting the number of multimedia files that are downloaded by your users at once will improve the situation. Consider a single page with four large GIF89a animations, that cause four simultaneous downloads per browser. Using multimedia with a prudent and deft hand prevents congestion problems before they start.

Another mechanism to consider is compression. Many multimedia solutions define complex compression schemes that greatly reduce the number of bits sent over your network; MPEG and RealAudio are two good examples. However, other applications could benefit from additional compression techniques.

For instance, large VRML files can be compressed with the GNU Zip scheme. Most Web servers support the "Content-Encoding" HTTP header; this allows for nearly seamless transfers of compressed data between server and browser. The VRML file is identified by the server as GNU Zip encoded, but the media content type is still shown as the usual "x-world/x-vrml". The Web browser, when receiving such a file, decompresses the file and smoothly passes it on to the normal VRML viewer. One concern is that appropriate decompression software may need to be loaded on some Web browsers. Furthermore, while this technique alleviates some burden from the network, it places a greater burden on the desktop machine, which must use its processing power to decompress data.

The most complicated, but ultimately most scaleable solution is proper network design. Development of an organization's infrastructure is a critical issue to its continuing to perform the necessary function. Whenever the topic is visited, it is crucial to consider how your Intranet will affect the internal network and vice-versa. The three primary ways of avoiding network congestion with an Intranet application are faster networks, intelligent network design, and distributing network load.

A faster network infrastructure is the easiest solution to arrive at when congestion becomes a problem. While it requires a significant product investment, more bandwidth to work with is not going to exacerbate the current situation. Congested subnets that are using old technologies can be upgraded, relieving the strain in critical areas. Unfortunately, throwing hardware at the problem isn't the only solution.

Your Intranet should be placed onto a network segment that is readily visible to the key members of your audience. If possible, it should be isolated from busy services that compete for network resources. Your company's data center, if it has one, probably would provide the best environment, but that fact should not be taken for granted.

If an Intranet solution continues to deplete network resources, you may need to consider distributing the network load. A series of caching proxy servers placed at strategic locations in the infrastructure will greatly improve the situation. Caching proxies obtain Web data for clients, storing the static content for future requests. Thus, a large image would be transmitted from the Intranet to the proxy only once, though many Web browsers may receive the same data through the proxy.

Another load distribution technique is mirroring the Intranet servers throughout the network. Instead of having one Intranet server that serves the entire company, separate servers with identical content can be placed at key locations. Smoothly redirecting users to the most appropriate mirror is a problem, but soon intelligent DNS-based systems, like Cisco's Distributed Director may be most successful. Mirroring software itself still needs development, but for large companies that place a great demand on their Intranets, this may be a necessary tactic.

NOTE
Information regarding Distributed Director is available at URL: http://cio.cisco.com/warp/public/751/advtg/swww_wp.htm

Applying Multimedia to Your Intranet

The usefulness of multimedia has been stressed throughout this chapter, but any Intranet implementation of these technologies should be done with prudence. Many examples on Internet Web sites are simply inappropriate on an Intranet. Internet sites use glitter to attract individuals from a passive audience.

On an Intranet, availability and usefulness of information are key. Multi-media should only be used when it is essential to communicate certain concepts, not as window-dressing for other information. Following are few examples.

First Example-VRML Object Modeling

When describing a physical object, few techniques are more powerful than allowing your audience to directly examine its shape and structure. With VRML, representations of complex objects can be created and placed on the Intranet. Your audience can then view the object from various angles and distances, and rotate the object to see how all of the pieces fit together. They can even travel into the object, viewing any internal structure you decide to include.

Second Example-RealAudio Presentations

If your company is typical of many others, high-profile presentations by corporate executives are a regular occurrence. A company's visionaries need a means of communicating that vision and sharing their enthusiasm. Unfortunately, workers can't always be physically present.

RealAudio allows for real-time playback for anyone who has access to the Intranet during such presentations. Such data could be stored, so that other workers could listen to the data at a later time. If Web versions of any slides are available, the RealAudio system can use its synchronized multimedia capabilities to playback the slides in time to the audio.

Third Example-Multimedia Training Courses

Every company must develop a means of training its workforce. Hands-on training and lectures are very effective, but have a great deal of ongoing overhead to maintain. Unfortunately, even well written documentation usually falls short of meeting all of the necessary training goals.

Multimedia can make up for this deficiency. Interactive multimedia enables users to exert control over the flow and presentation of the learning experience. A fusion of different media, tailored to specific tasks, can teach ideas that prose could never accomplish. Finally, as part of the Intranet, these materials will have high-visibility and ready access.