smil. andrea patiño-2001683-2

14
1 Distributed Multimedia Description Languages An analysis of the SMIL language Andrea Patiño Orrego -2001683, Vrije Universiteit Amsterdam.  Abstract –  A declarative language for temporal interaction between Distributed Multimedia called SMIL (Synchronized Multimedia Integration Language) is analyzed on this article. This paper  presents an overview of SMIL features and explains how this language makes it possible to position  spatially and to combine temporally diverse media content. Some SMIL functions are compared with other technologies which share some of its characteristics. Additionally, limitations inherit to SMIL  Language are also exposed. 1. INTRODUCTION The use of enrich content or multimedia content offered through computers and mobile devices is one of the f acts that engage most people to the m assive use of such electronic technologies. All the collection of data represented by text, audio, images, animation and video can be storage, offered or transmitted easily nowadays; but the distribution of the content in a borderless world like internet require better and new technologies to improve the streaming and synchronization of those multimedia data objects. A good example to comprehend how this content converges together could be a video presentation about history where every user has the possibility to personalize its own view, changing the language settings, size of the images or even adding captions. The use of multimedia resources is presented synchronously over heterogeneous networks and heterogeneous us ers. The study of Distributed Multimedia or communication of multimedia data between workstations or  servers through Web has become an important issue on Distributed Systems and Multimedia Authoring recently. Several f actors such Quality of Service, Quality of Expe rience, real-time streaming protocols, media synchronization, and multimedia distribution, and so forth; are essential requirements that new technologies or languages have to consider in order to give a qualified and efficient performance to multimedia in a network con text. This article fo cuses on a specific  Distributed Multimedia Description language called SMIL,

Upload: andrea-patino

Post on 06-Apr-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 1/14

1

Distributed Multimedia Description Languages

An analysis of the SMIL language

Andrea Patiño Orrego -2001683, Vrije Universiteit Amsterdam.

  Abstract –  A declarative language for temporal interaction between Distributed Multimedia called 

SMIL (Synchronized Multimedia Integration Language) is analyzed on this article. This paper 

 presents an overview of SMIL features and explains how this language makes it possible to position

 spatially and to combine temporally diverse media content. Some SMIL functions are compared with

other technologies which share some of its characteristics. Additionally, limitations inherit to SMIL

 Language are also exposed.

1.  INTRODUCTION

The use of enrich content or multimedia content offered through computers and mobile devices is one

of the facts that engage most people to the massive use of such electronic technologies. All the

collection of data represented by text, audio, images, animation and video can be storage, offered or 

transmitted easily nowadays; but the distribution of the content in a borderless world like internet

require better and new technologies to improve the streaming and synchronization of those

multimedia data objects.

A good example to comprehend how this content converges together could be a video presentation

about history where every user has the possibility to personalize its own view, changing the language

settings, size of the images or even adding captions. The use of multimedia resources is presented

synchronously over heterogeneous networks and heterogeneous users.

The study of Distributed Multimedia or  communication of multimedia data between workstations or 

  servers through Web has become an important issue on Distributed Systems and Multimedia

Authoring recently. Several factors such Quality of Service, Quality of Experience, real-time

streaming protocols, media synchronization, and multimedia distribution, and so forth; are essential

requirements that new technologies or languages have to consider in order to give a qualified andefficient performance to multimedia in a network context. This article focuses on a specific

 Distributed Multimedia Description language called SMIL,

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 2/14

2

An elaborate solution which allows Web multimedia technologies to converge together called SMIL -

Synchronized Multimedia Integration Language [“smile-”]1

presented by the Synchronized

Multimedia Working Group (SYMM WG) of the World Wide Web Consortium under the W3C

recommendation is the base of this report. A concept analysis and description, a brief comparison with

other approaches and some language limitations are exposed sufficiently to understand clearly the

SMIL language for expressing and supporting distributed multimedia.

