|
SMIL
Didier Courtaud 21 décembre 1998
|
|
Plan
SMIL ( Synchronized Multimedia Integration Language )
DESS Ingénierie Documentaire et Multimédia
Module M4A
Didier COURTAUD
Remerciements
Ce cours s'est librement inspiré de :
Qu'ils soient ici remerciés de leur contribution respective
Introduction
-
Le multimédia est très disparate
-
Diversité de formats
-
Diversité de média
-
Multimédia et Web se sont développés
de façon parallèle
-
Pas de format d'échange
-
Diversité des plateformes matérielles et/ou
logicielles
Introduction : Suite
-
Beaucoup de bits
-
Images, audio et vidéo n'ont pas été
pris en compte dans les premiers protocoles de l'Internet
-
Conséquences : problèmes de synchronisation
entre
-
le serveur
-
le réseau
-
le client
-
Tous les bits n'ont pas le même poids
-
Par exemple, le temps entre deux images peut être plus important
que le détail de l'image elle-même
-
Le contenu peut être dispersé sur un réseau
-
Besoin de synchronisation
Introduction : Intégration avec le Web
Plusieurs choix possibles
-
Programmatique
Encodage des évenements qui affichent, déplacent
ou détruisent des objets
-
Lingo ( Director ) ( en utilisant SchockWave )
-
Java ( Dynamic HTML )
-
HTML + Time ( Microsoft )
-
Déclaratif
Spécification d'un ensemble d'objets et de leur
synchronisation
-
Choix fréquent : déclaratif pour les comportements
basiques
programmatique pour les situations complexes
Introduction : Objectifs d'un multimédia sur le Web
-
Ajouter des possibilités de synchronisation au Web
-
Fournir au Web un langage déclaratif
-
Interopérabilité
-
Perennité
-
Format textuel
-
Possibilité de l'éditer à la main
-
De préférence respectant la grammaire XML
Introduction : SMIL
-
Synchronized Multimedia Integration Language
-
Prononcez : smile
-
Recommandation du W3C depuis le 15 Juin 1998
-
Développé par le groupe de travail SYMM du
W3C
-
RealNetworks, Lucent, Philips, DEC, NIST, CWI, Netscape ,
...
-
Langage d'intégration
-
Les éléments multimédia sont référencés
et pas inclus !
-
Défini par une DTD XML
-
Langage déclaratif
Introduction : Une présentation simple
 |
Texte formaté, vidéo
et audio
Introduction : Une présentation simple : Mise en place d'un lien local
 |
le graphique apparaît durant le commentaire parlé
Introduction : Une présentation simple : Correspondant distant
 |
La première vidéo se termine, la deuxième démarre
Introduction : Une présentation simple : Navigation au travers d'un lien
|  |
 | A tout moment pendant la vidéo, le spectateur doit pouvoir demander de l'information supplémentaire |
Introduction : En résumé
Que devons-nous spécifier ?
-
Le contenu des objets multimédia
-
La répartition spatiale des objets multimédia
-
La répartition temporelle des objets multimédia
-
Les liens ( navigation inter-objets )
-
Les contenus alternatifs ( bande passante, langue,
... )
-
Les annotations
Le contenu
Le contenu : Dimensions spatiale et temporelle des objets multimédia
 |  |  |  |
texte: objets 2D ; séquence linéaire rapport d'aspect indifférent | vidéo: mise en page 2D + temps ; rapport d'aspect probablement important | audio: dépendance temporelle uniquement | ? : mise en page 0 ou 2D sans ou avec dépendance temporelle |
graphiques : mise en page 2D rapport d'aspect probablement important | | | |
Le contenu : Instance d'un objet multimédia
 | - Objet entier ou une partie de l'objet
