Developing Multimedia Content with SMILby: Jay Gitomer Docid: 000????Publication Date: 01??Publication Type: IMPLEMENTATIONPreviewSMIL (Synchronized Multimedia Integration Language) is a markup language developed specifically to deliver interactive presentations over the Web. Presentations created in SMIL call content from the Web to the browser as needed, instead of downloading a large file containing all components before running. This allows SMIL files to be very small, which benefits the network. By caching content strategically, network benefits can be increased further. Because content in a SMIL presentation is maintained in discrete files, updating individual components doesn't require any changes to the SMIL script itself. This model also enables a single content item to be used in innumerable presentations. In addition to being easy to maintain and flexible, SMIL is easy to learn and inexpensive to implement. This report describes SMIL environment, modules, and objects and functions.
Report Contents:
Executive Summary[return to top of this report]SMIL (Synchronized Multimedia Integration Language) is a markup language that was developed specifically to deliver multimedia over the Web. SMIL It offers a versatile and powerful way to deliver interoperability, device choice and searchability to end users. Though powerful, SMIL is also network-friendly. The objects called by SMIL files can be archived, re-used, cached, and used in combination with each other, enabling better management of creative assets.
SMIL 2.0 offers some strong advantages over its competitors, including a faster learning curve. Used in conjunction with a database, SMIL can be used to build personalized, dynamic sites that are accessible to users on a variety of platforms, while meeting specialized needs such as alternate languages and accessibility needs.
Description[return to top
of this report] SMIL differs from the established multimedia technologies, such as DHTML, Flash or Generator, in several key areas. For developers or designers who have an understanding of HTML, SMIL is easy to learn, far more so than its competitors. In terms of development time, multimedia objects that comprise a SMIL file can be edited more easily than is possible in any competing technology. Objects, which are audio, video, graphic or text files, are summoned by a SMIL file in the same way that an HTML file calls other pages by using hyperlinks. Therefore, SMIL presentations can employ independent resources, such as banner ads, which can be updated without any changes being made in the SMIL file itself. SMIL offers a great deal of versatility in its handling of objects. Objects can overlap, fade into one another, be combined with streaming or archived material, and be selected by the end user to create a customized presentation on the fly. SMIL offers versatility in other ways as well. It supports multiple languages and bit rates through the use of 'profiling'. Profiling detects an end user's computer settings and responds; a corporate user on a T1 in the United States will automatically be sent a high-bandwidth version of a presentation in English, while an end user logging in from a residence in Paris can get a lower-bandwidth version in French. SMIL presentations can meet accessibilty requirements by detecting and responding to screen versions and including captions for the blind or other enhancements. Rather than downloading as a single multimedia file, SMIL downloads objects from anywhere on the Web in the sequence that they appear in the presentation. This incremental manner of downloading is more network-friendly than the downloading of a single large file. As each object is summoned, the SMIL file moves the timeline forward or backward to maintain synchronization. Additionally, the content in SMIL presentations can be made available to search engines, increasing the exposure each file receives and providing a valuable archiving functionality to corporate users in particular. Presentations can easily be archived and retrieved, surmounting the common problem of locating presentations that are stored on someone else's workstation. After a rocky start, SMIL has received widespread industry support. Microsoft and Macromedia were initially supporting the project, and then withdrew. With the advent of SMIL 2.0, however, both companies reconsidered their positions and once again lent support to SMIL. SMIL is now one of the main standards for delivering multimedia on the Web, and is incorporated into RealPlayer, Internet Explorer, Windows Media Player, Quicktime 4.1, Adobe's SVG plug-in, and the authoring environment GRINS. The business benefits SMIL provides are as follows:
From a technical point of view, SMIL is faster and easier to use than Javascript or DHTML, and will run even if users have Javascript turned off in their browsers. It is capable of more complex actions than is Javascript or DHTML. Whether SMIL becomes widely adopted depends on several factors. It is slightly late to a market that is currently dominated by Macromedia Flash, and there exists no sophisticated graphical-editing software to make it simple for non-technical designers to use. Organizations that can benefit from SMIL include those that need to maintain dynamic pages, manage syndicated content, deliver intensive multimedia files, meet the needs of many disparate types of users, and make multimedia searchable online. This describes news organizations, entertainment vendors, some consumer-focused sites, and a few corporate sites. Alternatives[return to top
of this report] DHTMLSMIL is similar
to DHTML, or 'dynamic hypertext markup language'. DHTML is harder
to learn then SMIL, and harder to use. To make an audio track play
when a slideshow loads, the DHTML developer must know DHTML, CSS and
DOM (document object model). He must build a document division element
for the image area of the screen with the positioning attributes,
write a timer script, write a switch statement that listens to the
timer variable, place the source attribute of the image element in
the document division at specific switch inflection points, and then
he must test the results in various client environments to be sure
it works. To perform the same task in SMIL, the developer merely has
to know SMIL and insert a few lines of simple code. DHTML has numerous
features that perform only in Internet Explorer, which ignores users
of Netscape and other browsers. This is of particular concern to Web
developers on consumer sites that are geared for the mass market. FlashFlash has several shortcomings when compared to SMIL, but it is predominant in the market and is likely to retain that position for the next few years. Flash files consist of one large file, as compared to SMIL's calling of objects as needed. A single large file seems to download more slowly than a SMIL presentation . As well as seeming to download more slowly, Flash files are more intensive to edit than SMIL files since many discrete tasks must be performed to make updates. In SMIL, the obsolete object is overwritten by the new version and all presentations that refer to it are virtually updated. Flash does not have language or accessibility targeting. Flash is an affordable multimedia application that lets non-technical designers create general animated files without having to learn to program. To perform more complex actions in Flash, however, Actionscript must be learned. Actionscript is a proprietary language similar to Javascript. While this presents no problem to many Web developers, it does preclude most Web designers from using the product to its full potential. Its primary advantage over SMIL is that it is widely accepted by Web developers across all industries. Although not a simple program, Flash novices will find it well documented both by Macromedia and by third-party writers, and possessed of active user groups able to help with problems. HTML+TIME
Microsoft, Macromedia, and Compaq worked together on the development of the Timed Interactive Multimedia Extensions for HTML (HTML+TIME) specification, which is very similar to SMIL and re-uses SMIL elements and attributes as much as possible. It is based on the idea of extending SMIL concepts into the browser. This means that timelines can be applied to previously static content, such as text. HTML+TIME originally was created to compensate for shortcomings found in SMIL 1.0, but with the release of SMIL 2.0, HTML+TIME is less relevant. Microsoft now positions SMIL as a predecessor to HTML+TIME, which it intends to develop beyond the capabilities of SMIL in the future. HTML+TIME has not been widely accepted. Microsoft released a graphical editor for the product, but only kept it on the market for about a year before withdrawing it. However, Microsoft continues to support the product and it is not unlikely that HTML+TIME will be the multimedia leader among Web developers working in corporate environments within the next few years, assuming the company maintains its product strategy that long. Possible Pitfalls[return to top
of this report] Some major industry players, including Microsoft and Macromedia, were initially resistant to SMIL because it overlapped with several other W3C standards. However, the developers of SMIL stated that the overlap was intentional, in order to provide as neutral an environment as possible for developers. Currently, SMIL is supported by several vendors, including RealNetworks, Oratrix, and Macromedia. Graphical editors are offered by Oratrix Development, which makes the GRiNS Player for SMIL 2.0, Confluent Technologies, which offers a software tool called Fluition for designing the layout and sequence of streaming audio and video presentations, and several other companies. None of these interfaces are as polished or powerful as they will need to be if SMIL is to achieve a high level of acceptance. While some important SMIL implementations exist, it is not widely adopted in corporate Web departments. This is probably due to the fact that while SMIL 1.0 was receving mixed reviews due to some important shortcomings, Web designers were turning to Macromedia Flash. Having spent time learning the user interface for that product, designers are unlikely, in general, to learn a new tool that doesn't show a clear advantage over a product in which they've invested their time. While SMIL does offer advantages over Flash, they are more likely to be apparent to the corporate individual who is responsible for site strategy, and who is concerned with issues such as accessibility, globalization, caching and bandwidth utilization. Step-by-Step Implementation[return to top of this report] The SMIL EnvironmentThe SMIL environment consists of the following aspects:
SMIL is not intended to replace any of the multimedia formats in use today. It is instead a glue that holds disparate file types and formats together. An SMIL file calls other files; by itself, it doesn't include anything other the SMIL script. The environment required to run SMIL is not an intensive one. The primary difference between a SMIL environment and an HTTP environment is that, in most cases, media server software such as Real Network's RealSystems Server will be required to run simultaneous streams. The HTTP environment is not designed to handle the time-based nature of a SMIL presentation; that, however, can be resolved with the use of a media server. With a media server, SMIL developers have access to all SMIL functions. Using http without the server software will give the developer less control over the material. The developer determines whether a SMIL presentation will be viewed in a discrete player or viewed in a player that is embedded in the browser. SMIL presentations can be viewed in most browser through the use of a plug-in, such as RealPlayer or QuickTime. SMIL can be developed in a text program, such as Notepad, or in a graphical editor, such GRINS or SMIL Editor V2.0. Now that SMIL is a W3C recommendation, more software should be arriving on the market to make it easier to write and to extend its capabilities. The existing SMIL editors are not as polished as the products that exist to edit HTML, but improvements are occuring on that scene. Macromedia HomeSite offers a tag pack that extends its HTML editing capabilities to SMIL; Macromedia DreamWeaver, a graphical HTML editor, has SMIL plug-ins, and Macromedia Flash can export SMIL files as .SWFs. Formats supported by SMIL include GIF, JPG, RealAudio/Video, QuickTime, AVI, AIFF, AU, WAV, ASF, and Vivo. Like HTML files, SMIL files have two parts. The first is the header portion, which in an HTML file contains the meta-data and base paths. A SMIL header includes that information along with information on the layout of the presentation that controls its appearance on the screen of each unique end user. The second part of a SMIL file is the body, which contains information on the synchronization of objects. All SMIL files are defined, like HTML, with <smil> and </smil> containers at the opening and close of each page. SMIL commands are written with two commands; <par>, which runs object actions in parallel with each other, and <seq>, which makes them occur sequentially. SMIL can be used in conjunction with a database. Used in this manner, the content of a SMIL file can be changed by any end user, not only Web developers. An administrator in product marketing can upload pictures of new inventory without having to interact with the Web development team. Use of a database with SMIL enables personalized multimedia delivered on the fly. SMIL 2.0 ModulesSMIL 2.0 is organized as a set of modules, each containing a different area of functionality. Each module contains the syntax used to describe its functionalities, as well as definitions of interdependencies and integration requirements. These are the modules that the programming staff will have to tackle in order to implement SMIL:
SMIL Objects and FunctionsObjects must be developed in order to used in SMIL. They can be MP3, GIFs, JPGs, FLAs, WAVs, or most other types of multimedia. Once developed, the file must be compressed to its optimal size, as it would normally, and then uploaded to a server. Once the object is available on a Web server, it can be accessed by any SMIL file (and by any Web site as well, if in a Web-friendly format). SMIL's great strength is in the way it handles objects. An object can be any type of file that is supported by SMIL, including audio, video, and graphic files. Most multimedia technologies require that each object be imported into the file, and then melded inextricably with it when it is compressed and exported to a browser-friendly format. Existing multimedia applications do a good job of compressing all their comprised objects into one file that is is smaller than the objects were in total before compression. However, the final file still isn't small, and can take too long to download to the end user. SMIL files call objects in sequence as they are needed, in the same way that an HTML file uses hyperlinks to call other pages. The sequential download of objects may result in more network traffic over all, but the traffic created is relatively thin and network-friendly. SMIL's use of linking to remote objects provides several advantages over its competitors. The distributed placement of objects enhances the ease of management for creative assets. A single object can be used in any number of presentations. A graphic that is used in multiple presentations, such as a sales presentation or corporate logo, can be updated in all presentations simultaneously simply by writing a revised version over the original file. The next time each presentation summons the object, the new one will be downloaded. This is simpler than in other technologies, which would require a developer to open a multimedia file, revise it, test it, export it, and test it again, and then make it available to those in the company who needed it. Also, objects handled in this manner can be cached; objects that are summoned frequently, such as the corporate logo, can be placed on servers outside the LAN, reducing the burden on the corporate infrastructure and minimizing security risks by keeping visitors outside the firewall. Because objects remain separate from each other, an added level of flexibility is available for Web developers, marketing personnel and others. For instance, one generic sales presentation may serve all customers, but by providing the sales staff with the ability to select from a variety of synchronized soundtracks, presentations can be tailored to target specific vertical customers. In this manner, the investment in the original slideshow is extended with minimal effort and cost. Like other multimedia technologies, SMIL lets developers establish layouts and timelines to control the appearance and the actions that comprise a presentation. An object can transition into any other object using one of SMIL's 99 pre-defined transitions; an image can wipe to a movie, for instance. SMIL offers 'profiling', which is part of the content control module. Profiling detects the network and browser condition of the end user requesting the file and then delivers an optimized version of the file to that user. By specifying the profile definitions in the SMIL file header, a developer can ensure that an end user accessing the file from an old browser over a low-bandwidth connection will receive a version of the file suitable to his environment, while an end user with the latest browser accessing through a T1 receives a more bandwidth-intensive version. Profiling can also be used to target specific devices; the same SMIL file that delivers a complex animation to high-bandwidth end users can also send a stripped-down version to handheld devices or mobile phones. SMIL offers language capabilities that can also be optimized with profiling. Several miscellaneous language modules are available in addition to the standard eight modules. By specifying the languages that the SMIL file is available in within the file header, SMIL will automatically detect the language to which the user's computer is set and deliver the presentation in the appropriate language. If no language is specified, SMIL will default to English. The same flexibility that is applied to meeting user's language requirements can also be used to meet the Federal government's accessibility requirements. A presentation can automatically determine a user's display settings to adapt the presentation to the needs of the vision-impaired user, or it can offer all users the option of viewing the audio files with sub-titles. In this way, developers can meet the needs of a wider range of audiences without huge investments of time, effort or server space. A simple but powerful function of SMIL is that SMIL content is searchable, making the archiving of presentations automatic. Corporations that have presentations being created in many different departments on individual workstations can build a repository by default as presentation templates are deployed. The strength of SMIL is in its versatility. Functions from its modules can be used in any number of combinations, and since SMIL is designed to overlap with other technologies, the capabilities of SMIL cn be extended further. With versatility, power, low cost-of-entry and a fast learning curve, SMIL is a multimedia tool that can help companies deliver complex multimedia presentations to their clients and staff in a short timeframe with a minimal investment. About the Author Jay Gitomer is an Internet strategy consultant. Formerly, she was the manager of corporate web development of USinternetworking. Prior to that she was on the marketing staff of Silicon Graphics, where she was responsible for creating an online presence for the Silicon Graphics Federal Marketing Division. Ms. Gitomer has a B.A. from Sarah Lawrence College and an M.A. from New York University, and is a regular contributor to Faulkner Information Services. Web Links[return to top
of this report] [return to top of this report] | |||||||