Figure 1 SMIL allows Web multimedia technologies to converge together 

2.  SMIL FEATURES

Synchronized Multimedia Integration Language (SMIL), is a XML2-base declarative language (“Say

what you want, but not how it happen”) presented in a procedural way. The first version appears in

1998 and has evolved through the specifications 2.0, 2.1 until the 3 version in 2008 which is the

current one.

This markup language is an open XML structured language for describing how media objects are

spatially and temporally related each other. Actually, SMIL support the separation of content from

structure and control. In addition, SMIL supports extensible content control and rich model-base

hyperlinks. All those characteristics are grouped in fifty modules3 grouped in ten categories. Six

functional categories; structure, media content, layout, timing, interaction, transitions and adaptivity

are merely presented on this document.

2.1 Structure: defines the basic XML declaration for encoding SMIL presentations. As a declarative

language it defines what is wanted, but not how it happened.

1Pronunciation

2XML or eXtensible Markup Language is a meta-language.

3Collection of elements or/and attributes [1]

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 3/14

3

Figure 2 Basic declarations used in SMIL 3.0

On Figure 2, the line 1 defines the XML version, the line 2 defines the document type to be used by

the XML parser for SMIL document and the line 4 shows the host language of the document as SMIL.

The <smil> </smil> tags define the language in used, the <head> </head> tags declare

what is going to be reference on the <body> </body> tags.

As XML, SMIL defines the same conventions: elements, attributes, references and values. Elements

give an ordered structure to the document where every element name creates a distinction between

them, some special elements like timing and control let define child elements nested in a continue and

undefined degree.  Attributes are qualities given to the elements in order to describe them; attributes

are specified by their value. For example, on Figure 3, the attributes of the element  <region> are:

top, left, width, height and z-index, which have particular value.

 References as their name indicate, specify the directory resources or files invoked by the presentation

(external files), and also permit to elements refer each other into the document thanks to the use of 

ID’s

4

(internal references), for instance: id=”canvas1” declared on the <head> is referenced onthe <body>.

Figure 3 SMIL, XML-base Structure

4Unique Identifier

attributeelement valuereferences

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 4/14

4

2.2 Media content: this category is an allusion to the integration of diverse media. SMIL has a general

tag <ref>, which specifies whatever kind of references such image, video, audio, text, animation

or text-stream, but to facilitate the reading of SMIL code, those references can be also defined

explicitly with the synonyms <img>, <video>, <audio>, <text>, <animation>,

<textstream>,  respectively.

2.3  Layout: SMIL allows the spatial location and measurement of content.

Figure 4 SMIL Layout5 

SMIL has four profiles to fix the objects position on the viewing environment: Basic Layout, Audio

 Layout, Multi-Window Layout and Hierarchical Layout .

  Basic Layout   defines the core SMIL layout elements and their attributes, uses the elements

<layout>, <root-layout> and <region>.

The element <root-layout> is a container window which is used to define its attributes,

determines the size of the window presentation, background color and ID. Elements root-layout and

region falls within <layout> and </layout> tags inside the SMIL header section.

 Regions are rectangular divisions of root-layout and cannot be nested; regions are used in order to

specify the area on the window where a media object is placed. Every region is identified with a

unique ID, and width and height must be defined.  For example: on Figure 4, region Image is located

on the coordinates left and top (0, 29) and its dimensions are width and height (240, 180).

SMIL regions can overlap; this characteristic can be managed with the attribute z-index to control

the regions stack. It is easy to see on Figure 4 where region Logo overlaps region Image. Another 

attribute to fix the images or media size to the regions size (over and under) is the fit attribute. This

attribute can have the values fill, hidden, meet and scroll. 

5Composed image from [2]

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 5/14

5

 Audio Layout  provides a single attribute to control the volume intensities expressed in decibels dB

with non-negative values or percentage values.

  Multi-Window Layout allows the definition of external windows plus their independent location and

