SMIL
Synchronized Multimedia
Integration Language
Basi di Dati e Sistemi Informativi
(Sistemi Multimediali)
Ombretta Gaggi, 3 Maggio 2001
[email protected]
Ombretta Gaggi
1
Cronologia
• 15 Giugno 1998: vengono pubblicate le
specifiche di SMIL 1.0 come W3C
recommendation.
• 1 Marzo 2001: vengono pubblicate le
specifiche di SMIL 2.0 come W3C working
draft.
Ombretta Gaggi
2
SMIL permette di… (1)
• disporre degli oggetti multimediali in punti
precisi dello schermo
• descrivere il comportamento temporale dei
diversi elementi di una presentazione
ipermediale
Ombretta Gaggi
3
SMIL permette di… (2)
• modificare la riproduzione secondo alcuni
parametri relativi alla stazione di lavoro
dell’utente
– lingua, bit-rate…
• inserire dei link ad altre presentazioni o
parti di esse
Ombretta Gaggi
4
Struttura di una documento SMIL
<smil>
<head>
<meta name= "author" content= "Your Name" />
<layout>
<!-- definizione delle regioni -->
</layout>
</head>
<body>
<!-- sincronizzazione degli
elementi della presentazione-->
</body>
</smil>
Ombretta Gaggi
5
SMIL vs HTML
• un documento SMIL ha una struttura molto
simile ad un documento HTML ma
– i tag sono case sensitive
– deve sempre esserci un tag di chiusura
– i tag devono essere aperti e chiusi nell’ordine
corretto (XML)
Ombretta Gaggi
6
La sezione Head
• contiene la definizione della finestra in cui è
contenuta le presentazione
• è possibile definirvi le regioni:
– sono porzioni dello schermo entro cui inserire i
media della presentazione
Ombretta Gaggi
7
Posizionamento delle regioni
• si considera come origine l’angolo superiore
sinistro della finestra principale, e si calcola
la distanza in numero di pixel
Origine
Top
Left
Height
Width
Ombretta Gaggi
8
Le regioni
<smil>
<head>
<meta name= “author” content= “Your Name” />
<layout>
<root-layout width= “300” height=“200”
background-color=“white” />
<region id= “icona” left=“75” top=“50”
width=“40” height= “40” />
</layout>
</head>
<body>
<img src=“mondo.gif” alt=“Icona mondo”
region=“icona” />
</body>
</smil>
Ombretta Gaggi
9
Posizionamento relativo e z-index
<smil>
<head>
<layout>
<root-layout width= “300” height=“200”
background-color=“white” />
<region id= “rettangolo” left=“30%” top=“50%”
width=“50” height= “70” z-index=“1” />
<region id= “cerchio” left=“25%” top=“25%”
width=“100” height= “100” z-index=“2” />
</layout>
</head>
<body>
<img src=“rettangolo.gif” region=“rettangolo” />
<img src=“cerchio.gif” region=“cerchio” />
</body>
</smil>
Ombretta Gaggi
10
L’attributo Fit
Ombretta Gaggi
11
La sezione Body
<smil>
<head>
<meta name= “author” content= “Your Name” />
• contiene le descrizione temporale dello
<layout>
svolgimento
dellawidth=
presentazione
<root-layout
“300” height=“200”
background-color=“white” />
multimediale
<region id= “video” left=“75” top=“50”
width=“40” height= “40” />
• tutte le informazioni
relative alla
</layout>
sincronizzazione
degli
oggetti
nel
tempo:
</head>
<body>
– durata
di un oggetto
<img src=“intervista.rm” region=“video”
– inizio
begin= “3s” dur=“5s” />
– fine
</body>
</smil>
Ombretta Gaggi
12
Riproduzione parallela
<smil>
• il<body>
tag <par> permette la riproduzione
parallela
più oggetti
<par> di
<!questi
due file vengono eseguiti>
<!contemporaneamente>
• è possibile
l’uso degli offset
<audio src=“colonna_sonora”>
<audio src=“commento_parlato”
begin=“10s”>
</par>
</body>
</smil>
Ombretta Gaggi
13
<smil>
Riproduzione in sequenza
<body>
<seq>
• il tagfile
<seq>
permette la riproduzione
1
<par> <!questi
file vengono eseguiti>
sequenziale
di piùdue
oggetti
file 2 <!contemporaneamente>
• è possibile annidare i tag <seq> e <par>
file 3
</par>
file 4 <!questo file viene eseguito quando sia>
</seq> <!file2 che file3 sono terminati>
</body>
</smil>
Ombretta Gaggi
14
Eventi
• è possibile sincronizzare due o più oggetti
sulla base del verificarsi di un evento:
<par endsync=“id(commento)”>
<audio src=“colonna_sonora”
id=“musica”>
<audio src=“commento_parlato”
begin=“id(musica)(10s)” id=“commento”>
</par>
Ombretta Gaggi
15
Switch
• permette di regolare la riproduzione della
presentazione sulla base di alcune
informazioni relative all’utente
<switch>
<audio src="audio_migliore" system-bitrate="16000" />
<audio src=”audio_peggiore" system-bitrate="8000" />
- può essere inserito sia sella sezione layout che nella
</switch>
sezione body
<switch>
<audio src=”audio_italiano" system-language=”it"/>
<audio src=”audio_inglese" system-language="en"/>
</switch>
Ombretta Gaggi
16
Cosa si può testare?
•
•
•
•
•
la lingua
il bit-rate
la dimensione e la profondità dell schermo
caption o overdub
quali tipi MIME supporta il visualizzatore
dell’utente
Ombretta Gaggi
17
Hyperlink
id=“text_and_video”
•<par
SMIL
support link >unidirezionali molto
<video src=“file_video” region=“video” />
simile
a quelli offerti dal linguaggio HTML
<text src=“file_testo” region=“testo” />
•</par>
si possono inserire link ad una
presentazione
o
a
parte
di
essa
utilizzando
<a href=“presentazione.smil#text_and_video” show=“Pause”>
l’id
appropriato
<video
src=”altro_file_video" region=“altra_regione”/>
•</a>
è possibile modificare lo stato di
riproduzione della sorgente del link
Ombretta Gaggi
18
Un esempio
Ombretta Gaggi
19
Definizione delle regioni
<head>
<layout>
<root-layout height="425" width="625” background-color="black"/>
<region id="title" left="5" top="150" width="400" height="200"
z- index="1"/>
<region id="full" left="0" top="0" height="425" width="450"
background-color="#602030"/>
<region id="video" left="260" top="240" height="120”
width="160" z-index="2"/>
<region id="toc" left="450" top="0" height="425"
width="175"/>
</layout>
</head>
Ombretta Gaggi
20
Sincronizzazione: l’indice
<par id=“text_and_video” >
<text src="toc.rt" region="toc" />
<seq>
<!-- tutto quello che avviene nella -->
<!-- regione video -->
</seq>
</par>
Ombretta Gaggi
21
Sincronizzazione: la regione video
<seq>
<text src="title.rt" region="title"
dur="20s"/>
<!-- animazione mappa -->
<!-- video slide show-->
</seq>
Ombretta Gaggi
22
Animazione mappa
<par>
<audio src="map_narration.rm"/>
<img src="map.rp" region="full"
fill="freeze"/>
</par>
Ombretta Gaggi
23
Video Slide Show
<par>
<switch>
<img src="slideshow.rp" region="full" fill="freeze" systembitrate="45000"/>
<img src="slideshow_low.rp" region="full" fill="freeze" systembitrate="20000"/>
</switch>
<seq>
<video src="video_narration.rm" region="video" dur="27s"/>
<audio src="video_narration_audio_only.rm" clip-begin="27s"
dur="53s"/>
<video src="video_narration.rm" clip-begin="80s" region="video"/>
</seq>
</par>
Ombretta Gaggi
24
Alcune limitazioni di SMIL (1)
• Non fa alcun controllo sulla coerenza:
<par dur=“10s”>
<audio src=“colonna_sonora”
dur=“20s” >
<audio src=“commento_parlato”
dur=“15s” >
</par>
Ombretta Gaggi
25
Alcune limitazioni di SMIL (2)
• l’utente può interagire solo con l’intera
presentazione e non con i singoli
componenti
• seguendo un link, non è possibile fermare la
presentazione originaria
• non permette l’uso di transizioni
• …
Ombretta Gaggi
26
Players
• RealNetworks G2
• CWI Grins beta
• Helio Soja beta
• NIST S2M2.
• Productivity Works L p player
Ombretta Gaggi
27
Authoring tools
• RealNetworks RealPresenter
• CWI Grins
• TAG Editor 2.0 - G2 release by Digital
Renaissance
• VEON authoring tool
• L p Studio PRO
Ombretta Gaggi
28
Alcuni tutorial SMIL in rete
• http://www.cwi.nl/~media/SMIL/Tutorial/
• http://www.helio.org/products/smil/tutorial/
• http://web.tiscalinet.it/dotnet/testosmile.html
Specifiche SMIL
• http://www.w3.org/TR/REC-smil/
• http://www.w3.org/TR/smil20/
Ombretta Gaggi
29
Scarica

smil