Chapitre 2

Introduction aux systèmes et à l'édition multimédia

[Table des matières]

1 Introduction

Savoir manipuler de l'information multimédia est de nos jours une qualité de plus en plus recherchée. A un point tel, que le terme « multimédia » est devenu une notion courante et employée de façon très intuitive et très générale. De façon très informelle, les systèmes multimédia sont caractérisés par le traitement informatique intégré d'information exprimée dans divers média (son, image, vidéo, texte, etc. ). Les éléments clés permettant cette intégration sont la puissance et les possibilités croissantes de la nouvelle génération d'ordinateurs personnels qui apparaissent sur le marché. Ces ordinateurs se distinguent de la génération précédente par leur capacité à manipuler l'ensemble de ces média, leur stockage ainsi que leur échange sous une forme entièrement digitale. Il devient ainsi possible de restituer de l'information aussi bien sous forme audio et vidéo que textuelle et graphique à un ou plusieurs utilisateurs connectés à travers le réseau. Ces traitements sont devenus possibles grâce à la banalisation dans ces machines de configurations aussi bien matérielles (cartes vidéo, audio haute qualité et lecteurs de CD) que logicielles. La puissance de traitement ainsi obtenue devient bien souvent équivalente à celle des stations de travail.

Cette augmentation du potentiel des machines crée le besoin de nouveaux types d'applications tirant profit de ces nouvelles possibilités. Les applications de type visio-conférence permettant de retransmettre presque en temps réel l'image et la parole, à partir d'un lieu distant, en sont de très bons exemples. De plus en plus, ce phénomène s'étend vers des applications existantes comme les jeux, le courrier électronique, les systèmes d'édition de documents et les systèmes hypermédia. Les premières utilisations des systèmes multimédia ont essentiellement concerné les domaines suivants :

L'objet de ce chapitre est d'abord d'introduire les notions de base sur les systèmes multimédia avec un intérêt particulier pour le problème de la synchronisation. Cette étude couvre la nature des problèmes liés à la synchronisation des objets multimédia, les applications de cette synchronisation ainsi que les différents niveaux où elle doit être considérée. La deuxième partie est consacrée à l'édition de documents multimédia. En particulier, nous présentons la décomposition de l'architecture d'un document multimédia en structures logique, spatiale, temporelle et hypermédia. Une description des approches existantes concernant l'édition ainsi que celle des standards de documents multimédia est proposée en fin de ce chapitre.

[Table des matières]

2 Systèmes multimédia

Dans le domaine du multimédia, l'emploi du terme synchronisation fait implicitement référence au temps. Cette relation avec la dimension temporelle, qui est au centre de cette étude, est la source principale de la difficulté. Le problème a, en effet, tendance à toucher directement ou indirectement un grand nombre de disciplines en informatique (l'hypermédia, les systèmes d'exploitation, les réseaux, le domaine du temps réel, etc.). Deux problèmes supplémentaires viennent s'ajouter à ces difficultés : d'une part, le multimédia étant un domaine de recherche récent, les concepts qui s'y rapportent ne sont pas encore très mûrs, et d'autre part, les problèmes posés par la synchronisation, ainsi que leurs solutions, recouvrent en partie ceux qu'on trouve dans les autres domaines. Ce dernier aspect donne au multimédia un caractère pluri-disciplinaire souvent difficile à appréhender, mais le transforme aussi en un sujet soumis à beaucoup de controverses.

Dans cette section, nous commençons d'abord par préciser le sens que nous accordons à l'expression « système multimédia ». Ensuite, nous présentons les notions de base de la synchronisation avant de passer en revue les différents problèmes qui sont posés dans ce domaine.

[Table des matières]

2.1 Classification des systèmes multimédia

Plusieurs définitions ont été proposées dans la littérature pour définir le terme d'application multimédia ou système multimédia. Dans cette section, nous reprenons la classification proposée par Blakowski [BLA 96]. Bien qu'elle ne montre pas tous les aspects liés à la synchronisation, elle permet déjà de dégager une échelle de mesure par rapport à cette notion. Blakowski s'appuie sur trois critères qui permettent de considérer les différentes applications par rapport au qualifiant multimédia. Une fois combinés, ces critères permettent de dire si telle application est « plus » multimédia qu'une autre. Les critères sur lesquels repose cette classification et que nous détaillons par la suite sont au nombre de trois : Le critère le plus simple et le plus intuitif est bien entendu le nombre de média manipulés. Mais si on s'appuie uniquement sur ce critère, un système d'édition de documents qui intègre du texte et des graphiques peut être qualifié d'application multimédia. C'est le cas, par exemple, des applications de P.A.O (Publication Assistée par Ordinateur) qui possèdent généralement des environnements graphiques très riches. A lui seul, ce critère n'est donc pas suffisant pour caractériser une application multimédia.
Image classification.gif
Fig 0. Classification des systèmes multimédia

La nature temporelle des média manipulés par l'application est un second critère qu'il faut prendre en compte. Selon ce critère, les média sont classés en média dépendants du temps (temporisés) et de média indépendants du temps (non temporisés). Les média temporisés comme la vidéo ou l'audio sont dépendants du temps car leur restitution nécessite plusieurs actions élémentaires de présentation espacées par des quanta réguliers de temps (un quantum pour chaque image d'une séquence vidéo). Par contre, les éléments textuels correspondent à la seconde catégorie car leur présentation se traduit par une seule action de présentation (l'affichage à l'écran), cette dernière n'étant sujette à aucune contrainte par rapport au temps du monde réel. Plusieurs auteurs [ERF 93] [LIT 93] retiennent ce dernier aspect et définissent un système multimédia comme une application capable de gérer simultanément ces deux types d'éléments. Ce dernier critère même combiné au premier reste insuffisant, car si on considère une application d'édition de documents statiques (comprenant texte et images), l'adjonction d'un simple mécanisme d'annotation audio la rendrait multimédia. Intuitivement, cet exemple montre la faiblesse des deux critères à qualifier le réel niveau de difficultés pressenti pour la construction d'un système multimédia plus complexe.

Le dernier critère retenu par Blakowski tente de compléter l'insuffisance des deux critères précédents. Il concerne le niveau d'intégration des différents média. Le sens attribué au terme intégration est pris ici dans un sens large. Il traduit la capacité d'une application à rendre homogène le traitement de média de natures différentes. Ce traitement porte en général sur la modification et la mise à jour de ces données, leur stockage et leur présentation cohérente au sein de l'application.

En combinant ces trois critères, on obtient alors la définition suivante [BLA 96] : un système ou une application est qualifié de multimédia si il/elle supporte le traitement intégré de plusieurs média dont au moins un est de nature temporisée. La Fig 0 donne quelques exemples d'applications classées selon ces trois critères.

[Table des matières]

2.2 Unités de présentation

