Section1.3World Wide Web13The W3C established a Working Group in 1997 to come up with specifications for amultimedia synchronization language.That group produced specifications for SMIL1.0that became a Recommendation in June 1998.As HTMLwas being redefined inXML(XHTML specifications), sotoodid SMIL1.0,with someenhancements.SMIL2.0,whichalso provides integration with HTML, was accepted as a Recommendation in August 2001.SMIL2.0 is specified in XMLusing amodularization approach similar to the one usedinXHTML.All SMILelements are divided into modules-- sets of XMLelements, attributes,and values that define one conceptual functionality.In theinterest ofmodularization,not allavailable modulesmust be includedfor all applications.Forthatreason,LanguageProfilesare defined, specifying a particular grouping of modules. Particular modules may haveintegrationrequirements a profilemustfollow.SMIL2.0has a main language profile thatincludes almost all SMlL modules, a Basic profile that includes only modules necessaryto supportbasic functionality,and anXHTML+SMILprofiledesigned to integrateHTMLand SMIL.The latter includes most of the XHTMLmodules, with only the SMIL timingmodules (but not structure modules -XHTML has its own structure modules) added.The SMIL language structure is similar to XHTML. The root element is srnil, whichcontains the two elements head and body. head contains information not used forsynchronization-metainformation,layout information,andcontentcontrol,suchasmediabitrate.body contains all the information relating to which resources to present, and when.Three types of resource synchronization (grouping)are available: seq, par, and excl.seq specifies that the elements grouped are to be presented in the specified order (sequen-tially).Aiternatively, par specifies that all the elements grouped are to be presented atthe same time (in parallel).excl specifies that only one of the grouped elements can bepresented at a time (exclusively); order does not matter.Let's look at an example of SMIL code:<!DOCTYPESmi1PUBLIC"-//W3C//DTDSMIL2.0""http://www.w3.0rg/2001/SMIL20/SMIL20.dtd"><smilxmlns="http://www.w3.org/2001/sMIL20/Language"><head><meta name="Author"content="Some Professor"/></head><body><par id="MakingofABook"><seq><video src="authorview.mpg"/><img src="onagoodday.jpg"/></seq><audio src-"authorview.wav"/><textsrc="http://www.cs.sfu.ca/mmbook/"/></par></body></smi1>
14Chapter1Introduction to MultimediaA SMIL document can optionally use the<!DOcTYPE...> directive to import theSMILDTD,which willforce theinterpretertoverifythedocument against the DTD.ASMIL document starts with<smil> and specifies the default namespace,using thexmlnsattribute.The<head>section specifies the author of the document.Thebody elementcontains the synchronization information and resources we wish to present.In the example given, a video source called "authorview.mpg", an audio source,"authorview.wav",and an HTMLdocument at "http://booksite.htmlare presented simultaneously at the beginning.When the video ends,the image"onagoodday.jpg"is shown, while the audio and the HTML document are still pre-sented. At this point, the audio will thank the listeners and conclude the interview.Additional information on SMIL specifications and available modules is available on theW3Cwebsite.1.4OVERVIEWOFMULTIMEDIASOFTWARETOOLSIn this subsection, we look briefly at some of the software tools available for carryingout tasks in multimedia. These tools are really only the beginning - a fully functionalmultimedia project can also call for stand-alone programming as well as just the use ofpredefined tools to fully exercise the capabilities of machines and the Net.!The categories of software tools we examinehere areMusic sequencing and notation.Digital audioGraphics and imageediting.Video editing。Animation。Multimedia authoring1.4.1MusicSequencingandNotationCakewalkCakewalk isa well known oldernameforwhatis now called Pro Audio.Thefirmproducingthisseauencingandeditingsoftware,TwelveToneSystems,alsosellsanintroductoryversionoftheirsoftware,"Cakewalk Express",overthe Internetfora lowprice.Thetermsequencer comesfrom older devices that stored sequences of notes in the MiDImusic language (events,in MIDI; see Section 6.2). It is also possible to insert WAV files andWindowsMCIconmands (foranimationandvideo)intomusictracks,(MCIisaubiquitouscomponent of the Windows API.)Cubase Cubase is another sequencing/editing program, with capabilities similar tothose of Cakewalk..It includes some digital audio editing tools (see below).ISee the accompanying web site for several interesting uses of software tools, In a typical computer sciencecourse in multimedia, the tools described here might be used to create a small multimedia production as a firstassignment. Some ofthe tools are powertul enough that they might alsoform part ofa course project
Section 1.4Overviewof MultimediaSoftwareTools15Macromedia SoundeditSoundedit is a matureprogram forcreating audio formulti-media projects and the web that integrates well with other Macromedia products such asFlash and Director.1.4.2 Digital AudioDigital Audio tools deal with accessing and editing the actual sampled sounds that make upaudio.CoolEditCoolEdit is a powerful,populardigital audiotoolkitwith capabilities (forPCusers,atleast)thatemulateaprofessionalaudiostudio,including multitrackproductionsand soundfile editing, along with digital signal processing effectsSound ForgeSound Forge is a sophisticated PC-based program for editing WAV filesSoundcanbecapturedfromaCD-ROMdriveorfromtapeormicrophonethroughthe soundcard, then mixed and edited. It also permits adding complex special effects.Pro ToolsPro Tools is a high-end integrated audio production andediting environmentthat runs on Macintosh computers as wellas Windows.Pro Tools offers easy MIDI creationand manipulation as well as powerful audiomixing,recording,and editing software1.4.3Graphics and ImageEditingAdobe Illustrator Ilustrator is a powerful publishing tool for creating and editingvector graphics, which can easily be exported to use on the web.Adobe PhotoshopPhotoshop is the standard in a tool forgraphics, image processing,and imagemanipulation.Layersofimagesgraphics,andtextcanbeseparatelymanipulatedfor maximum flexibility,and its“"filterfactory"permits creation of sophisticated lightingeffects.Macromedia FireworksFireworks is software for making graphics specifically fothe web.It includes a bitmap editor, a vector graphics editor, and a JavaScriptgeneratorforbuttons and rollovers.Macromedia FreehandFreehand is a text and web graphics editing tool that supportsmanybitmap formats, such as GIF,PNG,andJPEG.These are pixel-basedformats, in thateach pixel is specified,It also supports vector-based formats, in which endpoints of linesare specified instead of the pixels themselves, such as SWF (Macromedia Flash) and FHC(Shockwave Freehand).It can also read Photoshop format.1.4.4VideoEditingAdobe PremierePremiereisasimple,intuitivevideoeditingtoolfor nonlineareditingputting video clips into anyorder,Video and audioarearranged in tracks,likeamusical-
16Chapter1IntroductiontoMultimediascore.It provides alarge numberofvideo andaudio tracks,superimpositions,and virtualclips.Alarge libraryofbuilt-in transitions,filters,and motionsforclips allows easy creationofffectivemultimediaproductions.Adobe After EffectsAfter Effects is a powerful video editing tool that enables users toadd and changeexisting movies with effects such as lighting,shadows,and motion blurring.It also allows layers, as in Photoshop, to permit manipulating objects independently.Final Cut ProFinal Cut Pro is a video editing tool offered by Apple for the Macintoshplatform.It allows the capture ofvideo and audiofrom numerous sources, such as filmand DV.It provides a complete environment, from capturing the video to editing and colorcorrection and finally output to a video file orbroadcast from the computer.1.4.5AnimationMultimedia APIsJava3Dis anAPI used by Java to construct and render3Dgraphics,similar to the wayJava Media Frameworkhandlesmediafiles.Itprovides abasic setofobjectprimitives (cube,splines,etc.)upon which thedeveloper canbuild scenes.It is an abstraction layer built ontop of OpenGL or DirectX (the user can select which), so the graphics are accelerated.DirectX, a Windows API that supports video, images, audio, and 3D animation, is themost commonAPIused todevelop modern multimedia Windowsapplications,suchascomputergames.OpenGL was created in 1992 and has become the most popular 3D API in use today.OpenGLishighlyportableandwill runonall popularmodernoperating systems,suchasUNIX,Linux, Windows,and Macintosh.Rendering Tools3D Studio Maxincludes a numberofhigh-end professional toolsforcharacter animationgame development, and visual effects production. Models produced using this tool can beseen in several consumer games, such as for the Sony Playstation.Softimage XSI (previously called Softimage 3D)is a powerful modeling,animation,and rendering package for animation and special effects in films and games.Maya,acompetingproduct to Softimage,is a complete modeling package.Itfeatures awide variety of modeling and animation tools, such as to create realistic clothes and fur.RenderMan is a rendering package created by Pixar.It excels in creating complexsurfaceappearancesandimagesandhasbeenusedinnumerousmovies,suchasMonstersInc.andFinalFanfasy:TheSpirits Within.Itis alsocapableofimportingmodelsfromMaya.GIF Animation PackagesFor a simpler approach to animation that also allows quickdevelopmentofeffectivesmallanimationsfortheweb,manysharewareandotherprogramspermitcreating animated GIFimages.GIFs cancontain several images,and looping throughthem creates a simple animation. Gifcon and GifBuilder are two of these.Linux alsoprovides some simple animation tools, such as animate
Section1.5FurtherExploration171.4.6MultimediaAuthoringTools that provide the capabilityforcreating a complete multimediapresentation, includinginteractive usercontrol,are called authoringprogramsMacromedia FlashFlash allows users to create interactive movies by using the scoremetaphor --a timeline arranged in parallel event sequences, much like a musical scoreconsistingofmusicalnotes.Elements inthemovie arecalledsymbols inFlash.Symbols areadded to a centralrepository,calleda library,and can beaddedto themovie'stimeline.Oncethe symbols are present at a specific time,they appear on the Stage, which represents whatthe movie looks like at a certain time, and can be manipulated and moved by the tools builtinto Flash.Finished Flash movies are commonly used to show movies or games on the web.Macromedia DirectorDirectoruses a movic metaphor to create interactive presen-tations.This powerful program includes a built-in scripting language,Lingo, that allowscreation of complex interactive movies.2 The "cast" of characters in Director includesbitmapped sprites, scripts,music, sounds,and palettes.Directorcan read many bitmappedfileformats.Theprogramitselfallows agooddealofinteractivity,and Lingo,withitsowndebugger, allowsmorecontrol, including control over extemal devices, such as VCRs andvideodisc players.Director also has web authoring features available, for creation of fullyinteractive Shockwavemoviesplayableovertheweb.AuthorwareAuthorware is amature,well-supported authoring product that has aneasylearningcurveforconputersciencestudentsbecauseitisbased on theideaofflowcharts (theso-called iconic/fow-control metaphor).It allows hyperlinks to link text, digital movies,graphics, and sound. It also provides compatibility between files produced in PC and Macversions. Shockwave Authorware applications can incorporate Shockwave files, includingDirectormovies,Flash animations, and audio.QuestQuest, which usesatype offlowcharting metaphor,is similarto Authorwareinmany ways.However, the fiowchart nodes can encapsnlate information in a more abstractway (called"frames")than simply subroutine levels.As aresult,connections between iconsaremore conceptual anddonotalways representflowof control in theprogram.1.5FURTHEREXPLORATIONChapters 1 and 2 of Steinmetz and Nahrstedt [5] provide a good overview of multimediaconcepts.The web site for this text is kept current on new developments. Chapter 1 of the FurtherExplorationdirectoryon the websiteprovides linkstomuchof the historyofmultimedia.Asa start,the completeVannevarBush articleon the Memex systemconception is online.Thisarticle was and still is considered seminal.Althoughwrittenover50years ago,itadumbratesmany current developments,includingfax machines and the associativememory model thatunderlies the development of the web. Nielsen's book [6] is a good overview of hypertextThereforeDrectorisofenpopularchoicewithstudentsforcreatinginalprojetinmuimediacoursesit provides the desired power without the inevitable pain of using a full-blown C++ program