resizing. This profile also provides attributes for creating and controlling multiple windows

independently. Those windows are defined as topLayout windows and belong to the layout section;

regions can be placed as topLayout children, and those regions which are not declared as children of a

topLayout belong to the root-layout. 

 Hierarchical Layout   this layout was defined on the SMIL 2.0 version and its functionalities were

divided between   subRegionLayout, AlignmentLayout, BackgroundTilingLayout and OverrideLayout 

on the 3rd version.

 SubRegionLayout allows the statically or dynamically creation of nested regions; AlignmentLayout  

is used with the purpose of give media a relative and coordinated location between the regions;

 BackgroundTilingLayout  defines an extra feature for insert an image or tiled images, into a

 background region and, OverrideLayout makes possible to give new values to sub-regions attributes

(fit, z-index, backgroundColor, backgroundOpacity). Those attributes correspond to sub-regions

created in a dynamical way.

2.4 Timing: is considered the core of SMIL, timing and synchronization are divided into nineteen

modules to control all aspects concern to time. For example, If a timeline is considered while

 playing a song, some time parameters such begin, during, and end of reproduction are implicitly.

SMIL allows the specification and control of those parameters and also the synchronization

 between different types of media content. To do so, SMIL defines a set of timing attributes and

elements. 

Figure 5 Timing Attributes and Elements

Timing Attributes: begin, dur, end, repeatDur and repeatCount are attributes to

define objects timing behavior.  Begin (begin) specifies when a media object become active;

duration (dur) is represented by a numeric value indicating explicitly the extension of the

 presentation; end  (end) defines when a media object become passive; repeat   during  

(repeatDur) allows repeated iterations in a specific time and repeat count  (repeatCount)

specifies the number of iterations.

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 6/14

6

Timing Elements: par or parallel element is a grouping mechanism to play back several objects

simultaneously. When a media object is tagged as par, its children execute at the same time. 

seq or sequence element  make it possible to show one element before or later to another in a

consecutive way creating a series of elements temporally independent, an object starts processing

only when its predecessor has finished, therefore there is only one object active in a time.

excl or exclusive element describes control managing over the sources in this case: stop, pause

and resuming over clips sets. When any media object takes control, it replaces the current object

and other objects are instantly excluded; for instance when one child is selected, any other child

that was playing is immediately de-activated. Those control changes can be defining by timing or 

user events.

Figure 6 Timing Elements

Timing elements can also operate nested creating a wide range of time compositions producing

advanced and complex timeline performances.

2.5  Interaction: offers navigation facilities with the aim of explore different sections or branches on

the presentations. SMIL uses the <a> element in the same way that HTML but within SMIL

this element is enriched with the time notion. As in HTML this element is a reference used to link 

objects and its attribute href contains the value indicating the destination link; the <a> element

cannot be nested. Another element used to control interaction is the <area> element which

defines a partial region to be linked.

href attribute uses URL links, XML files or even internal references (Figure 7). To accurate

internal or XML references, the value taken by href is preceded by the # symbol as can be

appreciated on Figure 8  line 14, where the area which triggers the event, in this case part_1,

makes reference to the following area identified with part_2 defined on the video element.

Figure 7. Linking elements

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 7/14

7

Figure 8. Linking elements

Linking elements also support time attributes; for instance if time notion is desired, then attributes

such begin, dur and end, etc., can be writing to control temporal behavior which commonly

gives to the link a certain active period that restrict users manage over it. Besides of those

attributes, linking elements include the next set of attributes: sourceLevel, destinationLevel,

sourcePlaystate, destinationPlaystate, alt, show accesskey, tabindex, target, external, actuate,

sourceLevel and destinationLevel which are define on LinkingAttributes module  of the SMIL 3

specification.

2.6  Transitions: refers a transition effect module applicable only to images; this SMIL feature

specifies the attributes and elements to produce effects such as fades and wipes, similarly to TV,