Les éléments multimédia (vidéo, audio, animation, interactions utilisateurs, images virtuelles, etc.) sont généralement composés d'une séquence d'unités élémentaires de grain plus fin. Ces unités appelées Logical Data Units (LDU) [BLA 96] ou encore unités d'information dans [SEN 96] se retrouvent à plusieurs niveaux dans une application multimédia. En particulier, les éléments multimédia temporisés sont formés par une séquence d'unités de présentation qui sont soumises à des contraintes de synchronisation. Si on prend l'exemple des éléments de type séquence vidéo, ils sont généralement composés d'une suite de scènes chacune correspondant à un passage particulier de la séquence (scène ou apparaît à l'écran telle personne ou telle information). Ces scènes peuvent à leur tour être composées de sous-scènes, elles-même composées par une succession d'images fixes.

Dans les formats standard de représentation des données multimédia comme Mpeg [LEG 91], Jpeg [WAL 91] H.261 [TUR 94], les contraintes liées au volume physique occupé par ces données est le principal aspect pris en compte. Par exemple, la succession d'images dans une séquence vidéo est exploitée afin de réduire l'information nécessaire pour reconstituer l'ensemble de la séquence : c'est le principe de la compression vidéo Mpeg [LEG 91]. Le format Mpeg tire profit des similarités entre les images d'une séquence vidéo, par prédiction et interpolation (voir Fig 1 ), afin de réduire la redondance de l'information contenue dans ces séquences. La compression crée ainsi de nouvelles dépendances entre les différentes unités de présentation liées uniquement à leur encodage. Si on considère une image particulière du format Mpeg, on retrouve encore de telles dépendances entre des blocs de pixels compressés composant l'image [WAL 91]. Celles-ci sont très importantes à considérer pour le traitement de la synchronisation dans une application multimédia, car même si à un niveau haut on peut être amené à s'intéresser plus particulièrement aux contraintes temporelles d'une succession d'images, le format de codage peut avoir une grande influence sur la synchronisation. En effet, avec le format Mpeg la présentation d'une image dépend fortement du temps lié à sa décompression, mais en plus le contenu de certaines images (images de type B ou P dans le codage) ne peut être reconstitué que si leur image de référence (image de type I dans le codage) a été préalablement traitée (voir Fig 1 ).

Image content-hierarchy.gif
Fig 1. Hiérarchies décrivant une séquence vidéo Mpeg

Ces différents grains ainsi que les dépendances de présentation et de représentation des éléments multimédia montrent que leur organisation est le plus souvent hiérarchique. En fonction de l'application multimédia visée, l'intérêt du concepteur peut porter sur un niveau d'abstraction impliquant une partie de cette hiérarchie. Cet intérêt dépend, en premier lieu, de la nature des traitements qu'il souhaite fournir à l'utilisateur et qui peuvent concerner l'une de ces deux hiérarchies :

Le premier type de hiérarchies est naturellement plus convoité par les applications multimédia comme l'édition de documents [HAR 93b], celles concernant la recherche d'information, l'indexation [WEI 95a] et le stockage, comme les bases de données multimédia [ADI 95]. L'objectif de ces applications consiste à fournir à l'utilisateur des opérations de manipulation transparentes au codage des différents éléments. Cette transparence, obtenue par une description symbolique du contenu des éléments, traduit le grand besoin de ces applications en services de désignation [LAY 93]. Les aspects liés au codage sont délégués à un niveau plus bas, dit de support [COU 92]. Notons que dans les formats les plus répandus, la hiérarchie décrivant le contenu des éléments n'est souvent pas associée à celle du codage. Il reste donc à la charge des applications d'en permettre la description, la manipulation ainsi que la mise à jour.

[Table des matières]

2.3 Notions de synchronisation multimédia

D'après la définition d'une application multimédia introduite dans la section 2.1, le traitement intégré de données multimédia ressort comme un aspect central des applications multimédia. Or avant de parler d'intégration, le traitement des données multimédia passe d'abord par la considération des média temporisés ou continus comme l'audio, la vidéo ou les images de synthèse. En effet, la manipulation de ce type d'éléments soulève de nombreux problèmes, à ce jour non résolus. Dans ce nouveau type de données, le facteur temps apparaît comme une dimension essentielle de l'information, à l'opposé des données statiques classiquement gérées par les applications d'édition (texte, images, graphiques, etc.) où cette dimension n'est pas considérée. Tout au plus, on en retrouve une forme très primitive dans les outils d'édition interactifs d'exposés comme Power point, où le temps est simplement considéré comme une succession d'événements (passage d'un transparent ou d'un paragraphe au suivant, au précédent, effet de transition, etc.).

L'activité de recherche autour de la synchronisation multimédia comporte donc deux aspects :

Apporter des réponses à ces deux aspects passe, avant tout, par une meilleure compréhension des problèmes posés par la synchronisation. Car celle-ci traite à la fois les problèmes liés aux données temporisées, à leur combinaison, ainsi qu'à leur intégration avec des données non-temporisées ou statiques comme le texte et les graphiques. Dans la littérature, on considère trois schémas de synchronisation :
Image intra-inter.gif
Fig 2. Synchronisation inter et intra-éléments
La distinction entre ces différents types de synchronisation est très importante dans les systèmes multimédia. Elle permet de comprendre la nature des relations qui existent entre les éléments et d'isoler les mécanismes adaptés pour la résolution de chacune d'entre elles. On peut déjà constater que, si le traitement de la synchronisation intra-élément peut être effectué au niveau de l'élément, le traitement des deux autres cas ne peut être effectué de la même manière.
Image lip-sync.gif
Fig 3. Synchronisation des lèvres (lip-sync)

Dans la suite, nous commençons par présenter la nature des contraintes auxquelles sont soumises les unités de présentation. Puis nous verrons dans quels cas ces différents types de contraintes sont utilisés en fonction des applications.

[Table des matières]

2.4 Nature des contraintes liées aux unités de présentation

En fonction de leur type, les unités de présentation peuvent être soumises à des contraintes de synchronisation très différentes. Pour illustrer ce fait, prenons l'exemple d'une séquence vidéo enregistrée à 25 images/seconde. Si on considère une application où l'image correspond à l'unité de présentation, chaque unité de présentation est contrainte par un délai d'affichage de 40 millisecondes. Prenons maintenant l'exemple d'un élément multimédia qui correspond à l'enregistrement d'une interaction de l'utilisateur, comme le mouvement décrit par le déplacement d'une souris au dessus d'un graphique. Si on associe à chaque nouvelle position de la souris une unité de présentation, chaque unité est contrainte par une durée variable par rapport à la précédente (temps écoulé entre deux positions successives de la souris). Ces deux exemples ont comme trait commun l'aspect prévisible des durées associées à chaque unité de présentation.

Dans certains cas, cette durée ne peut pas être connue à l'avance. C'est le cas des unités de présentation qui dépendent des interactions de l'utilisateur. Par exemple, une présentation qui comporte une séquence vidéo avec des boutons de contrôle permettant de la stopper et de la redémarrer. Dans ce genre de situation, la durée effective de la séquence vidéo ne peut être définie qu'au moment où les deux interactions (le démarrage et l'arrêt) prennent effet.

En résumé, on peut donc considérer qu'il existe deux types de contraintes liées aux unités de présentation :

Ayant présenté la nature des contraintes liées aux différentes unités de présentation intrinsèques aux éléments, nous revenons maintenant sur celles concernant deux flux d'unités de présentation couplés par des contraintes de type lip-sync. La nature de ces contraintes a fait l'objet d'études expérimentales [STE 96] qui ont permis de mesurer les seuils tolérables du décalage entre deux flux. Ces seuils sont définis par rapport à des considérations liées à la perception humaine du décalage. Le tableau de la Fig 4 montre d'importantes variations des seuils admissibles selon le mode de couplage des éléments et la nature des média considérés. Ces observations traduisent d'une part la grande dépendance qui existe entre le contenu sémantique des flux multimédia et la nature des contraintes auxquelles elles sont soumises, et d'autre part une grande richesse des contraintes temporelles.
 
Média Mode de couplage Décalage toléré 
animation corrélés +/- 120 ms
audio synchronisation des lèvres +/- 80 ms
image annotation superposée 
annotation non superposée
+/- 240 ms 
+/- 500 ms
texte annotation superposée 
annotation non superposée
+/-240 ms 
+/- 500 ms
animation corrélés +/- 80 ms
audio fortement couplés (stéréo) 
faiblement couplés (plusieurs orateurs) 
très faiblement couplés (musique de fond)
+/- 11 mus 
+/- 120 ms 
+/- 500 ms
image fortement couplés 
faiblement couplés (audio avec diapositives)
+/- 5 ms 
+/- 500 ms
texte annotations textuelles +/- 240 ms
curseur graphique commentaire associé à un élément désigné +/- 500 ms
Fig 4. Nature du couplage temporel entre les différents éléments multimédia

En conséquence, il devient nécessaire, pour une application multimédia, d'avoir un niveau de représentation où le mode de couplage entre les différents média est explicite. L'expression et la gestion de ces couplages sont regroupés dans un seul terme : la qualité de service [BLA 94].

[Table des matières]

2.5 Applications de la synchronisation

Du point de vue de son utilisation dans les applications multimédia, la synchronisation correspond à deux types de contraintes temporelles que l'on souhaite appliquer aux différents éléments. Le premier fait référence aux contraintes de temps tirées du monde réel, et est appelé synchronisation naturelle, et le deuxième vise surtout à appliquer des contraintes spécifiées par le constructeur de l'application (l'auteur). Dans ce cas, l'objectif consiste à produire des effets temporels qui ne respectent pas nécessairement les contraintes naturelles : c'est la synchronisation synthétique ou artificielle.

[Table des matières]

2.5.1 Synchronisation naturelle

Dans la synchronisation naturelle, la contrainte temporelle qui pèse sur les différentes unités de présentation est intrinsèque aux éléments multimédia considérés. Par exemple, pour les données temporisées comme l'audio et la vidéo, ce type de contraintes traduisent les conditions de reproduction des effets temporels liés à un élément multimédia lors de sa saisie (sa numérisation). Ces contraintes, souvent exprimées en terme de débit (25 images par seconde), font généralement partie intégrante de la représentation des éléments. Elles sont aussi véhiculées avec la forme codée des éléments (leur format) tout au long des différentes opérations de traitement comme la saisie, le stockage, la restitution ou la transmission à travers le réseau.

Si on considère le traitement de la synchronisation naturelle, on retrouve un schéma de type producteur/consommateur dont la configuration matérielle et/ou logicielle fait intervenir trois composants :

Un cas typique de la synchronisation naturelle se retrouve dans les applications d'audio et de vidéo conférence [TUR 94]. Dans ces applications, les flux multimédia sont saisis, transférés, puis restitués sur un site destination qui doit respecter les contraintes temporelles observées à la source. La connexion entre la source et la destination forme alors un ou plusieurs flux d'unités de présentation (un chemin de données) où la difficulté consiste à considérer le traitement de la synchronisation de bout en bout : la contrainte temporelle d'une unité de présentation se traduit par des contraintes sur le temps global accordé au traitement de l'opération de saisie, de transmission et de présentation.
Image source-sink.gif
Fig 5. Chemin de synchronisation lié à un flux multimédia

Le traitement de ce type de synchronisation a fait l'objet d'un grand nombre de travaux [DOR 95][FRE 94][TUR 94]. Les solutions proposées portent sur l'adaptation dynamique de la qualité du flux audio ou vidéo en fonction de la disponibilité des différentes ressources. Par exemple (voir Fig 5 ), le module destination peut décider de réduire la résolution graphique d'une vidéo afin de diminuer le temps CPU nécessaire au traitement du flux. Un schéma encore plus avantageux consiste à remonter cette information au niveau de la source. Celle-ci peut, en effet, appliquer l'opération de réduction de la qualité avant la transmission. Cela permet de réduire, dans le cas d'accès distribué, la bande passante nécessaire du réseau. En réalité, de nombreux traitements sur les différents flux viennent s'intercaler entre le module source et le module destination. On peut citer la compression, la décompression et l'adaptation de la qualité graphique de l'image à l'environnement de la destination qui sont autant de causes de dé-synchronisation qu'il faut surmonter. Notons que l'accès à des données multimédia stockées à distance (voir Fig 5 (3)) pose les mêmes problèmes que l'accès à des données produites en temps réel. La seule différence se situe dans les applications pouvant anticiper le chargement des données avant de les restituer à l'utilisateur. C'est le cas, par exemple, des applications de présentation de documents qui peuvent réaliser ce type de chargement en s'appuyant sur une représentation explicite des dépendances temporelles du document (connaissance du futur) [HAR 93b][LIA 96]. Il est ainsi possible, dans ces applications, d'utiliser le disque local comme cache pour offrir de meilleures garanties sur le respect des contraintes de synchronisation.

[Table des matières]

2.5.2 Synchronisation synthétique

Dans ce type de synchronisation, les contraintes temporelles correspondent à des critères de présentation imposés par le niveau applicatif. La synchronisation synthétique est une opération qui comporte plusieurs étapes. Elle consiste d'abord à regrouper un ensemble d'éléments multimédia provenant de sources différentes. Généralement, ces éléments sont produits et édités par des outils externes spécialisés comme les outils de saisie et d'édition d'audio, de vidéo et d'images. Ils sont ensuite combinés pour produire une nouvelle présentation multimédia plus complexe. Il existe deux schémas permettant la production de ces nouveaux éléments (éléments composites) : Dans la synchronisation synthétique, on retrouve une plus grande variété d'éléments multimédia. En particulier, des éléments comme les animations, les interactions avec l'utilisateur, les images virtuelles ou les effets vidéo sont couramment employés. Ces éléments n'ayant pas de contraintes temporelles intrinsèques, le constructeur de l'élément composite (l'auteur) doit leur affecter des valeurs de durée avant de pouvoir les utiliser. Les éléments multimédia comme la vidéo ou l'audio peuvent aussi faire l'objet d'une modification de leur contraintes naturelles. Par exemple, le changement de la vitesse d'une vidéo peut être utilisé pour mieux faire ressortir le contenu de l'une de ses scènes (passage au ralenti pour permettre au lecteur de mieux observer ce qui s'y passe).

Les contraintes synthétiques portent aussi sur la disposition temporelle des éléments multimédia. Un exemple typique consiste à présenter les éléments multimédia en parallèle ou en séquentiel par rapport à l'axe du temps. Cette opération, appelée composition temporelle, est en fait bien plus complexe qu'elle ne paraît à première vue. En effet, elle se heurte d'une part à la nature temporelle très diverse des éléments multimédia et d'autre part au fait que les contraintes du monde réel et les contraintes synthétiques voulues par l'auteur ne sont pas faciles à combiner.

Les traitements de la synchronisation synthétique recouvrent en partie ceux rencontrés dans le cas de la synchronisation naturelle. Ces traitements portent en particulier, sur les aspects liés à l'accès et à la restitution de données multimédia stockées localement ou sur des serveurs distants. A ces problèmes viennent s'ajouter ceux liés à la combinaison et à l'intégration de plusieurs médias. Selon les deux formes d'intégration citées auparavant, les traitements de la synchronisation peuvent être très différents. Dans le cas de l'intégration au niveau du codage, le résultat de la composition est un nouvel élément. Dans ce dernier, les contraintes sont exprimées par des délais associés à une unité de présentation regroupant des données de divers média (multiplexage de format). Cette solution, utilisée dans le format QuickTime d'Apple [APP 91], est relativement simple à mettre en oeuvre car elle ramène le problème de la synchronisation de plusieurs éléments à celui d'un élément multimédia de base. Elle souffre néanmoins de beaucoup de limitations comme le faible niveau de réutilisation des éléments et la rigidité des contraintes imposées aux unités de présentation du fait de leur regroupement en une seule entité physique. L'intégration par référence qui encourage au contraire la réutilisation est de nos jours de plus en plus utilisée. Ce dernier aspect constitue d'ailleurs l'un des points clés du succès du World Wide Web [BER 92].

[Table des matières]

2.6 Niveaux de gestion de la synchronisation

Nous avons vu dans les sections précédentes que la synchronisation multimédia se pose à plusieurs niveaux (inter, intra-média et synchronisation des lèvres) et correspond à plusieurs types d'utilisation (synchronisation naturelle et synthétique). La réalisation d'une application multimédia qui couvre tous ces aspects doit être abordée avec soin, afin de répondre de façon adaptée à chacun de ces problèmes. Il s'agit là de définir une architecture globale où chaque niveau ou module de l'application est dédié au traitement d'un problème particulier de la synchronisation.

Il existe, dans la littérature, un grand nombre de propositions pour l'organisation des traitements dans une application multimédia [LIT 93]. Dans la plupart des cas, cette organisation s'appuie sur une décomposition hiérarchique des différents traitements. Certaines propositions se distinguent par la prédominance d'un aspect particulier, comme par exemple l'orientation objet dans le modèle de Gibbs [GIB 94], l'utilisation de langages de programmation synchrones dans le modèle de Blair [BLA 94], ou encore l'abstraction des différents niveaux par des horloges hiérarchiques dans le modèle de Rothermel [ROT 96].

Dans le cadre de cette thèse, où l'objectif est la construction d'une application d'édition et de présentation de documents multimédia, nous proposons une décomposition hiérarchique en cinq niveaux. Ces niveaux correspondent à des traitements de la synchronisation de types différents :

Chaque niveau de cette hiérarchie fournit un ensemble de mécanismes à travers des interfaces adaptées. Ces interfaces permettent, à un niveau donné de l'application, de fournir les services nécessaires en s'appuyant sur celles du niveau inférieur. En particulier, la construction d'applications d'édition de documents multimédia, dont le rôle est de permettre la description et la restitution de présentation multimédia, se trouve confrontée aux problèmes posés par chacun de ces niveaux. Il est donc important de considérer une telle organisation dans les architectures de ces applications afin de faciliter leur construction.

Une des difficultés de l'organisation en niveaux tient dans l'absence de correspondance 1-1 entre un niveau de décomposition de l'application et une couche du système hôte (voir les limites imprécises représentés dans la Fig 6 ). On peut, par exemple, retrouver le problème de la spécification d'une présentation (composition) abordé par des langages de description graphique [HAR 93b], par un langage de description dédié [LIT 93], ou encore par une extension d'un langage existant sur la base des fonctions offertes par un système d'exploitation particulier [COU 93]

Image niveaux.gif
Fig 6. Les différents niveaux d'une application multimédia

Dans la suite de ce chapitre, nous abordons les problèmes liés à l'organisation d'un document multimédia (on parlera de modèle de documents) qui correspond, par rapport à la décomposition introduite ci-dessus, au niveau spécification.

[Table des matières]

3 Édition de documents multimédia

Un système d'édition de documents multimédia comporte principalement deux types de fonctions : Le type de processus visé dans les applications d'édition multimédia est similaire à l'approche dite WYSIWYG (What You See Is What You Get) dans les documents statiques où les deux phases d'édition et de présentation sont intégrées [QUI 86]. À cause de la dimension temporelle des objets multimédia, une telle approche s'apparente plus à la mise au point d'un programme puisque le comportement spatio-temporel n'est restitué que pendant sa phase de présentation (son exécution). Ici les deux phases ne sont pas confondues mais on cherche à les intégrer autant que possible dans un environnement unique pour que l'auteur puisse à tout moment vérifier le résultat de ce qu'il est en train de spécifier.

[Table des matières]

3.1 Besoins des systèmes d'édition multimédia

Pour construire un système d'édition de documents multimédia adapté à l'utilisateur, l'interface d'édition doit offrir un ensemble d'opérations permettant la création, la modification, le stockage et la présentation des documents. La qualité de ces opérations est fortement dépendante du modèle de document choisi et des mécanismes qui le mettent en oeuvre. De façon générale, un système d'édition de documents multimédia doit répondre aux exigences suivantes : Ces différentes exigences attendues d'un système d'édition multimédia proviennent d'une part du besoin de construire des applications interactives simples d'utilisation et d'autre part de permettre une représentation du document riche du point de vue sémantique et échangeable entre différentes applications multimédia. Cette représentation, qu'on appellera modèle de document multimédia, est au centre du travail de recherche mené dans l'équipe Opéra et dont les aspects liés au multimédia sont développés dans le cadre de cette thèse.

[Table des matières]

3.2 Modèles de documents multimédia

La définition d'un modèle de document multimédia est primordiale pour la conception d'un système d'édition. Le modèle doit permettre la représentation de toutes les relations qui peuvent exister entre les éléments d'un document multimédia. Ces relations peuvent porter sur la description de l'organisation logique du document, sa présentation spatiale, sa synchronisation temporelle ainsi que l'interconnexion entre ses différents éléments (hypermédia). On appellera dans la suite ces différentes relations : les relations multimédia. L'organisation logique concerne le regroupement des éléments du document en entités sémantiquement liées. Par exemple, pour un document servant de support à une présentation orale (suite de transparents), chaque transparent est généralement formé d'un titre et d'un corps, qui à son tour peut contenir d'autres éléments comme des images, de l'audio ou de la vidéo. La présentation spatiale concerne la disposition des éléments selon les différents canaux à travers le temps (audio, fenêtre d'écran, etc.). Par exemple, le titre du transparent peut apparaître 2 centimètres plus haut que le corps pendant toute la durée allouée au transparent. La synchronisation temporelle concerne la disposition des éléments du document dans le temps. Par exemple, le corps du transparent doit apparaître 2 secondes après le début du titre. La dimension hypermédia concerne la mise en place d'éléments particuliers dans le document qui permettent de naviguer entre des documents différents ou entre des parties différentes d'un même document.

