Synchronized Multimedia Integration Language (SMIL) is a World Wide Web Consortium extensible markup language (XML) that enables authoring of interactive audiovisual presentations. SMIL is typically used for multimedia presentations which integrate streaming audio and video with images, text or any other type of media including animations, visual transitions, and metadata such as subtitles and closed captioning. .SMIL is an easy-to-learn HTML-like language, and many SMIL presentations are written using a simple text editor.
SMIL allows the author to present media items such as text, images, video, audio, links to other SMIL presentations, and files from multiple web servers, allowing for convenient file sharing for uses such as editing, archiving and transcription. SMIL markup is written in XML and has similarities to HTML. SMIL files commonly take the .smil file extension as other programs share the .smi extension.
Authoring and rendering tools for SMIL include RealSlideshow Basic by RealNetworks, GoLive6 by Adobe and TransTool, an open-source transcription tool. SMIL players include Adobe Media Player, QuickTime Player, RealPlayer and Windows Media Player. SMIL presentations can be accessed via a computer’s browser with the use of a plug-in.
Some browsers, including Mozilla, are incorporating SMIL and other XML-related technologies into their browsers. SMIL is also able to access scalable vector graphics (SVG) animation. SMIL can be used on handheld and mobile devices and has also engendered the Multimedia Messaging Service (MMS), a video and picture equivalent of Short Message Service (SMS). SMIL is also one of the underlying technologies used by HD-DVD for advanced interactivity. The internet video site Hulu uses SMIL as part of its media-playing technology.
SMIL documents are similar in structure to HTML documents in that they are typically divided between a required body section, which contains timing information, and an optional head section which contains layout and metadata information. SMIL refers to media objects by URLs,, allowing them to be shared between presentations and stored on different servers for load balancing. The language can also associate different media objects with different bandwidth requirements.
SMIL can be used as a script or playlist tying sequential pieces of multimedia together which can then be syndicated through RSS or Atom. In addition, the combination of multimedia-laden .smil files with RSS or Atom syndication is useful for accessibility to audio-enabled podcasts by the hard-of-hearing through Timed Text closed captions, and can also turn multimedia into hypermedia that can be hyperlinked to other linkable audio and video multimedia.