video or slideshow, transitions soften the changes between images. This module is subdivided

into BasicTransitions, FullScreen, Inline and TransitionModifiers modules which define style,

entire screen, control level and additional transition control respectively.  BasicTransitions

specifies the attributes transln for transitions placed at the beginning of the media active

duration and transOut for transitions placed at the end.  Inline transitions control the progressof the transition; this means the progress may be accelerated, decelerated, animate forward or 

 backwards thanks to the transitionfilter element. 

2.7  Adaptivity or Content Control: as presentations are all around the world on internet, to improve

the presentation comprehension SMIL provides some elements to adapt the content for every kind

of user and make the presentations accessible. Adaptivity permit users with different languages,

disabilities or different knowledge interpret the presentation content, because of the facilities

offered. This category also has some elements to consider according to the user, hardware or 

software diversities.

User adaptation:

systemLanguage= (“es”, “en”, etc.) systemCaptions= (“on”, “off”) 

systemOverdubOrSubtitle= (“overdub”, “subtitle”)this option allows the

user to chose between subtitles or dubbed into another languagesystemAudioDesc= (“on”, “off”) 

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 8/14

8

 Hardware adaptation:

systemBitrate= (“128000”, “256000”, “512000”, …) systemCPU= (“alpha”, “x86”, “ppc”, “mips”, “arm”, …)systemScreenSize= (“800x600”, “1024x768”, …)systemScreenDepth= (“1”, “4”,“8”, “16”, “32”)

Software adaptation:

systemOperatingSystem= (“winnt”, “wince”, “win9x”,“win32”,“win16”, “unix”, “qnx”, “linux”, “solaris”, …) 

SMIL adapts also the presentations windows size according to the screen dimensions; some

SMIL regions and layouts use selectivity test to choose those satisfactory.

Switch element: allows selectivity; it is considered the most important element for adaptivity;

each element indicates an option. Selected option has to be tested according to certain conditions

 before being elected. Not selected elements or not approved are ignored and are not played; the

first entry is accepted and played and the last entry is accepted by default. For example, on

Figure 9a, one of the five film versions is played according to the language and by default the

english_film.rm is played and on Figure 9b, the highest quality film is played according

to the net bandwidth.

a. b.Figure 9. Switch Element

Further Features

In order to have a wide perspective about SMIL features would be necessary to study the language in

a proper way particularly by doing; summarizing, some of the several additional features are

mentioned.

SMIL also allows: animations, pre-fetch, speed control, backwards playback, key events, simple in-

line timed text, pan and zoom on images, content computation, etc, etc, etc.

Regarding to meta-data, there are SMIL 3.0 extensions available to describe Web resources, known as

meta-data infrastructure or data describing data. As SMIL is XML-base, it reuses the language with

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 9/14

9

other XML-base languages like XHML6, in this way SMIL 3.0 allows better xml integration.

Another feature involves SMIL 3.0 timing which can also be exported as timesheets into other host

languages to separate the content from timing and presentation, similar to Cascading Style Sheet (CSS)

language.

The list features seem to be uncountable; i t is because of the wide range of modules SMIL provides,

however, those modules can be referred one by one according to every project requirements.

3.  SMIL PROFILES

A profile presents a fixed collection of elements and attributes representative to every environment.

Some important SMIL profiles are: Language, Mobile, Extended Mobile, XHTML+SMIL and SMIL

3.0 Tiny Profile. SMIL 3.0 defines four profiles: Language, UnifiedMobile, Daysy and Tiny.

SMIL Language profile: this profile explain the language modifications included in the current

version throughout the updated modules, elements and attributes in order to maintain and implement

new features.

UnifiedMobile profile: mobile devices are enclosed in this profile, where SMIL modules provide

facilities to perform mobile presentations.

 Daysy profile: this profile regards DAISY international standard for digital talking books designed

specially for disabled persons.