- Extension, position et profondeur
- Durée
- Cible des liens
- Annotations
|
Nous reviendrons sur ces points un peu plus tard
Le contenu : Les éléments des objets multimédia
Eléments ref, text, textstream, img, audio, video
et animation
<ref src="anything.???"
... />
<text src="file.html"
... />
<textstream src="stockticker.rtx
" ... />
<img src="graph.jpg"
... />
<audio src="http://www.w3c.org/SYMM/joe.wav"
.../>
<video src="rtsp://www.w3c.org/SYMM/vid.rm"
.../>
<animation src="cute.anim"
.../>
L'attribut src est un URI qui localise l'objet.
Le player ne déduit pas le type exact de l'objet
du nom de l'élément de l'objet multimédia. Il utilise
par exemple l'attribut type, ou l'information de type communiquée
par le serveur ou par l'operating system. Les noms servent uniquement à
la lisibilité.
Le contenu : Spécification d'une partie d'un objet
Le contenu : Echantillons en temps
Le temps et l'espace sont traités indépendamment
-
L'échantillonnage en espace est fait par le mécanisme
des régions expliqué un peu plus loin
-
Le temps est réduit à une seule dimension
-
seule une section continue d'un objet multimédia continu
peut être spécifié
Attributs clip-begin et clip-end
<video src="mpeg/zoomin.mpg"
clip-begin="smpte=00:01:19:20"
clip-end="smpte=00:01:38:40" .../>
La syntaxe est la suivante .....
Le contenu : Syntaxe de clip begin/end
Clip-time-value ::= Metric "=" ( Clock-val
| Smpte-val )
Metric
::= Smpte-type | "npt"
Smpte-type
::= "smpte" | "smpte-30-drop" | "smpte-25-drop"
Smpte-val
::= "Hours":"Minutes":"Secondes"[:"Frames"[:"Subframes]]
Hours
::= 2DIGIT
Minutes
::= 2DIGIT
Secondes
::= 2DIGIT
Frames
::= 2DIGIT
Subframes
::= 2DIGIT
Metric a 3 options SMPTE : smpte
, smpte-30-drop , smpte-25-drop
autrement il prend la valeur npt
(Normal
Play Time) qui utilise une valeur d'horloge.
Exemples de valeur de clip-begin
:
Marque SMPTE : smpte=10:12:33:20
NPT
: npt=12:05:35:3
Une valeur d'horloge s'écrit ......
Le contenu : Syntaxe d'une valeur d'horloge
Clock-val
::= Full-clock-val | Partial-clock-val | Timecount val
Full-clock-val ::= "Hours":"Minutes":"Secondes"("."Fraction)?
Partial-clock-val ::= "Minutes":"Secondes"("."Fraction)?
Timecount-val ::= Timecount("."Fraction)?("h"|"min"|"s"|"ms")?
defaut : "s"
Hours
::= 2DIGIT; n'importe quel nombre positif
Minutes
::= 2DIGIT; entre 00 et 59
Secondes
::= 2DIGIT; entre 00 et 59
Fraction
::= DIGIT+
Timecount
::= DIGIT+
2DIGIT
::= DIGIT DIGIT
DIGIT
::= [0-9]
Exemples de valeurs d'horloge valides :
Full clock value :
02:30:03 2 heures, 30 minutes et 3 secondes
Partial clock value : 02:33
2 minutes et 33 secondes
Timecount values :
3h , 45min, 30s, 5ms
Disposition spatiale
Disposition spatiale : Façons possibles de spécifier la mise en page
Disposition spatiale : Les Régions
Chaque instance d'objet contient une référence
à une région
-
permet au créateur de savoir où l'objet apparaîtra
L'élément region
est défini par :
<region
id="V-main" top="5%" left="50%" height="100%" width="100%" z-index="3"
/>
<region id="V-remote" top="10" left="100"
height="200" width="200" z-index="2" />
-
Un id
pour chaque région est obligatoire. Sa valeur est un identificateur
au sens de XML.
-
Les valeurs sont des pourcentages ou des pixels. L'unité
"px" peut être omis.
Disposition spatiale : Profondeur
La profondeur ( Z-index ) détermine l'ordre d'empilement des objets
( l'indice le plus élevé sur le dessus ).
Si deux éléments A et B ont la même profondeur alors
:
-
Si B débute après A
alors B est placé au-dessus de A
-
Si B et A débute en même temps et si B est après
A dans l'ordre lexical
alors B est placé au-dessus de A
Disposition spatiale : Pourquoi une hauteur et une largeur ?
Disposition spatiale : Contraintes sur la mise en page
Disposition spatiale : La mise en page
<layout>
<root-layout width="721" height="587"
id="matise" />
<region id="T_title" left="2%"
top="5%" width="40%"
height="24%"
z-index=2 />
<region id="V_remote" left="3%"
top="44%" width="54%"
height="40%"
z-index=3 />
......
</layout>
Disposition spatiale : Mise en page de base
L'élément root-layout
définit une zone rectangulaire. Toutes les autres régions
sont définies par rapport à cette zone. Il n'y a pas de mise
en page entremêlée ou relative.
La mise en page root-layout est
le point de vue , ou la fenêtre, à partir de laquelle la présentation
sera rendue visuellement.
Un document SMIL peut avoir au plus une mise en page root-layout
.
Si un objet multimédia n'a pas d'attribut région
explicite, alors une mise en page par défaut est attribuée
par le logiciel de visualisation.
Pour obtenir la mise en page par défaut pour tous
les éléments multimédia, une mise en page de base
vide peut être déclarée de la façon suivante
:
<layout> type="text/smil-basic-layout" </layout>
Si aucune mise en page root-layout
n'est
spécifiée alors la taille de la fenêtre est calculée
par le logiciel de visualisation de façon à ce qu'elle soit
aussi large que l'objet multimédia le plus large.
Disposition spatiale : Découpes en espace
Disposition spatiale : Relations entre la mise en page SMIL et CSS2
La mise en page de base de SMIL est consistante avec le module
visuel de rendu de CSS2. Il introduit en plus l'attribut fit.
Par ailleurs, c'est un sous-ensemble.
La mise en page de base de SMIL ne s'applique qu'aux éléments
des objets multimédia.
Les éléments des objets multimédia
font référence à une région.
Les éléments région de CSS2
font référence aux éléments des objets multimédia
Disposition temporelle
Disposition temporelle : Quel temps ?
Types de temps
Disposition temporelle : Durée d'un objet multimédia
intrins$egrave;que
-
déduite du contenu
l'audio ( ou la vidéo ) dure 5,3 secondes
-
la durée d'objets discrets, comme du texte ou une
image, est zéro
Explicite
-
Une durée explicite peut être donnée
L'attribut dur
prend une valeur du type valeur d'horloge ou la valeur indefinite
<video src="zoomin.mpv" region="V-main" dur="4s"
/>
l'objet
multimédia s'arrête après 4 secondes
<video src="zoomin.mpv" region="V-main" dur="6.5s"
/>
l'objet
multimédia s'arrête au bout de 6,5 secondes
-
dans ce cas, l'audio s'arrête et la dernière
image de la vidéo reste affichée
Disposition temporelle : Durée d'un objet multimédia ( suite )
La durée d'un objet peut être étendue par répétition
du contenu.
Attribut repeat
<video src="zoomin.mpv" region="V-main"
repeat="3" />
l'objet
s'arrête après 15,9 secondes
<video
src="zoomin.mpv" region="V-main" repeat="3" dur="11s" />
l'objet
s'arrête après 11 secondes
<video
src="zoomin.mpv" region="V-main" repeat="indefinite" />
l'objet
s'arrête quand son parent s'arrête
La valeur de l'attribut repeat
est un entier ou indefinite .
Disposition temporelle : Temps de début des éléments - par
L'élément par groupe les éléments
qui sont joués en parallèle
-
les enfants d'un élément par
démarrent en même temps
<par>
<text src="leader_title.html"
region="m_title" dur="5s" />
<video src="cnn.mpv" region="V-main"
/>
<audio src="cnn.aiff" region="music"
/>
</par>

-
Le temps de début d'un fils de l'élément
par
est équal au temps de début de l'élément par
lui-même.
Disposition temporelle : Temps de début des éléments - seq
L'élément seq groupe les éléments
qui sont joués en séquence
Disposition temporelle : Imbrication des éléments par et seq
<seq>
<par>
<text
src="leader_title.html" region="m_title" dur="5s" />
<video
src="cnn.mpv" region="V-main" />
<audio
src="cnn.aiff" region="music" />
</par>
<par>
<text
src="story_title.html" region="m_title" dur="2s" />
<video
src="anchor.mpv" region="V-main" />
<audio
src="anchor.aiff" region="music" />
</par>
</seq>

Disposition temporelle : Temps de début explicite dans un élément par
Attribut begin : valeur
de retard
<par>
<text
src="leader_title.html" region="m_title" dur="5s" />
<video
src="cnn.mpv" region="V-main" begin="1.4s" />
<audio
src="cnn.aiff" region="music" />
</par>
-
La vidéo est retardée de 1,4 seconde par rapport
au début de l'élément par
-
La syntaxe de la valeur du retard est une valeur d'horloge
Disposition temporelle : Temps de début explicite dans un élément seq
Attribut begin : valeur
de retard
<seq>
<video src="logo.mpv" region="V-main"
/>
<video src="anchor.mpv" region="V-main"
begin="1.4s" />
</seq>

-
La vidéo est retardée de 1,4 seconde
par rapport à la fin de l'élément précédent
Disposition temporelle : Temps de début relatif à un autre élément
Attribut begin : valeur d'événement
<par>
<text
src="leader_title.html" region="m_title" dur="5s" />
<video
id="v1" src="cnn.mpv" region="V-main" begin="1.4s" />
<audio
src="cnn.aiff" region="music" begin="id(v1)(0.5s)" />
</par>

-
L'audio est retardée de 0,5 seconde par rapport au
début de l'élément vidéo "v1"
-
La syntaxe d'une valeur d'événement est : "id(Id-value)(begin|end|clock-value)"
Disposition temporelle : Temps de fin d'un élément multimédia
Un élément multimédia possédant une durée
implicite ou explicite et un temps de début a un temps de fin =
temps de début + durée
<video src="cnn.mpv" region="V-main" begin="4s" />

Attribut end : même syntaxe que l'attribut
begin
Un élément multimédia possédant un temps de
début explicite et un temps de fin explicite a une durée
= temps de fin - temps de début
<text src="title.html" region="m_title" begin="4s"
end="8s" />

Disposition temporelle : Temps de fin d'un élément multimédia ( II )
Un élément multimédia possédant un temps de
début explicite, une durée et un temps de fin explicite,
a un temps de fin égal au minimum entre le temps de fin explicite
et la somme temps de début + durée
<seq>
<text scr="title.html" region="m_title"
begin="4s" dur="4s" end="10s" />
<text scr="title.html" region="m_title"
begin="14s" dur="6s" end="18s" />
</seq>
Disposition temporelle : Temps de fin d'un élément multimédia ( III )
Un élément multimédia peut aussi avoir une durée
intrinsèque
<video src="cnn.mpv" region="V-main" begin="3s" dur="14s"
end="12s" />

Disposition temporelle : Temps de fin d'un élément multimédia ( IV )
-
Si le temps de fin est antérieur au temps de début
alors l'élément n'est pas joué
-
Le temps de fin d'un élément multimédia
possédant une durée indéfinie est déterminé
par le temps de fin de son parent
-
Si le parent n'a pas de temps de fin défini ( ou n'existe
pas ) alors l'élément multimédia sera joué
indéfiniment
Disposition temporelle : Temps de fin d'un élément seq
Un élément seq
se termine quand son dernier fils se termine .
Si son dernier fils a une fin indéterminée
alors l'élément seq
a une fin indéterminée
<seq>
<video src="logo.mpv" region="V-main"
/>
<video src="anchor.mpv" region="V-main"
/>
<text src="title.html" region="m_title"
dur="indefinite" />
</seq>
Disposition temporelle : Temps de fin d'un élément par - first
Attribut endsync
-
par peut se terminer quand le premier élément
multimédia se termine
<par endsync="first">
<text src="leader_title.html"
region="m_title" dur="5s" />
<video
id="v1" src="cnn.mpv" region="V-main" begin="1.4s" />
<audio
src="cnn.aiff" region="music" begin="id(v1)(0.5s)" />
</par>

Disposition temporelle : Temps de fin d'un élément par - id-ref
Attribut endsync
-
par peut se terminer quand l'élément multimédia
référencé se termine : id(Id-value)
<par endsync="id(v1)">
<text src="leader_title.html"
region="m_title" dur="5s" />
<video
id="v1" src="cnn.mpv" region="V-main" begin="1.4s" />
<audio
src="cnn.aiff" region="music" begin="id(v1)(0.5s)" />
</par>

Disposition temporelle : Temps de fin d'un élément par -last
Attribut endsync
-
par peut se terminer quand le dernier élément
multimédia se termine
<par endsync="last">
<text src="leader_title.html"
region="m_title" dur="5s" />
<video
id="v1" src="cnn.mpv" region="V-main" begin="1.4s" />
<audio
src="cnn.aiff" region="music" begin="id(v1)(0.5s)" />
</par>

Disposition temporelle : Types de synchronisation
Synchronisation matérielle
-
Vidéo retardée ; l'audio s'arrête et attend
( ou la vidéo est abandonnée )
-
utile pour de l'audio synchronisée sur les lèvres
et des flux vidéo séparés
Synchronisation logicielle
-
Vidéo retardée ; l'audio continue - utile pour
une musique de fond
-
Attention : ce comportement n'est pas spécifié
dans le standard !
Contenu alternatif
|
|
|
Contenu alternatif : Spécification
Pourquoi des contenus alternatifs ?
-
Des connexions différentes peuvent avoir des vitesses
différentes
-
Des stations de travail peuvent avoir des capacités
différentes
-
Des utilisateurs différents peuvent avoir des tâches
différentes ou des préférences différentes
sur les média
Elément switch
-
Au plus un fils de l'élément switch
est joué
-
Le premier élément multimédia acceptable
est joué ; il faut donc placer les éléments de meilleure
qualité en premier
<switch>
<audio system-bitrate="44000"
src="hi-res.aiff />
<audio system-bitrate="16000"
src="low-res.aiff />
</switch>
-
Si aucun élément n'est acceptable alors aucun
fils de l'élément switch
n'est joué
-
Un choix balai à la fin de l'élément
switch ( sans attribut de test ) peut être utilisé
Contenu alternatif : Attributs de test
Elément switch : attributs de test
-
system-bitrate=integer spécifie
la bande passante disponible sur le réseau
-
system-caption="on|off" autorise
les auteurs à fournir des sous-titres, pour les personnes malentendantes
ou qui apprennent une langue
-
system-language=list of language names
spécifie le groupe de langue désiré
-
system-overdub-or-caption="caption|overdub"
sélectionne entre le doublage et les sous-titres.Peut aussi s'utiliser
avec l'attribut system-caption
-
system-required=extension name
. Ce sera un espace de nommage XML dans les futures versions
-
system-screen-size=screen-height x screen-width
-
system-screen-depth="1|8|24|etc.." donne
la profondeur de la palette de couleurs que le player est capable
de jouer
Contenu alternatif : Attributs de test multiples
Choix sur la bande passante et la langue
<switch>
<audio system-bitrate="44000
system-language="fr" src="fr-hi-res.aiff" />
<audio system-bitrate="44000
system-language="en" src="eng-hi-res.aiff" />
<audio system-bitrate="16000
system-language="fr" src="fr-low-res.aiff" />
<audio system-bitrate="16000
system-language="en" src="eng-low-res.aiff" />
</switch>
Les éléments par, seq
et les objets multimédia peuvent aussi avoir des attributs de test
<textstream system-captions="on" src="txtstream.rtx"
/>
-
L'élément est joué ou pas, indépendamment
des autres éléments
Les liens
Les liens : Lien d'un élément à une présentation
Elément <a> : similaire à
l'élément <a> de HTML
Les liens : Lien d'un élément à un autre élément
Lien vers des fragments SMIL
-
L'élément destination dans un autre document
SMIL utilise le connecteur #
<a show="new" href="time-time.smil#XVII">
<text src="archives-dcab.html"
region="I-main" dur="indefinite" />
</a>

-
La présentation destination commence comme
si la présentation avait été avancée
rapidement jusqu'au début de l'élément désigné
par le fragment
Les liens : Lien d'un élément vers une sous-partie d'un objet multimédia
Elément anchor
L'élément anchor
autorise la spécification de sous-parties spatiales ou temporelles
d'un élément multimédia
-
Les sous-parties spatiales utilisent l'attribut coords
( identique aux cartes d'images HTML )
<video src="zoomin.mpv" region="V_main" >
<anchor id="mic" coords="40%,
70%, 55%, 100%" />
</video>

-
L'ordre des coordonnées est : left-x,
top-y, right-x, bottom-y .
-
Les sous-parties temporelles utilisent les attributs begin
et end .
<video src="zoomin.mpv" region="V_main" >
<anchor id="graph-ref" begin="4.3s"
end="6.8s" />
</video>
Les liens : Liens dans des documents inclus
Gestion des liens dans des documents inclus
-
Les players SMIL peuvent invoquer d'autres applications (
non-SMIL ) ou des plug-ins par exemple un moteur de rendu HTML
<text src="comment.html" region="C-right" />
-
Un navigateur HTML peut afficher des documents SMIL inclus
dans une page HTML
-
Un document SMIL peut contenir un élément multimédia
de type SMIL
<ref src="webnews.smi" region="S-left" />

Les liens : Les ancres à la fois source et destination d'un lien
On a besoin de href
s'il s'agit d'une source et de id
s'il s'agit d'une destination
SMIL document 1 ( HTML dans SMIL, ancre et lien définis
en SMIL )
<text src="archives-dcab.html" region="I-main"
>
<anchor href="time-time.smil#gable-3
show="new"
<coords="40%, 70%,
55%, 100%" />
</text>
SMIL document "time_time.smil" ( image en SMIL )
<img src="XVII" region="house-right" >
<anchor id"gable-3 coords="40%,
70%, 55%, 100%"/>
</img>
Annotations sémantiques
L'élément meta définit
les propriétés d'un document
-
L'attribut name
est la propriété et l'attribut content
donne la valeur
<meta name="title" content="Web News 15th June
1998" />
<meta name="base" content="http://www.univ-evry.fr"
/>
-
La liste des propriétés ( valeurs de l'attribut
name
) est ouverte
Attributs des éléments par,seq
et des objets multimédia
abstract, author, copyright, title
sont recommandés
Attributs spécifiques des objets multimédia
-
alt : contient un texte alternatif
; recommandé
-
longdesc : complémentaire
à alt, mais plus
long ; il devrait inclure une description des ancres
Attributs des éléments region
title : recommandé
Annotations sémantiques : Structure de haut niveau d'un document
Partitionnement en sections
<smil>
<head>
<meta>
....Informations générales sur le document
</meta>
<layout>
.... Définition de mise en page
</layout>
</head>
<body>
.... Objets et relations temporelles
.... Liens et objets ancres
</body>
</smil>
Annotations sémantiques : Compatibilité ascendante
L'attribut skip-content autorisera les documents
écrits dans une version ultérieure de SMIL à être
joués par des players de version antérieure
Si l'attribut skip-content est positionné à vrai ( valeur
par défaut ) alors le contenu de l'élément est ignoré
dans les players SMIL 1.0
Résumé
SMIL : Un exemple complet de description d'un objet multimédia
<video id="vid1" region="R_video"
src="rtsp://www.w3.org:Coolstuff.rm"
clip-begin="smpte=00:01:19:20"
clip-end="smpte=00:01:38:40"
begin="3s"
dur="22s"
end="21s"
alt="Video of Joe chatting to
Tim"
longdesc="Joe and Tim are in a
meeting room. Joe is on
the left ans
Tim is on the right"
title="Joe greets Tim"
system-bitrate="28800">
<anchor id="joe" begin="0s"
end="5s" coords="0%, 0%,50%, 50%" href="http://www.w3.org/" />
<anchor id="tim" begin="5s"
end="10s" coords="50%, 50%,50%, 50%" href="http://www.w3.org/Tim" />
</video>
SMIL et XML
-
Les documents SMIL sont des documents XML
-
La syntaxe de SMIL est défini par une DTD
XML
-
La syntaxe d'un certain nombre de valeurs d'attributs est
décrit en format BNF
-
SMIL a été développé pour être
conforme aux espaces de nommage XML, bien que ceux-ci ne soient pas encore
une recommendation du W3C
-
Des players SMIL dédiés seront nécessaires
tant que la disposition temporelle ne sera pas incluse dans CSS
W3C:
"SMIL est le premier langage qui rend accessible au
monde du multimédia synchronisé les bénéfices
de l'architecture du Web. Il contient tous les composants avec lesquels
les utilisateurs du Web sont familiers, comme les URLs, les mise en page
à base de CSS, les liens HTML et une syntaxe de type XML. En tant
qu'application la plus avancée, SMIL est la première recommandation
du W3C qui recommande l'usage des espaces de nommage XML pour intégrer
de nouveaux composants dans le langage SMIL, et pour ajouter des composants
SMIL à d'autres applications XML qui ont besoin de fonctionnalités
de synchronisation"
Le support de SMIL
-
Des players existent d'ores et déjà
-
Les outils de création de pages devraient apparaître
début 1999
-
Des applications test ont vu le jour
Conclusion
SMIL 1.0 est minimal !
La version 2.0 est en cours de spécification
Pointeurs utiles :