Chapitre 2

Madeus, un éditeur de documents multimédia

[Table des matières]

1 Introduction

Nous avons vu dans le chapitre précédent qu'un document multimédia est caractérisé d'une part par le fait qu'il intègre des éléments de base de nature statique (texte, graphiques, tableaux, images) et dynamique (sons, vidéo, animations) et d'autre part par le fait que ces éléments suivent une certaine organisation temporelle.

Les documents électroniques considérés jusqu'à présent sous l'angle de leur dimension logique, spatiale et sémantique intègrent désormais une dimension supplémentaire, la dimension temporelle. La définition d'un modèle de documents multimédia doit donc permettre d'exprimer chacune de ces différentes dimensions. Il doit également spécifier leurs interactions, en portant une attention particulière à l'intégration de la dimension temporelle avec les autres dimensions.

Les premiers travaux menés dans le cadre du projet Opéra ont précisément porté sur cette dimension temporelle et ont aboutit à la réalisation du prototype Madeus pour l'édition et la présentation de documents multimédia .

La deuxième section de ce chapitre présente le modèle de documents multimédia défini par le projet Opéra à travers un exemple. La troisième section montre la représentation d'un document suivant ce modèle. La quatrième section présente l'architecture générale du prototype d'édition Madeus et plus spécialement la partie interface utilisateur.

[Table des matières]

2 Modèle de document Multimédia

Pour faciliter la compréhension du modèle de document multimédia défini dans le projet Opéra, nous allons le présenter à travers un exemple qui nous servira d'illustration tout au long de cette section.

On souhaite construire un document multimédia Inria-Opéra qui présente les activités de recherche du projet Opéra. Le document comporte une introduction composée d'un élément texte Titre-Présentation, d'un élément sonore Musique et de deux scènes Intro-Inria et Activité-Opéra. La scène Intro-Inria contient une vidéo (Vidéo1) qui présente le projet au sein de l'unité de recherche Inria Rhône-Alpes et un commentaire sonore (Audio1). La scène Activité-Opéra est composée de deux sous-scènes : Protos-de-Recherche qui contient trois éléments textuels (Thot, Alliance et Madeus) et Présentation-Opéra qui contient un élément audio (Audio2) ainsi qu'une vidéo (Vidéo2). Les trois textes précédents contiennent des liens externes vers d'autres documents. Trois éléments d'interaction, contenus dans l'introduction, permettent de naviguer dans le document : Bouton1 permet de revenir au début du document, Bouton2 permet d'interrompre la scène Intro-Inria et Bouton3 permet d'accéder directement à la partie Présentation-Opéra.

[Table des matières]

2.1 Organisation logique

L'organisation logique d'un document Madeus est décrite sous forme d'une hiérarchie de composants, les feuilles étant les éléments de base (texte, image, vidéo, son) du document. L'organisation logique de l'exemple Inria-Opéra est présentée dans la Fig 1 .

Image Madeus_Logique.gif

Fig 1. Structure logique du document Inria-Opéra

[Table des matières]

2.2 Organisation hypermédia

Dans les documents Madeus, il est possible de définir des liens de navigation en spécifiant de façon classique une ancre de départ, une ancre d'arrivée (intra ou extra document) et le type du lien (renvoi, référence, annotation, etc.). La désignation d'un lien inter-document s'effectue par la notion d'URL (Uniform Resource Locator) utilisée par le World Wide Web. La différence majeure par rapport aux systèmes hypertextes classiques réside dans la nature temporelle des documents. L'activation d'un lien peut ainsi provoquer soit l'interruption des activités en cours (avec ou sans retour), soit une inclusion d'une portion de scénario qui s'ajoute au scénario courant .

Dans l'exemple Inria-Opéra les trois éléments Thot, Alliance et Madeus sont des liens vers des documents externes désignés par leur URL.

[Table des matières]

2.3 Organisation spatiale