La description de ces différents aspects d'un document (les relations multimédia) peut être réalisée à différents niveaux :

Les modèles de documents multimédia existants couvrent uniquement une partie de ces différents niveaux. L'approche de l'édition développée dans le projet Opéra est une approche du niveau générique qui couvre les aspects logiques, spatiaux et hypermédia d'un document. Dans la suite de cette section, nous allons présenter le modèle de document Opéra en insistant sur l'impact de l'introduction de la dimension temporelle dans ce modèle. Cette description repose donc, en partie, sur la base d'un travail existant [QUI 86][ROI 94].

[Table des matières]

3.3 Dimension logique

Dans un document multimédia, il est possible de distinguer des parties du document qui sont sémantiquement liées et qui peuvent être regroupées par le biais de relations logiques. Ce regroupement est un élément composite qui constitue une nouvelle entité dont la structure interne, tant sur l'aspect logique, spatial que temporel est spécifiée indépendamment du reste du document (voir exemple de la Fig 7 ).

De telles entités logiques peuvent être également groupées pour constituer d'autres entités logiques plus complexes. Par exemple, pour construire un document multimédia présentant une équipe de recherche, on peut commencer par une scène de bienvenue de son directeur, ensuite regrouper dans un ensemble de scènes les thèmes de recherche de l'équipe. La présentation de chaque thème étant elle-même composée par la liste des intervenants décrits par un scénario curriculum vitæ et ainsi de suite.