Tiny Profile: provides the basic SMIL features, this profile is designed specifically to reproduce

media content in devices with a small number of sources or server-side playlists.

4.  SMIL IMPLEMENTORS

Media players and Web browsers are necessary to playback SMIL presentations; those players should

give support to SMIL features. Media player are often user interfaces and Web browsers implement

SMIL with the help or plug-ins7

or add-ons installed on these.

 Media players

CWI Ambulant Player: is open source and provides a complete SMIL support.

 Real Networks Real Player: is considered the leader on SMIL media players, support SMIL 2.0,language and SMIL 2.0 profiles.

 Apple QuickTime Player: supports only SMIL 1.0

Oratrix GR i NS: support SMIL 2.0 and is a commercial implementation.

6eXtensible HyperText Markup Language base on html4.01 combined with XML to correct bad practices of basic html.

7Additional software components

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 10/14

10

 Adobe SVG Viewer: supports SMIL animation in SVG8 

 Mobile Browser 

SMIL portability provides tools to develop content of mobile platforms, there exist the  Access

Technology Embedded SMIL player  which   provides an HTML browser framework for mobiles

actually supported by Access, Ericsson, Motorola, Nokia, Samsung. And the CWI Ambulant Player: 

supported by PDAs and similar devices.

Another browser implementations are Daisy Technology for talking books that suppor Daisy SMIL

 profile an SMIL Tiny player for Smil Tiny profile for playing list implemented from Apple, Microsoft

RealNetworks between others.

5.  ADVANTAGES AND DISADVANTAGES 

 Advantages

SMIL is a simple but extensible format. Some applications combine SMIL with multimedia message

(MM) on mobile devices, Scalable Vector Graphics (SVG) to create animation and XHTML to control

different media content.

SMIL documents opposite to Flash documents are structure-driven allowing the reused of the

structure; equally, SMIL has the ability to located presentation from different servers into one single

layout and to create complex media presentations without using scripting language such as Javascript.

As a final point, the strong notion of time makes it possible to regulate timeline automatically.

 Disadvantages

The installation of plug-ins on web browsers is a weak point of SMIL and although, Microsoft

Internet Explorer has limited support for SMIL features Mozilla and Chrome browsers easily integrate

SMIL with the use of plug-ins.

To run in a computer any similar presentation, the user must have a SMIL player 

6.  SMIL APPROACHES

Comparison with other technologies

Why approaches? Because, there is not any other similar and single technology to compare withSMIL. SMIL is a dedicate language or new standard to merge multimedia technologies into a single

 but synchronized piece so, it orchestrate together several media sources and objects dynamically. It is

aloud to say then, that SMIL combine the strengths of many technologies into a single collaborative

environment where instead of competitions there exists integration. Nevertheless in terms of modules,

8 Scalable Vector Graphics 

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 11/14

11

SMIL can be compare with other technologies such as Flash, CSS, Ajax, Html5 pointing out how

SMIL as a language differs in terms of distributed multimedia to those technologies.

Between SMIL, Ajax, HTML5 and Flash, exist some approaches; all of them present media content

online, provides richer media elements and tag along dynamism and performance improvements.

According to some practices and fieldwork test, some facts were evaluated in terms of quality of 

content, simplicity, performance, portability and source code measurement.

Those technologies compete together for the quality of content presentation and latest technology

advances. Personally, I consider Html5 as the simplest way of presenting content online because this

new born technology do not need additional plug-ins to present videos and even offers some control

operations. Although old browser versions such IE6 do not support Html5, according to Google

Analytic, 98% of people work with IE 8+ and the latest versions of the other browsers. But Html5 is

not yet a standard specification.

In comparison, SMIL, Ajax and Flash require additional plug-ins browser installation. Ajax seems to

have the next simplest way to show the content on any kind of browsers. It is compatible with Firefox

3, Internet Explorer 8, Safari 4 and Chrome. Flash is also compatible with many browsers but it is

 performance decrease under heavy load of its sources in contrast to the others and can not be easy

