• Aucun résultat trouvé

4.2 Synchronisation des flux dans un syst` eme multim´ edia r´ eparti

4.2.4 Sp´ ecification des relations temporelles

La sp´ecification de la synchronisation s’appuie sur un mod`ele temporel permettant de caract´eriser les contenus multim´edia ainsi que le processus de leur mise en relation dans une pr´esentation : la com- position temporelle [Lay97]. Plusieurs techniques de sp´ecification de la synchronisation existent [BS96]. Nous d´ecrivons par la suite les principales. Avant d’aborder les m´ethodes de sp´ecification d’un sc´enario d’ex´ecution, nous commen¸cons par la d´efinition des entit´es de base qui le composent.

Tout ´el´ement multim´edia peut ˆetre manipul´e `a travers trois informations temporelles essentielles : son instant de d´ebut, sa dur´ee de pr´esentation, son instant de fin. L’une de ces trois informations est redondante. En effet, il est possible de calculer l’une en fonction des deux autres. Mais le choix des informations retenues fait partie du langage et donc du mod`ele, car la mise en relation des ´el´ements se fait `a partir de ces informations.

Il existe deux fa¸cons de repr´esenter le d´eroulement d’un sc´enario : `a travers les changements qui surviennent (la terminaison de la vid´eo correspond au d´emarrage de l’audio) ou au contraire en reliant globalement les activit´es entre elles (la s´equence audio est pr´esent´e pendant la s´equence vid´eo). Ceci d´ebouche sur deux types de repr´esentations :

1. Une repr´esentation fond´ee sur les instants. Dans ce cas, un ´el´ement multim´edia est d´ecrit par un instant de d´ebut et un instant de fin, comme dans Firefly [BZ93] et Maestro [Dra93].

2. Une repr´esentation fond´ee sur les intervalles. Un ´el´ement multim´edia est consid´er´e comme une entit´e temporelle de base d´ecrite par sa dur´ee comme dans OCPN [LG93] et Cmifed [Bul95]. ´

Etant donn´ee l’existence de deux modes de repr´esentation des unit´es temporelles (les instants et les intervalles), il en r´esulte deux classes de relations temporelles. Les relations temporelles fond´ees sur les instants et les relations fond´ees sur les intervalles. Dans ces deux types de relations, les sc´enarios sont repr´esent´es `a partir d’un ensemble B de relations temporelles dites primitives. Ces relations sont exclusives et permettent d’exprimer comment les unit´es temporelles d’un document (les ´el´ements) se situent les unes par rapport aux autres.

Sp´ecification `a base d’instants

Dans les relations `a base d’instants (alg`ebre d’instants not´ee PA : Point Algebra), les unit´es tempo- relles consid´er´ees dans les relations sont les instants de d´ebut et de fin des ´el´ements. ´Etant donn´es deux instants dans un sc´enario, trois relations peuvent exister entre eux. Un instant peut en pr´ec´eder un autre (<), lui succ´eder (>) ou lui ˆetre ´egal (=). L’ensemble des relations primitives de l’alg`ebre d’instant est not´e B ={<, >, =}.

L’ensemble des relations compos´ees ou disjonctives, not´e 2B, repr´esente des disjonctions des relations primitives. Puisqu’il existe 3 relations primitives, il en r´esulte 23= 8 relations compos´ees qui forment les parties de B. Les relations compos´ees `a base d’instants sont :{φ, <, ≤, =, >, ≥, =, ?} o`u : φ signifie l’absence de relations et ? repr´esente une disjonction contenant l’ensemble des relations primitives.

De fa¸con intuitive les relations primitives <, >, = sont utiles pour la composition multim´edia car elles interviennent dans la construction des sc´enarios multim´edia les plus simples. ´Etant donn´e la tol´erance vis- `

a-vis des l´eg`eres fluctuations sur l’instant de d´ebut des ´el´ements et sur leur dur´ee (domaine de validit´e), il a ´et´e d´emontr´e [LSS96] que les quatre relations d’instants {<, =, >, ?} sont les seules utiles pour la sp´ecification de sc´enarios multim´edia.

Sp´ecification `a base d’intervalles