Cette dimension permet de décrire la disposition souhaitée des éléments du document sur l'écran. La disposition du document Inria-Opéra est montrée dans la Fig 2 . La configuration de l'écran sur cette figure correspond à l'instant t de la présentation (Fig 3 ). Les éléments Vidéo1, Thot, Alliance, Madeus sont encore présents à l'écran, mais ils sont figés dans l'état où ils étaient à la fin de leur exécution. Les éléments Audio2 et Vidéo2 sont exécutés.

Image
Madeus_Presentation.gif

Fig 2. Présentation graphique du document Inria-Opéra

[Table des matières]

2.4 Organisation temporelle

La principale caractéristique des documents multimédia par rapport aux documents électroniques conventionnels réside dans l'introduction d'une dimension temporelle. Les éléments du document sont reliés temporellement de manière à définir un scénario temporel (enchaînement des composants du document dans le temps). La présentation d'un document multimédia est orchestrée par son scénario temporel. Un soin particulier est donc apporté dans Madeus pour offrir à l'auteur les moyens de construire des scénarios complexes en utilisant des opérateurs temporels "intuitifs". De plus, Madeus vérifie que le scénario ne contient pas d'incohérences temporelles susceptibles de rendre impossible sa présentation.

Le scénario temporel souhaité dans l'exemple Inria-Opéra est schématisé Fig 3 . Il consiste à présenter le Titre en même temps que la Musique. Cinq secondes après le début de la Musique, la scène Intro-Inria commence. Celle-ci présente en même temps la vidéo Vidéo1 et l'audio Audio1, et peut être interrompue à tout moment par le bouton Bouton2. La terminaison de Intro-Inria rend ce bouton inactif. Après la terminaison de Intro-Inria (de façon naturelle ou par l'action du Bouton2), la scène Activité-Opéra est lancée. Les trois textes Thot, Alliance et Madeus de la sous-scène Protos-de-Recherche sont présentés progressivement avec un délai de deux secondes entre deux textes successifs. La sous-scène Présentation-Opéra démarre six secondes après la fin de Protos-de-Recherche et présente en même temps la vidéo Vidéo2 et l'audio Audio2. Pendant toute la présentation du document Inria-Opéra les deux boutons Bouton1 et Bouton3 sont activables.

Image
Madeus_Temporelle.gif

Fig 3. Exemple de scénario temporel du document Inria-Opéra

Image

[Table des matières]

3 Représentation des documents dans Madeus

Un des problèmes qui se posent actuellement pour l'édition des documents multimédia est l'absence de standard. Dans Madeus, les documents multimédia sont sauvegardés sous une forme déclarative proche de la norme SGML. L'intérêt d'une approche déclarative par rapport à une approche impérative utilisant un langage de scripts réside, entre autre, dans sa portabilité et son haut niveau d'abstraction. C'est d'ailleurs l'approche considérée par le groupe de travail SYMM du W3C pour la spécification de documents multimédia pour le Web.

[Table des matières]

3.1 Structure logique

Nous avons vu qu'un document multimédia pouvait être considéré selon ses quatre dimensions : logique, spatiale, temporelle et hypermédia. Le modèle de documents défini dans Madeus, dont la DTD simplifiée est donnée Fig 5 , permet de décrire ces quatre dimensions :

<!ELEMENT Doc - - (Princ, (Assoc)*)          >
<!ELEMENT (Princ | Assoc) - - (%Base | Comp) >
<!ELEMENT Comp - - (%Base | Comp)+           >
<!ENTITY  % Base "Texte | Image | Audio | Vidéo | Objet" >
<!ENTITY  % AttCommuns 
          "Nom       NAME  #IMPLIED
           Durée     CDATA #IMPLIED"         >
<!ATTLIST Comp 
          %AttCommuns; 
          Référence  CDATA #IMPLIED
          Inclusion  CDATA #IMPLIED          
          RelTemp    CDATA #IMPLIED          >
<!ATTLIST %Base; 
          Contenu    CDATA #IMPLIED
          %AttCommuns;
          Référence  CDATA #IMPLIED
          Inclusion  CDATA #IMPLIED          >

Fig 5. Modèle de documents Madeus

Il est à noter que dans Madeus, la généricité n'est pas prise en compte, contrairement à des systèmes d'édition comme Thot. Le marquage s'appuie sur une DTD dont la spécificité est de prendre en compte les aspects relatifs au temps : nouveaux éléments de base, durées, relations temporelles et effets dynamiques sur le style.

Le système d'édition Madeus manipule des documents décrits selon un format pivot dérivé de la spécification de cette DTD. Un extrait du format pivot de l'exemple Inria-Opéra est décrit ci-dessous :

<Doc> Nom=Inria-Opéra 
  <Princ> 
    <Texte Nom=Titre
           Contenu="Opéra" 
           Durée="..."> 
    <Comp Nom=Intro-Inria
          Rel-Temp="..."
          Rel-Spat="...">
          <Vidéo Nom=Vidéo1 
                 Durée="...">
          <Audio Nom=Audio1 
                 Durée="...">
          ...
    </Comp>
    ...
  <EPrinc>
  <Assoc>
     ...
  <EAssoc>
<EDoc> 

Fig 6. Extrait du format pivot du document Inria-Opéra

[Table des matières]

3.2 Spécification du placement spatial

La spécification du placement spatial dans Madeus s'effectue par l'intermédiaire de l'attribut de positionnement <POS> (Fig 7 ) qui définit la position spatiale absolue d'un élément de base. Les valeurs de cet attribut correspondent aux coordonnées en pixels du coin supérieur gauche de l'élément de base. Si cet attribut n'est pas spécifié, alors l'objet est positionné par défaut avec les coordonnées (0, 0).

<OBJECT> 
     <NAME> Vidéo1 
     <PCDATA> inria_opera.mpeg1
     <POS> 50  100 
     <DUR> 1.00  3.00 
<EOBJECT> 

Fig 7. Exemple d'attribut de positionnement

[Table des matières]

3.3 Spécification du placement temporel

L'approche choisie pour la description du scénario temporel dans Madeus est une approche déclarative basée sur les contraintes. L'idée sous-jacente à cette approche est que l'auteur spécifie ce qu'il souhaite obtenir comme placement temporel sans avoir à spécifier toutes les informations temporelles attachées aux éléments, comme leurs instants de début et de fin ou leur durée. Le scénario temporel d'un document est donc défini par un ensemble de relations entre les éléments d'un même élément composite. Celui de l'exemple Inria-Opéra est donné par les relations suivantes :

Document Inria-Opéra
Titre equals Musique

Musique overlaps(5) Intro-Inria

Bouton2 parmin Intro-Inria

Intro-Inria meets Activité-Opéra

Scène Intro-Inria
Vidéo1 equals Audio1
Scène Activité-Opéra
Protos-de-Recherche before(6) Présentation-Opéra
Sous-scène Proto-de-Recherche
Thot before(2) Alliance

Alliance before(2) Madeus

Sous-scène Présentation-Opéra
Vidéo2 equals Audio2

L'avantage principal de cette approche est qu'elle permet de tenir compte de la flexibilité des objets, c'est à dire, de leur capacité à être présentés avec des durées variables Dans notre exemple, la vitesse de présentation des vidéo peut être modulée afin de satisfaire le scénario temporel. Une conséquence de ce choix est qu'un scénario temporel a plusieurs réalisations possibles qui tiennent compte de la durée et de la flexibilité de chacun des objets. Ainsi lorsque l'auteur spécifie Video1 equals Audio1, il ne précise aucune valeur pour la durée des éléments Video1 et Audio1. C'est le système qui, lors de la phase de présentation, effectuera le placement temporel global en fonction des relations entre les objets. Il peut apparaître alors un problème de cohérence du scénario temporel qui caractérise le fait qu'à tout moment de la présentation il doit exister au moins une solution de placement .

Les éléments d'un document Madeus sont représentés sous forme d'intervalle. Les relations exprimées dans le scénario temporel s'inspirent de celles décrites dans le modèle d'Allen (Fig 8 ). Dans ce modèle, Allen définit les positions relatives que peuvent avoir deux intervalles placés sur un axe temporel, comme par exemple A equals B (les intervalles A et B commencent et finissent en même temps) ou A before B (l'intervalle A précède l'intervalle B). Ces relations sont au nombre de treize, sept sont présentées dans le tableau de la Fig 8 , les six autres s'obtiennent en prenant les relations symétriques (la relation equals étant son propre symétrique). La dernière colonne de ce tableau représente l'équivalence de ces relations exprimées sur des intervalles en relations exprimées sur des instants où A-et A+représentent respectivement les instants de début et de fin de l'intervalle A.

En plus de ces relations, Madeus utilise deux opérateurs supplémentaires, parmin et parmaster, pour spécifier des relations de causalité entre les intervalles . Dans ces relations, deux intervalles commencent en même temps, A parmin B spécifie que le plus court interrompt le plus long, A parmaster B spécifie que la fin de A, désigné comme le maître de la relation, provoque la fin de B si et seulement si B n'est pas encore terminé.

Image
allen_relations.gif

Fig 8. Les relations temporelles d'Allen

[Table des matières]

3.4 Synthèse

Suivant ce modèle, un document Madeus est décrit sous forme d'une spécification d'éléments de base, dont l'organisation spatiale et le contenu sont spécifiés par des attributs et d'éléments composites auxquels sont attachées des relations temporelles.

Peu de modèles de documents multimédia s'appuient sur une décomposition structurale comme celle décrite ici. Dans ISIS , il est possible d'exprimer des relations entre objets, mais il n'y a pas de possibilité de structurer le document. Dans CMIFed , le découpage hiérarchique est défini par l'application d'un opérateur temporel à une suite d'éléments, ce qui limite le pouvoir de composition des éléments.

[Table des matières]

4 Architecture générale du système Madeus

Le système Madeus est composé de quatre parties principales qui interagissent tout au long de la session d'édition : l'interface utilisateur, le système d'édition, le gestionnaire temporel et le système de présentation (Fig 9 ).

L'interface utilisateur regroupe les moyens graphiques offerts à l'utilisateur comme les boutons, les formulaires et les palettes pour réaliser les opérations d'édition et de présentation.

Le système d'édition regroupe un ensemble de fonctions permettant de construire ou de modifier de façon interactive un document multimédia par la définition de relations temporelles et de liens hypermédia. Il permet aussi le chargement en mémoire d'un document et sa sauvegarde en fin de session d'édition.

Le gestionnaire temporel prend en charge toute la gestion des opérations d'édition et de présentation qui concernent la dimension temporelle du document.

Le système de présentation restitue le document à l'utilisateur en assurant l'ordonnancement de ses éléments, la gestion des ressources et la prise en compte de l'environnement d'exécution (interactions de l'utilisateur, indéterminisme des durées, etc.).

Image
Madeus_Architecture.gif

Fig 9. Architecture générale du système Madeus

Lors de son chargement, le document est pris en charge par le système d'édition qui en produit une forme interne. Cette représentation, appelée arbre abstrait, rend compte de l'organisation logique du document en termes d'éléments composites et d'éléments de base. Chaque noeud composite de cet arbre est décoré par la liste des relations temporelles définies entre ses fils. Le gestionnaire temporel intervient à chaque opération qui modifie la structure temporelle du document. Il maintient une représentation du document sous forme de graphes de contraintes (un graphe de contraintes est associé à chaque élément composite) exploitables dans leur forme finale par le système de présentation. Le système de présentation assure la fonction d'exécution du document sur une structure interne appelée graphe d'exécution, dérivée des graphes de contraintes.

La présentation de Madeus qui est faite ici ne se veut pas exhaustive et certains points comme le système de présentation ou le gestionnaire temporel par exemple ne sont pas détaillés par la suite. Nous avons surtout voulu donner une vue générale de Madeus suffisante pour comprendre les problèmes particuliers que nous avons cherché à résoudre dans ce mémoire. Des descriptions plus complètes sont disponibles dans , ou .

[Table des matières]

4.1 Système d'édition

Comme pour les documents conventionnels, l'édition d'un document multimédia s'effectue en deux phases :

La nature dynamique des éléments manipulés ainsi que la définition de leur ordonnancement temporel empêche la fusion de ces deux phases. Le principe du wysiwygnote1 fort utile lors de l'édition d'un document conventionnel ne peut donc s'appliquer complètement à l'édition de documents multimédia. Néanmoins, Madeus permet de s'en rapprocher grâce à la possibilité d'enchaîner de façon directe ces deux phases. Ainsi, l'auteur peut modifier son document pendant la phase de présentation. Il stoppe la présentation, apporte les modifications à son document puis sauve la nouvelle configuration qui sera celle prise en compte dans la prochaine phase de présentation.

Les différentes fonctions d'édition et de présentation sont accessibles de manière interactive à travers l'interface utilisateur de Madeus.

[Table des matières]

4.2 Interface utilisateur de Madeus

L'interface de Madeus consiste en une fenêtre principale et en plusieurs fenêtres facultatives.

[Table des matières]

4.2.1 Vue principale

La fenêtre principale est composée d'un ensemble d'éléments graphiques permettant à l'utilisateur d'appeler les fonctions du système d'édition. Elle est divisée en sept parties (Fig 10 ) :

  1. Une barre de menus permettant de définir les attributs des éléments du document, par exemple leur durée ou la fonte des caractères.
  2. Une barre de boutons permettant de charger un document, de lancer sa présentation ou de le sauvegarder.
  3. Une zone pour contrôler la présentation audio du document. Elle est composée de deux boutons de réglage, le premier pour le volume global le second pour la balance, et d'une liste de sorties possibles : haut-parleur, casque, sortie standard.
  4. Une zone de saisie du nom ou de l'adresse d'un document permettant son chargement à partir d'un fichier local ou d'un serveur distant (HTTP). La syntaxe des noms de fichiers utilisée est identique à celle employée dans le Web pour les URL.
  5. Une zone d'édition/présentation et d'interaction qui est la zone principale de restitution graphique du document.
  6. Un panneau de contrôle de la progression temporelle de la présentation d'un document. Ce panneau contient un ensemble de boutons correspondant aux opérations de navigation telles que la lecture avant ou arrière, l'avance ou le retour rapide, la pause ou le redémarrage du document en cours de présentation.
  7. Une zone de messages utilisée par Madeus pour fournir des indications à l'utilisateur comme le compte-rendu d'opérations.
Image
Madeus_Interface.gif

Fig 10. Interface utilisateur de Madeus

L'auteur peut agir directement sur cette fenêtre pour effectuer des opérations d'édition et des actions de présentation. Par exemple, il peut modifier la position des éléments en les déplaçant à la souris. S'il sauvegarde le document, la nouvelle configuration est reportée dans le format pivot et prise en compte lors d'une prochaine phase de présentation. Il peut également sélectionner des éléments pour les composer temporellement (la définition de nouveaux éléments par l'interface n'est pas encore disponible).

Lors de la phase de présentation, l'utilisateur perçoit à travers cette fenêtre l'évolution de la présentation de son document et peut interagir directement au moyen de la souris. Cette interaction permet l'activation d'éléments comme les boutons, les références ou tout autre élément susceptible de réagir à ce type de manipulation. L'auteur peut également contrôler la progression temporelle de son document, agir sur ses paramètres de sortie comme la taille de la fenêtre, la partie visible à l'écran (par l'intermédiaire de barres de défilement), ou bien encore contrôler le volume audio global de la présentation.

[Table des matières]

4.2.2 Vue textuelle des documents

A côté de cette fenêtre principale, l'auteur peut ouvrir plusieurs autres fenêtres. La première contient un éditeur qui présente le document courant sous son format textuel (Fig 11 ). L'auteur peut ainsi "suivre" son document à l'écran. Il bénéficie en plus des fonctions habituelles d'un éditeur lui permettant de modifier et sauvegarder son document.

Image Madeus_Source.gif

Fig 11. Editeur textuel du document "source"

[Table des matières]

4.2.3 Opérateurs temporels

Une seconde fenêtre contient la palette des opérateurs temporels disponibles (Fig 12 ). Elle autorise l'auteur à placer des relations temporelles entre les éléments de manière interactive. Les différentes relations temporelles accessibles par cette palette sont décrites dans le paragraphe concernant l'approche temporelle prise par Madeus.

Image
Madeus_OperatorsT.gif

Fig 12. Palette d'opérateurs temporels

[Table des matières]

4.2.4 Vue graphique du scénario temporel

Une troisième fenêtre permet à l'auteur d'avoir une vue graphique de son scénario temporel (Fig 13 ). Dans cette vue, les éléments sont représentés par des rectangles dont la longueur est proportionnelle à leur durée effective. Les rectangles sont placés sur des lignes horizontales qui représentent des axes temporels. Les relations temporelles spécifiées par l'auteur génèrent trois types d'objets :

La représentation explicite des éléments, des relations et des délais introduits par ces relations permet une interprétation directe du scénario temporel du document sans avoir recours à la vue textuelle.

A terme, cette vue graphique doit permettre à l'auteur de modifier directement le scénario temporel de son document par le déplacement des éléments qui y sont représentés. Une description plus précise des travaux en cours et des problèmes générés par ce principe est donnée dans .

Image
Madeus_Scenario.gif

Fig 13. Visualisation/édition du scénario temporel

[Table des matières]

5 Conclusion

Dans cette section, nous avons présenté les dimensions logique, temporelle, spatiale et sémantique du modèle de documents multimédia défini dans le projet Opéra, ainsi que Madeus, un prototype issu des premiers travaux du projet dans le domaine. Dans la suite de ce mémoire, nous nous intéresserons principalement à la dimension spatiale de ces documents et à son intégration dans Madeus.

La représentation graphique des éléments dans Madeus s'inspire de la notion de boîtes décrite au paragraphe précédent. Pour le moment, seuls les éléments de base du document, à l'exception des éléments de type audio, ont une représentation graphique. Le formatage spatial dans Madeus se limite au placement absolu des éléments de base sur l'écran. Pour cela, l'auteur renseigne, pour chaque élément de base, l'attribut de positionnement qui spécifie l'emplacement du coin supérieur gauche de l'élément.

La version actuelle du placement spatial dans Madeus souffre de plusieurs limitations dont la plus importante est qu'elle ne permet pas d'exprimer un placement relatif entre les éléments. Par exemple, l'auteur d'un document peut vouloir spécifier qu'une image est centrée par rapport à une légende ou que toutes les vidéo qui défilent dans une scène sont placées au même endroit. Pour cela, il doit positionner les éléments dans la configuration souhaitée et sauvegarder son document pour stocker les nouvelles valeurs des attributs de positionnement. Mais cette méthode ne spécifie pas les relations que l'auteur veut établir entre les éléments et de plus, ces derniers ne sont pas solidaires dans leurs déplacements.

Une autre limitation du placement spatial dans Madeus réside dans le fait que les éléments sont placés de façon absolu par rapport au document global. Il n'exploite pas la structure logique du document pour placer par exemple les éléments relativement à leur élément englobant.

Dans le prochain chapitre, nous allons étudier les spécifications du formatage spatial que nous voulons mettre en oeuvre dans Madeus.

Notes :

(1)

What You See Is What You Get. Selon ce principe, l'auteur peut agir en temps réel sur une forme directement lisible du document et voir immédiatement comment le système interprète chaque commande.