Smile with SMIL: A Jumpstart to SMIL
SMIL (pronounced as “smile”) – Synchronized Multimedia Integration Language is an XML application defined by World Wide Web Consortium (W3C). SMIL 2.0 [1] has just been released as the W3C recommendation on 7th August 2001. The main design goal as stated by W3C is to define an XML-based language that allows you to write interactive multimedia presentations as well as allowing you to reuse the SMIL syntax and semantics in other XML-based languages such as XHTML. SMIL is an XML-based and vendor neutral markup language that allows you to build interactive multimedia presentation by integrating different media such as audio, video, images and text. It is a powerful markup language that allows you to control what, where, when and how you want the media objects to be in your multimedia presentation. For instance, you may want to position and synchronize the audio object with the image and text or you may want to play a video clip two seconds after an audio narration ends.The specification of SMIL was first publicly released in November 1997 and SMIL 1.0 was published by W3C in June 1998. It signifies the cross-industry agreement on a wide range of features for putting multimedia presentations on the Web. Various working drafts were announced since then and SMIL 2.0 was finalized in 2000. In June 2001, SMIL 2.0 was released as a proposed recommendation and shortly after that, it was officially announced as W3C recommendation on the 7th August 2001. There are a number of available SMIL players such as Oratrix’s GRiNS [2], RealNetworks’s RealPlayer [3], Apple’s QuickTime [4] and Microsoft Internet Explorer 5.5 [5]. Among all, Oratrix’s GRiNS player supports W3C SMIL 2.0 proposed recommendation syntax and semantics. Microsoft acknowledges SMIL by introducing its HTML+TIME approach. Its SMIL-flavored Timed Interactive Multimedia Extensions (HTML+TIME) is to integrate SMIL 2.0 modules with XHTML modules. Microsoft’s Internet Explorer 5.5 supports a number of the SMIL 2.0 draft modules such as Timing and Synchronization and its Internet Explorer 6.0 public preview supports many of the SMIL 2.0 modules.
Why SMIL ?
There are many significant advantages of adopting SMIL. Before, we embark on the detail of SMIL, I would like to highlight some of the obvious advantages of using SMIL:
Declarative and vendor-independent
SMIL is a W3C recommendation. It is an open, vendor independent, easy-to-use and declarative language for multimedia presentations on the Web. In fact, it uses a text-based format so that you can even create it with a text editor.
Integration of multiple media
SMIL integrates multiple media such as audio, video, images and text into a single multimedia presentation. As the name Synchronized Multimedia Integration Language suggests, a SMIL document itself does not contain these media. It integrates them by referencing to the content you may have created e.g. streaming video in RealSystem.
Powerful and elegant spatial layout
SMIL provides easy-to-use and powerful spatial layouts such as regions, multiple windows layout and hierarchical layout for multimedia presentation on the Web. You could declare a set of regions on which media objects are rendered. This will determine how the media objects are positioned on an abstract rendering surface.
Temporal layout by timeline control
One of the significant advantages of SMIL is timing and synchronization. SMIL provides a powerful way of specifying multimedia content. It provides synchronization elements such as <par>, <seq> and <excl> so that you can coordinate and synchronize the presentation of media over a specified timeline. For instance, you could specify the audio narration begins after an image is displayed for five seconds.
Selection and adaptation
SMIL provides powerful content control to facilitate selection and adaptation to the users such as the language used, to the layouts such as the screen size in different devices, and to the environment such as the bandwidth supported. For instance, it provides “test-attribute” mechanism so that the multimedia presentation’s bandwidth requirements are optimized based on the speed of your computer’s connection to Internet. Different media files are used in the multimedia presentation according to the types of connection such as slow 28.8 Kbps dial-up connection or high-speed T1 connection.
There are many potential SMIL applications in various areas. These application areas include infotainment like Internet TV and multimedia presentation, interactive training like e-learning and on-line training program for corporate and institution, multimedia slide show for photography and travel industry, interactive and dynamic product catalogue presentation etc.
How to Start ?
As SMIL is text-based, you only need a simple text editor to create a SMIL document. However, there are also SMIL authoring tools available to assist you in putting various media objects in a SMIL document so as to produce a multimedia presentation easily. Some of the tools available are: GRiNS authoring tools by Oratrix, RealSlideshow by RealNetwork, EZer by SMIL Media, HomeSite by Allaire etc. In this tutorial, you only need to use a simple text editor. The following code shows the outline of a simple SMIL document:
<smil>
<head>
<!— optional header section for presentation information
e.g. meta info., layout —>
<meta name= . >
<layout>
<!— layout specification —>
.
</layout>
</head>
<body>
<!— required SMIL body section containing
media objects, synchronization elements etc. —>
.
</body>
</smil>
Since SMIL is XML-based, it follows XML well-formed rules such as case sensitivity, matching opening and closing tags etc. A SMIL document is created with file extension ‘smil’ or ‘smi’. It begins with <smil> elements and it comprises two main sections, the header section (i.e. <head>. </head>), and the body section (i.e. <body>. </body>). It is finally ended with a </smil> element.
The header section may include the following presentation information:
- Meta-Information: It is used to describe the SMIL document such as presentation title, author name, copyright information etc.
- Layout Information: It specifies the presentation layout that allows positioning of media objects on the visual rendering surface. It is used to define a set of regions on which media objects will be positioned. In other words, it describes where the media objects are to be presented.
- Author-Defined Content Control information: In SMIL 2.0 [1], you could define your own (i.e. customized) content control information to be used in the document body to facilitate adaptation and selection. We shall not discuss this feature in this jumpstart tutorial. However, you could refer to the SMIL 2.0 specification [1] for more detail.
Continue to read full story at Micosoft Apress