– deux instants, correspondants au d´ebut et `a la fin ; ces instants se ram`enent au mod`ele pr´ec´edent avec la contrainte inh´erente `a la d´efinition de l’intervalle : le d´ebut est avant la fin ;

– un instant de d´ebut et une dur´ee bien que pouvant ˆetre ramen´ee `a la pr´ec´edente, cette repr´esentation apporte un plus haut niveau d’abstraction puisque la notion de dur´ee est intrins`equement relative. Dans les repr´esentations multim´edia fond´ees sur les intervalles, les unit´es temporelles de base peuvent ˆ

etre class´ees en trois cat´egories en fonction des caract´eristiques attach´ees `a leurs dur´ees :

– les intervalles discrets. Ce sont des unit´es dont la pr´esentation ne d´epend pas du temps, comme le texte ou les images fixes. En vue de leur int´egration avec d’autres donn´ees ayant une dimension temporelle, celles-ci peuvent ˆetre affect´ees d’une dur´ee de pr´esentation explicite ou implicite dans le contexte d’un sc´enario donn´e.

– les intervalles d´eterministes continus. Ils correspondent `a des donn´ees dont la pr´esentation d´epend du temps et dont la valeur de dur´ee est connue a priori. Des flots audio et vid´eo sont des exemples de telles unit´es temporelles. Dans certains cas comme la vid´eo, la dur´ee effective de pr´esentation de ces donn´ees est li´ee `a la vitesse de restitution des images qui la composent.

– les intervalles ind´eterministes (discrets ou continus). Ces intervalles se distinguent par le fait qu’ils n’ont pas de dur´ee connue a priori. Ils correspondent, par exemple, `a des flots audio ou vid´eo continus auxquels on acc`ede `a travers le r´eseau. Ce sont, en partie, ces ´el´ements qui engendrent des sc´enarios ind´eterministes.

Dans les relations `a base d’intervalles (alg`ebre d’intervalles not´ee IA : Interval Algebra), les relations possibles entre deux ´el´ements multim´edia se r´eduisent `a toutes les combinaisons de positionnement possibles de deux intervalles sur une droite orient´ee. Le mod`ele le plus g´en´eral, propos´e par J.F. Allen [All83], dresse la liste exhaustive de toutes ces relations. La liste des combinaisons possibles entre ´el´ements multim´edia comporte 13 relations consistant en six relationsde base (before, meets, overlaps, during, starts, finishes), leurs relations inverses et la relation d’´egalit´e (equal ). Ces treize relations se r´epartissent en deux classes, celle des relations de s´equentialit´e et celle des relations introduisant le parall´elisme de pr´esentation. De fa¸con analogue aux relations `a base d’instants, il existe 213= 8192 relations compos´ees. Vis-`a-vis de l’alg`ebre d’instants, chaque relation primitive `a base d’intervalles peut ˆetre repr´esent´ee `a travers plusieurs relations d’instants. N´eanmoins, on montre que seules 187 relations sont exprimables `a partir des relations `a base d’instants. Ce fait t´emoigne de la plus grande richesse des relations de IA par rapport `a celle de PA. L’ensemble de 187 relations engendr´ees par PA est appell´e l’alg`ebre d’intervalles restreinte ou RIA (Restricted Interval Algebra). En effet, l’exclusion mutuelle de deux intervalles A et B, c’est-`a-dire le fait que l’un est avant l’autre, n´ecessite une disjonction de relations sur les instants (f inA < debutB ∨ finB < debutA). Notons ´egalement que les relations d’instants jug´ees utiles pour le multim´edia dans PA engendrent uniquement 29 relations d’IA [Lay97]. Elles sont d’ailleurs souvent retenues comme une r´ef´erence pour mesurer l’expressivit´e d’un langage de synchronisation temporelle multim´edia.