Image Structure.gif
Fig 7. Structure logique d'une présentation multimédia

Ce type de construction décrit des relations d'inclusion entre les éléments et définit ainsi une classe de documents. Par exemple, toutes les équipes d'un institut peuvent décrire leur activité de recherche de la même façon que dans l'exemple de la Fig 7 . Cette description générique des documents est définie par une grammaire basée sur la notion de constructeurs (agrégats, liste, choix, etc.) pour décrire le schéma de structure. Le schéma de structure correspondant à l'exemple précédant est décrit de la façon suivante :

Présentation = BEGIN
          Introduction = Générique;
          Corps = LIST OF (Thèmes_de_recherche);
          END;
Générique = BEGIN
          Musique = AUDIO;
          Message_du_directeur = Message;
          Vidéo_du_directeur = VIDÉO;
          END;
Message = LIST OF (CASE OF
          TEXT;
          AUDIO;
          END);
Thèmes_de_recherche = BEGIN
          Schéma = LIST OF (CV_intervenant);
          Problèmatique = ... ;
          END;
[Table des matières]

3.4 Dimension spatiale

Cette dimension concerne l'affectation dans le temps des composants multimédia d'un document aux ressources physiques (l'espace). Par exemple, un élément vidéo doit disposer d'un espace géométrique sur l'écran délimité par une certaine zone. De la même façon, un élément audio doit disposer d'un canal audio pour toute la durée de sa présentation. Cette opération de mise en correspondance, appelée formatage spatio-temporel, tient compte de différents paramètres du document qui peuvent dépendre aussi bien de sa structure temporelle que de sa structure logique. Cette opération peut être appliquée au niveau générique d'un document multimédia en définissant des règles de présentation spatio-temporelles. Par exemple, dans l'exemple de la Fig 8 , l'auteur peut définir une règle de présentation qui permet de libérer tous les éléments affectés à la fenêtre du document après chaque fin d'un élément thème de recherche présenté. Il est important de souligner que cette règle peut être aussi bien attachée au type thème de recherche (règles génériques) que pour une instance de ce type (règle pour un document). Les règles génériques de présentation présentent l'avantage de réduire de façon significative le nombre de spécifications requises pour la construction d'un document.
Image snap1.gif Image snap2.gif
Fig 8. Exemple de disposition spatio-temporelle (scène du générique)

Le formatage spatio-temporel généralise celui du formatage géométrique dans les éditeurs de documents statiques [ROI 94][LAM 86]. Dans ce type de documents, le formatage est restreint au positionnement géométrique (sur papier ou sur écran) d'un document à partir de sa structure logique et de définitions de règles géométriques (taille de la page, des colonnes, etc.) ainsi que des caractéristiques des différents éléments du document (taille, fontes, etc.). Dans le cas de documents multimédia, la nouveauté vient de la dimension temporelle des données qui ajoute un aspect dynamique à cette opération. En effet, les espaces géométriques et les canaux sonores requis pour la présentation des éléments multimédia sont alloués, libérés, mixés pour le cas de l'audio au fur et à mesure de la présentation du document global [OGA 92]. L'exemple de la Fig 8 montre la scène correspondant au générique de début de la présentation de l'équipe de recherche. La vidéo du directeur (en bas à gauche de la première fenêtre) ainsi qu'un graphique d'annotation de l'image qui accompagne son message sont présentés au début de la présentation. Ensuite, dès que la vidéo se termine, elle disparaît de l'écran en même temps que le graphique d'annotation de l'image.

De manière générale, à chaque élément du document on fait correspondre un intervalle temporel qui correspond à la durée de temps pendant lequel il est actif (temps d'occupation des canaux physiques dont il a besoin). Par exemple, l'affectation au canal audio pour le son, la carte de décompression et la fenêtre de présentation pour la vidéo, ou uniquement la fenêtre de présentation pour les éléments statiques (intemporels). Toutefois, cette règle n'est pas générale et ne permet pas de décrire toutes les situations. Pour décrire de façon plus complète la dynamique d'un élément multimédia dans l'espace et dans le temps, il faut dissocier quatre instants spatio-temporels clés pour chaque élément du document. Ces instants permettent de définir de manière précise les relations qui existent entre les deux dimensions spatiale et temporelle des différents éléments. Ces instants, qui sont notés, (map, start, finish, unmap), correspondent respectivement :

Ces règles s'appliquent à tous les éléments visuels qu'ils soient du texte, des graphiques ou de la vidéo. Par contre, pour les éléments sonores, les instants map et start ainsi que finish et unmap sont temporellement confondus. De la même façon que pour les éléments multimédia de base, les entités logiques possèdent aussi des instants spatio-temporels similaires. L'instant map d'une entité logique correspond, par transmission à ses fils logiques, à un ou plusieurs instants map des éléments multimédia visuels de base qu'il contient.

[Table des matières]

3.5 Dimension hypermédia

La structure logique présentée dans la section 3.3 est fondamentalement hiérarchique. Cette représentation n'est pas adaptée pour décrire l'ensemble des relations qui peuvent exister entre les éléments d'un même document ou entre des documents différents. Dans le modèle d'Opéra [QUI 92], ces liens sont décrits par des éléments particuliers du document qui permettent de relier des portions de différents documents indépendamment de leur position dans cette structure. Ces liens dits hypermédia permettent de définir des relations de type sémantique entre des documents ou entre des parties de documents, comme les renvois ou les références. Ils mettent en place un réseau de portions de documents dépassant les structures qui les englobent et constituent ainsi un support pour la navigation dans un grand espace d'informations à la manière des hypertextes ou du World Wide Web [BER 92]. Un lien est défini par une ancre de départ (un élément), une ancre d'arrivée (un autre élément) et le lien qui porte une certaine sémantique [NAN 93] (renvoi, référence, annotation, etc.). Au niveau de l'interface utilisateur, un lien nécessite d'être activé explicitement par une interaction de l'utilisateur.
Image Hyperliens.gif
Fig 9. Exemple de liens hypermédia

Les liens hypermédia dans les documents statiques trouvent aussi leur équivalent dans la dimension temporelle (voir Fig 9 ). En effet, l'analogie dans le temps des liens statiques est définie par des éléments particuliers (les liens hypermédia) du document qui permettent de relier des documents ou des portions de documents dans l'espace et dans le temps [LIE 94]. Par exemple, une partie d'un élément vidéo délimitée dans l'espace (une zone particulière de la vidéo) et dans le temps (la période de son apparition à l'écran) peut constituer un lien vers un nouveau document. L'activation du lien, comme dans les documents statiques, reste basée sur une interaction explicite de l'utilisateur. La seule nuance est que d'une part, l'activation de l'ancre de départ est restreinte au laps de temps couvert par sa présentation et que d'autre part, l'ancre d'arrivée correspond non seulement à un autre élément ou document mais aussi à une date précise de sa présentation (début, fin, etc.)[CHE 95].

[Table des matières]

3.6 Dimension temporelle

La caractéristique majeure d'un document multimédia est sa dimension temporelle. Quelle que soit leur granularité, les éléments d'un document multimédia sont reliés temporellement de sorte à définir un ordre global de présentation. Un modèle de synchronisation temporelle pour les documents multimédia doit principalement représenter ces dépendances.

La Fig 10 illustre un exemple de composition temporelle. Elle montre l'ordre temporel de la présentation de l'équipe de recherche de la .Fig 7 . Les boîtes de la Fig 10 représentent des éléments multimédia qui consistent en des images fixes (les icônes et le texte) ou des flots continus comme les images animées (vidéo du directeur, des participants et des scènes des thèmes de recherche), ou encore des flots sonores (musique du générique, voix du directeur et des intervenants). La synchronisation de ces différents éléments par le biais de relations temporelles permet de construire une structure temporelle indépendante pour chaque partie du document formant une entité logique (voir section 3.3).

Image equipe_pres.gif
Fig 10. Scénario temporel de la présentation : équipe de recherche

Quel que soit l'élément auquel il se rapporte, chaque intervalle possède dans la dimension temporelle deux instants extrêmes, le début et la fin. Dans notre modèle, on distingue trois types d'intervalles temporels en fonction de leur rôle dans la présentation du document :

Ces deux derniers types d'intervalles sont importants pour affiner la présentation d'un document multimédia. Ils se distinguent de la première catégorie d'intervalles par le fait qu'ils n'ont pas de représentation dans la structure logique du document.

La description de la structure temporelle d'un document multimédia doit également intégrer des éléments logiques ou de base aux propriétés temporelles très diverses. En effet, un document multimédia peut contenir des éléments ayant les comportements temporels suivants :

Le modèle temporel est un aspect central du modèle de documents multimédia. Il permet de définir les méthodes permettant le support de la structure temporelle du document. Il doit donc rendre compte de toutes les dépendances temporelles entre les composants de ce document. La présentation, et donc l'ordonnancement temporel du document, découlera de ces dépendances. C'est cette structure qui détermine la synchronisation des composants textuels, sonores et visuels du document.

[Table des matières]

4 Approches de l'édition multimédia

Dans cette section, nous décrivons les grandes approches de l'édition de documents multimédia. Ces approches sont présentées à travers des outils représentatifs qui permettent d'illustrer la nature des opérations d'édition offertes à l'utilisateur. Dans le choix de ces approches, nous avons retenu celles qui reflètent le mieux les grandes tendances qui se sont dégagées ces dernières années dans la construction des outils d'édition. Elles sont au nombre de quatre : La démarche suivie dans l'analyse de ces différentes approches consiste à présenter les opérations d'édition offertes à l'utilisateur et de montrer leurs avantages ainsi que leurs limitations. Nous portons dans cette analyse un intérêt particulier aux aspects liés à la description de la synchronisation du document et donc à sa dimension temporelle. Dans la classification proposée, un système sera considéré comme faisant partie d'une classe d'approches en fonction du caractère prédominant des fonctions d'édition qu'il offre. En effet, plusieurs systèmes adoptent une approche mixte pour pallier les limitations d'une approche particulière.

[Table des matières]

4.1 Édition fondée sur les timelines

Les systèmes d'édition fondés sur les timelines ou axes de temps sont les plus répandus dans les systèmes commerciaux. Ces systèmes s'appuient sur une métaphore graphique d'un axe pour représenter la dimension temporelle d'un document multimédia (le flot de données formé par la succession d'unités de présentation). Les interfaces à base de timelines (voir Fig 11 ) représentent les activités de présentation concurrentes au moyen de plusieurs axes parallèles dont chacun est réservé à un média particulier. Un axe commun (en haut de la Fig 11 ), partagé par tous les autres axes, est utilisé comme référence pour représenter le temps physique.
Image director.gif
Fig 11. Interface d'édition de Director

L'activité d'édition dans ce type de systèmes est réalisée en plaçant des icônes représentant les éléments multimédia sur l'un des axes du timeline (on parle de piste). Le placement sur une piste définit alors de façon précise la date d'occurrence de la présentation d'un élément par rapport aux début du document. Certains systèmes, comme Director [MAC 95], permettent en plus de définir des effets de transition comme l'apparition ou la disparition progressive d'un élément de l'écran ou son défilement. Ces effets de style appelés « propriétés » peuvent être attachés aux éléments après leur insertion dans le document. La granularité des unités de présentation représenté sur l'axe de temps est souvent de bas niveau. Par exemple, dans le cas de Director (voir Fig 11 ), chaque division verticale de l'axe est de l'ordre d'une image d'une séquence vidéo.

Les éditeurs à base de timelines sont bien adaptés aux présentations multimédia, en grande partie, grâce à l'interface l'utilisateur. En effet, cette interface rend bien compte et de façon intuitive du placement temporel des différents événements de présentation. Par contre, les inconvénients sont multiples et liés aux effets de bord que cette même interface engendre dans les différents traitements d'édition, à savoir :

Un autre problème concernant ce type d'éditeurs est lié à la navigation. La plupart des systèmes timeline offrent la possibilité de naviguer entre des parties de documents en introduisant des liens vers des dates explicites de la présentation (pointeur vers la minute m de la présentation). Alors que ces opérations semblent relativement intuitives, le résultat de l'interaction entre les différents éléments à un instant donné n'est pas facile à définir (problème de contexte) : si un lien est associé à la seconde s de la présentation de la figure, selon les outils, il n'est pas clair que les éléments définis à cet instant doivent être réactivés (à partir d'un instant interne de leur présentation). Les problèmes de navigation dans les timelines sont en fait dus à l'utilisation systématique de dates explicites pour localiser temporellement un élément au lieu d'exploiter une structure plus riche du document.

Plusieurs systèmes d'édition à base de timelines sont largement utilisés, dont Director [MAC 95] qui est un produit commercial, Integrator [SIO 93] qui est un prototype de recherche et MAEstro [DRA 93], produit commercial issu d'un travail de recherche.

[Table des matières]

4.2 Édition fondée sur les graphes

Dans l'approche fondée sur les graphes, le document est représenté sous la forme du diagramme de son flot de contrôle. Ce diagramme décrit l'interaction entre les éléments multimédia du document à l'exécution. Il est utilisé de deux façons : dans certains éditeurs, son utilisation se limite à un cadre informel de synchronisation souvent motivé par des besoins d'interface graphique, dans d'autres cas, cette utilisation correspond à un véritable support langage pour des modèles temporels formels plus élaborés.
Image Firefly.gif
Fig 12. Interface d'Icon Author (à gauche) et de Firefly (à droite)

L'édition de documents fondée sur les graphes permet des descriptions puissantes de la synchronisation. Il est possible, en effet, de représenter beaucoup plus de combinaisons de scénarios que dans le cas des timelines. Les graphes fournissent en plus un support plus adapté pour les opérations d'édition comme la suppression ou l'insertion d'éléments car la disposition des éléments est maintenue sous forme explicite (voir l'interface de Firefly [BUC 93] dans la Fig 12 ). Malgré ces avantages, l'édition à base de graphes souffre de plusieurs limitations :

Pour les graphes formels, ces inconvénients sont compensés par des mécanismes d'édition plus élaborés permettant, par exemple, la détection des incohérences et la résolution automatique de la synchronisation à partir de spécifications de plus haut niveau (voir Firefly [BUC 93] et Isis [KIM 95]).

[Table des matières]

4.3 Édition fondée sur la structure

Les deux types de systèmes d'édition décrits précédemment partagent un caractère commun : le document multimédia est défini en terme de primitives de synchronisation temporelles appliquées directement aux éléments multimédia. Une autre approche consiste à exploiter l'organisation logique du document pour permettre sa synchronisation temporelle. C'est l'approche adoptée dans CMIFed [HAR 93b] (CWI Multimedia Interchange Format Editor) qui constitue l'un des outils les plus complets en termes de fonctions d'édition. Le grand avantage de cette approche est la possibilité d'organiser le contenu du document en modules isolés sur lesquels on peut appliquer des primitives globales de synchronisation. Ces primitives sont la mise en parallèle ou en séquence des éléments appartenant à une même entité logique. CMIFed permet la manipulation du document à travers deux vues (voir :Fig 13 ) : une vue structure qui permet de représenter la hiérarchie d'éléments d'un document sous forme de boîtes encapsulées. Cette vue permet aussi d'avoir un aperçu de la dimension temporelle qui est détaillée dans une deuxième vue appelée la vue canaux (channel view).
Image CMIFed.gif
Fig 13. Vue structurelle (à gauche) et temporelle (à droite) de CMIFed

Le grand avantage de l'approche adoptée dans CMIFed est lié à la convivialité de son interface utilisateur. Le grand point faible reste, néanmoins, le pouvoir expressif limité offert par ses primitives de synchronisation. Pour pallier ce problème, des arcs supplémentaires de synchronisation sont rajoutés au document (voir la vue canaux).

[Table des matières]

4.4 Édition fondée sur la programmation

Dans les trois approches précédentes, des illustrations graphiques de la dimension temporelle sont utilisées au niveau de l'interface utilisateur pour permettre l'édition d'un document. Ces illustrations permettent de rendre compte des dépendances temporelles entre les différents éléments multimédia du document. En favorisant la facilité d'utilisation, ces outils pénalisent les descriptions plus fines et plus complexes de la synchronisation, puisqu'ils limitent le pouvoir expressif des scénarios. Les systèmes fondée sur la programmation comme AVC [IBM 90] et Lingo [MAC 95] sont apparus pour pallier ce problème en offrant à l'auteur d'un document la puissance d'un langage de programmation. Ils rendent ainsi possible la description d'enchaînements illimités que ce soit du point de vue temporel ou spatial. Le spectre des langages de programmation offerts couvre les langages de prototypage rapide appelés scripts jusqu'aux librairies de modules objets que l'on peut intégrer comme une extension d'une application existante.


 
Fig 14. Description d'un document au moyen de scripts (Lingo)

Les possibilités infinies offertes par les langages de script ont pour contrepartie le fait de substituer à la notion de document celle de programme, ce qui modifie totalement le style d'édition. La description d'un document se transforme en activité plus procédurale que déclarative et devient ainsi hors de portée d'un auteur non spécialisé ou inexpérimenté dans le domaine de la programmation. Avec cette approche (voir Fig 14 ), la structure du document, ses relations temporelles, se dispersent au sein de l'algorithmique des scripts. La réutilisation de parties de documents dans le contexte d'un autre document devient donc difficile et leur mise à jour encore plus compliquée.

[Table des matières]

5 Les standards

Dans cette section, nous donnons un aperçu des deux standards existants permettant la représentation des documents multimédia. Nous examinons en particulier les facilités offertes pour décrire leur synchronisation temporelle. Une synthèse de ces aspects ainsi que la nature de l'impact de ces normes sont données dans la section 6.

[Table des matières]

5.1 HyTime

HyTime est un standard international proposé pour la représentation structurée des documents multimédia et hypermédia [DER 94][HYT 92][NEW 91]. Il est basé sur une extension de SGML [GOL 90], qui est à l'origine un standard conçu pour la représentation de documents structurés statiques. HyTime reprend le principe du marquage descriptif et des DTD (Document Type Definition) pour décrire des documents hypermédia intégrant la dimension temporelle. HyTime est destiné à la description de la hiérarchie de contenu et non pas à celle du codage (format). Il fournit surtout des constructions syntaxiques permettant de décrire les différentes relations entre les éléments d'un document.

HyTime utilise une désignation par adresses pour identifier des portions d'information contenue dans les différents éléments. Il fournit aussi un support de liens pour établir des interconnexions hypermédia et finalement des spécifications de l'alignement spatial et temporel pour décrire les relations multimédia entre les éléments.

HyTime définit des formes architecturales (Architectural Forms) qui sont des éléments décrits syntaxiquement en SGML. La sémantique associée à ces formes architecturales fait partie de la norme. La construction d'une application HyTime revient à la création d'une DTD qui lui est conforme. En fonction des besoins, la DTD d'une application donnée peut utiliser un sous ensemble des formes architecturales décrites. Dans une DTD HyTime, chaque type d'éléments est associé à une forme architecturale particulière au moyen d'un attribut spécifique.

Les formes architecturales de HyTime sont groupées dans un certain nombre de modules. Chaque application HyTime peut se restreindre à l'utilisation des modules qui contiennent les formes architecturales dont elle a besoin et ignorer le reste. Il existe un module nécessaire (The Base Module) et six modules optionnels interdépendants (Measurement, Location, Address, Scheduling, Hyperlink et Rendition Module). Le module Scheduling permet de placer les éléments du document dans des espaces de coordonnées finis (FCS : Finite Coordinate Spaces). Ces FCS sont définis par un ensemble d'axes spatiaux et temporels. Le module Rendition permet de mettre en correspondance la représentation des FCS avec des unités de mesure «réelles» comme les secondes, les pixels, etc.

[Table des matières]

5.2 MHEG

Le standard MHEG [PRI 93] est issu des efforts de coopération entre l'Organisation Internationale de Standardisation (ISO) et la Commission Internationale d'Électrotechnique (International Electrotechnical Commission). MHEG est destiné à la représentation et l'encodage de la forme finale de l'information multimédia et hypermédia. Cette représentation est particulièrement conçue pour l'échange de données multimédia à l'intérieur ou entre les applications. De plus, MHEG vise une grande portabilité et une meilleure garantie de la stabilité de la représentation à travers le temps (au moins une compatibilité ascendante). Le format proposé couvre une grande partie des besoins en termes de synchronisation, de support de l'interactivité et d'échange dans des environnements distribués.

Les objets MHEG

MHEG utilise une approche orientée objet pour décrire l'aspect actif, autonome et réutilisable des données multimédia. Une description, appelée Content Objects, permet d'encapsuler les objets d'une présentation multimédia. Pour les aspects liés au codage, MHEG utilise des standards existants comme JPEG [WAL 91] et MPEG [LEG 91]. Le groupement d'objets est réalisé au moyen d'entités appelées Composite Objects. Des Action Objects sont utilisés pour représenter les traitements à effectuer sur les objets. Par exemple, l'action prepare est utilisée pour initialiser un objet, run pour démarrer sa présentation ou encore stop pour l'arrêter. Des objets liens Link Objects permettent de spécifier des relations spatiales, temporelles ou conditionnelles entres les instances d'objets MHEG. Un lien est une entité orientée qui met en relation un objet source et un ou plusieurs objets destination du lien.

Afin de supporter les besoins spécifiques d'une application, il est possible d'étendre les classes MHEG en ajoutant de nouveaux attributs aux objets, de nouvelles actions à leur appliquer, des conditions supplémentaires d'activation des liens ou encore une représentation pour de nouveaux médias. Au lieu de définir une interface de programmation (API) pour ces extensions, MHEG s'appuie uniquement sur la description du sous-ensemble qui doit être obligatoirement respecté, le reste pouvant être librement défini par les applications. Par exemple, pour les Actions Objects, les actions run et stop sont obligatoires, alors que les actions create, setvalue et getvalue sont optionnelles.

La synchronisation dans MHEG

Dans MHEG, un système de coordonnées virtuelles est utilisé pour spécifier la disposition des objets dans l'espace et dans le temps. Ce système de coordonnées s'appuie sur une unité de mesure générique du temps appelée GTU (Generic Time Unit). Lors de la présentation, les applications ont la charge de mettre en correspondance cette unité avec celle de l'horloge physique de la machine appelée PTU (Physical Time Unit). Trois axes spatiaux sont définis (latitude, longitude et altitude) et sont utilisés pour définir la disposition géométrique des objets. Le contrôle de la présentation des Content Objects est fondée sur l'échange, à l'exécution, des Action Objects entre les différents objets multimédia. Les Actions Objets peuvent être combinés pour former des listes d'actions qui permettent de décrire des actions de présentation parallèles ou séquentielles. Chaque liste est composée d'un délai initial suivi d'un ensemble d'actions de présentation. En utilisant des liens, il est possible d'obtenir un schéma de présentation entièrement basé sur les événements. En effet, des conditions d'activation quelconques peuvent être attachées à ces événements montrant ainsi la nette orientation de MHEG vers la description du flot de contrôle d'un document.

[Table des matières]

6 Synthèse générale

Une réflexion sur ce que doit être l'édition multimédia ainsi qu'un bon modèle de document reste un sujet ouvert. On retrouve d'un côté une panoplie d'outils commerciaux qui souffrent de beaucoup de limitations et sans réelle étude des problèmes de fond posés. D'un autre côté, les travaux de recherche [BUC 93][KIM 95] sont éparpillés dans plusieurs domaines ou encore limités à une étude théorique avec peu d'applications pratiques. Pour cette raison, nous avons préféré présenter d'abord dans ce chapitre la notion de document multimédia et d'outils d'édition avant de nous consacrer, dans le chapitre suivant, à une étude plus détaillée des modèles temporels sensés les améliorer.

Les standards MHEG et HyTime correspondent au niveau objet dans la décomposition de la synchronisation introduite dans la section 2.6. La synchronisation dans les deux cas est décrite dans sa forme finale [MAR 92] (documents formatés). Ces normes, de l'aveu même de leurs concepteurs, présupposent donc de l'existence d'outils d'édition plus élaborés permettant de produire, à partir de spécifications de plus haut niveau, des documents qui leur sont conformes. Ce qui démontre leur inadéquation pour l'édition.

MHEG a subi beaucoup de modifications depuis sa première version (il en existe cinq). Ces modifications portent principalement sur un allègement de syntaxe (basée sur ASN.1) qui rend lourde et très coûteuse la construction d'applications conformes à MHEG. Les concepteurs d'applications multimédia restent encore très sceptiques quand à son adoption. Les différentes révisions dont il a fait l'objet sont un signe d'instabilité incompatible avec son rôle de standard. En ce qui concerne HyTime, depuis sa parution en 1990, très peu d'applications qui l'utilisent ont été rapportées (une seule à notre connaissance, nommée HyOctane [RUT 93]). Ce fait témoigne de la grande complexité de cette norme qui limite, encore plus que MHEG, l'émergence d'un standard universel pour les document multimédia.

[Table des matières]

7 Conclusion

Dans ce chapitre, nous avons passé en revue la nature des problèmes liés à la synchronisation dans les application multimédia en général, et dans les applications d'édition de documents en particulier. De cette étude, il ressort que la construction d'un système d'édition/présentation de documents multimédia interactifs est conditionnée par : Le chapitre qui suit est dédié à l'étude de la modélisation de la structure temporelle d'un document. Les choix faits pour représenter cette structure sont déterminants pour obtenir chacun des points ci-dessus mentionnés.