found by searching engines like Google. Similarly to Ajax, SMIL as a new alternative seems to be

high compatible with browsers, but plug-ins installation can be a bother task.

Technology Benefits Drawbacks

Html5 The rise of webapps, more descriptive

semantics, richer media elements

Brower support, the language is a spec,

Media licensing issues

Flash `Cross-platform compatibility, Flash files

can are usually very small and can be

easily downloaded, A variety of different

types of video files can easily be

converted to the Flash format

Creating Flash content can be expensive

and time consuming

Ajax Creating fast and dynamic web pages.

W3C Standard, high browser-device

compatibility, Friendly URLs, Deep

links.

If JavaScript is not activated, Ajax can't

works. The asynchronous mode may

change the page with delays (when the  processing on the server take some

times), this may be disturbing.

Smil Easy to learn and understand, an HTML-

like language, can be written using a text-

editor, W3C recommendation

Browser support, Plug-ins

Table 1

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 12/14

12

Another relevant fact evaluated was the code source measurement which has an effect on the effort

achieving presentation production. Making similar presentations with SMIL, Flash and Html5, Html5

seems to have the largest code content competing with SMIL; Flash appear with a medium average of 

code length, but in basic task such as a slideshow presentation flash gives the impression of having

more source code investment, especially when adding buttons control.

In the same line of measurement, source files and output files were evaluated; unsurprisingly Flash

has the highest records producing the heaviest output files (size expressed in Kb). SMIL and Html5

have a similar average of files produced and the sizes of those files are considerably smaller in

comparison with Flash files.

On the other hand, a merely performance evaluation was employed, but some important facts such as

connectivity and bandwidth were ignored anyway, proves where done over the same conditions and

 browsers. A simple calculus was done to compare the number of seconds that user has to way before a

 performance started. Results can be appreciated on Table 2.

Technology Slideshow time Video time

  Html5 8ms 3ms

  Flash 2ms 4ms

Smil 3ms 3ms

Table 2

Another portal to compare SMIL, is SmilLayout which contain similar CSS characteristics. “It is

isomorphic and replaceable with CSS”[3]. Those characteristics are shown on Table 3.

  SMIL Constructs CSS Constructs

<root-layout> and <toplayout> elements only one window (the viewport)no CSS control over window size

  backgroundColor= attribute background-color= property Background 

no equivalent remaining background properties

<region> elements declarations Refer 

id=, regionName= and region= attributes selectors

top=, left=, bottom=, right=, width=,height= and z-index= attributes

top=, left=, bottom=, right=, width=,height= and z-index= properties

hierarchical regions (in head) inheritance (in body)

sub-regions relative positioning

units of measure: pixels, percentage units of measure: pixels, percentage

 Positioning 

no equivalent absolute length units: points,centimeters, etc.

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 13/14

8/3/2019 SMIL. Andrea Patiño-2001683-2

http://slidepdf.com/reader/full/smil-andrea-patino-2001683-2 14/14

14

 BIBLIOGRAPHY 

[1] SMIL 3.0 Specification http://www.w3.org/TR/2008/PR-SMIL3-20081006  

[2]  Bulterman, Dick and Rutledge, Lloyd   . SMIL 3.0 Interactive Multimedia for the Web, Mobile

 Devices and Daisy Talking Books. 

[3]    Hardman, Lynda and Rutledge, Lloyd.  SMIL 2.0 — Interactive Multimedia on the Web 

Multimedia and Human-Computer Interaction Group CWI, Amsterdam, The Netherlands

http://homepages.cwi.nl/~media/SMIL/Tutorial/SMILTut.html  

[4]  Kennedy, .Tim and Slowinski, Mary SMIL Adding Multimedia to the Web

[5] SMIL 2.0 Specification http://www.w3.org/TR/2005/REC-SMIL2-20050107/