L’´etude pr´esent´ee en [Lay97] place le probl`eme de la sp´ecification multim´edia comme un cas particulier appartenant `a une classe de probl`emes plus g´en´eraux appel´es CSP (Constraint Satisfaction Problem). Un CSP est d´efini par la donn´ee d’un ensemble de variables, chacune associ´ee `a un domaine de valeurs, et par la donn´ee d’un ensemble de contraintes liant ces variables. Une contrainte est g´en´eralement d´ecrite par l’ensemble des combinaisons de valeurs qui la satisfont. Une solution d’un CSP est une instantiation de ces variables qui satisfait simultan´ement toutes les contraintes d’un probl`eme. Un CSP est coh´erent si et seulement si il existe au moins une solution qui le satisfait.

La synchronisation temporelle multim´edia peut ˆetre abord´ee dans le cadre d’une classe particuli`ere des CSP d´esign´ee par TCSP (Temporal Constraints Satisfaction Problem). Dans cette classe, les variables mod´elisent des instants ou des intervalles temporels de dur´ee, et les relations leurs placements relatifs `

a travers le temps. En fait, le seul cas de TCSP qui peut ˆetre r´esolu en temps polynomial est celui d’un TCSP ne comportant qu’un intervalle par arc (le probl`eme STP : Simple Temporal Problem). Cela correspond `a la mod´elisation de chaque ´el´ement multim´edia par un seul domaine de validit´e.

Sp´ecification bas´ee sur des r´eseaux de Petri

La synchronisation peut se faire sous forme de contrˆole de flux `a l’aide de points de contrˆole `a des en- droits pr´ed´efinis. La m´ethode la plus courante consiste `a utiliser des extensions temporelles des r´eseaux de Petri. Ces extensions ajoutent des param`etres de temps aux conditions de franchissement des transitions : une dur´ee dans les places ou un instant de franchissement d’une transition `a partir d’un ´etat donn´e. Par

exemple, le mod`ele Time Stream Petri Nets (TSPN, [DS94]) permet de formaliser les contraintes de syn- chronisation inter et intra-m´edia en se basant sur un mod`ele de r´egie vid´eo. Une extension hi´erarchique du mod`ele TSPN, appel´ee Hierarchical Time Stream Petri Nets(HTSPN) a ´et´e d´evelopp´ee [SdSSW95] afin de d´ecrire, en plus de la synchronisation temporelle, la synchronisation logique pr´esente dans les application hyperm´edia. Dans ce mod`ele hi´erarchique, les liens hyperm´edia sont repr´esent´es sous forme de places composites qui seront examin´ees `a l’ex´ecution seulement si le lien est suivi. Une place composite contient un TSPN d´ecrivant l’ex´ecution de l’application apr`es le saut hyperm´edia.

Autres sp´ecifications temps r´eel De nombreuses autres techniques de sp´ecification formelle issues

des recherches en syst`emes parall`eles et/ou temps r´eel ont d’ailleurs ´et´e propos´ees [BBCB97], parmi lesquelles on peut citer les automates temporis´es, les automates d’´etats finis et les alg`ebres de processus.

Bilan

Nous venons de faire un tour d’horizon de la probl´ematique de synchronisation dans les applications multim´edia reparties, en passant par les besoins, les sp´ecifications ainsi que les m´ecanismes de restitution en cas de d´efaut. Ceci constitue une premi`ere vue sur les difficult´es sp´ecifiques aux applications mul- tim´edia interactives. Dans les applications collaboratives, la synchronisation n’est pas le seul probl`eme qui doit ˆetre pris en compte.

Le sc´enario de streaming adaptatif nous montre que les interactions des utilisateurs, traduites ici par l’apparition des nouveaux flux, n´ecessitent d’ˆetre pr´esent´ees dans un ordre coh´erent chez tous les participants. L’interactivit´e introduit ainsi une s´emantique suppl´ementaire entre les flux, diff´erente de la synchronisation ”lip sync”. Le caract`ere sp´ecial de cette relation induite sur les flux, r´eside dans le fait qu’elle se d´efinit au fur et `a mesure des interactions et ne peut pas ˆetre sp´ecifi´ee apriori. Ce niveau type de synchronisation est appel´ee synchronisation causale ou coh´erence causale.

En cons´equence, les applications multim´edia interactives r´eparties introduisent une double complexit´e de synchronisation, qui peut ˆetre vue sous deux angles diff´erents : synchronisation temporelle de type intra, inter ou de groupe et synchronisation causale pour assurer une d´elivrance coh´erente. L’int´erˆet de la causalit´e pour notre ´etude, nous am`ene dans la probl´ematique du calcul r´eparti dans les syst`emes distribu´es.