1 / 17

Tien TRAN-THUONG & Cécile ROISIN

An Abstract Animation Model for Integrating SMIL Basic Animations With Multimedia Document. Tien TRAN-THUONG & Cécile ROISIN. OPERA Research Project. INRIA Rhône-Alpes. Zirst - 655 avenue de l'Europe - Montbonnot - 38334 Saint Ismier Cedex - France

maris
Download Presentation

Tien TRAN-THUONG & Cécile ROISIN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Abstract Animation Model for Integrating SMIL Basic Animations With Multimedia Document Tien TRAN-THUONG & Cécile ROISIN OPERA Research Project INRIA Rhône-Alpes Zirst - 655 avenue de l'Europe - Montbonnot - 38334 Saint Ismier Cedex - France e-mail: tien.tran_thuong@inrialpes.fr; cecile.roisin@inrialpes.fr

  2. Multimedia document modeling Declarative approach for specifying multimedia document Multimedia document model: Content, Temporal, Spatial, Link, Animation Medias / Multimedia database Multimedia document specification Multimedia document

  3. Animation modeling • An animation model is defined by (f,v, a, o, t): • animator: function (f), values (v), target attribute (a); • target object (o); • timing (t). • Two approaches for creating animations • Programming  high expressive power but difficult, • Declarative  lower expressive power but easier for the author • Modeling for declarative animation definition

  4. Objectives of the animation model: • Specifying animations, • Reutilization of animation, • Simplifying maintenance of multimedia documents. • Our approach: • Abstract animation definition, • Independence between media target (o) and animation definition, • Independence with rendition context (t)

  5. Ex. 1: transitions between images O1 O2 O3 O4 O5 O6 time t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 Playing sequentially a list of images with transition animations between two consecutive images • Animation modeling (f, v, a, o, t): two animation types for the modification of the alpha color attribute v={V1= (0, 1) from transparent to visible, V2= (1, 0) from visible to transparent}; f=linear ; a=alpha; o={O1..O6}; t={t1..t12}.

  6. Specification with HyTime, MHEG and SMIL Up 1 Up 2 Up 3 Up 4 Up 5 Up 6 Down 1 Down2 Down3 Down4 Down5 Down6 • The animation specification can be specified thought the models: • HyTime: a modifier(v, f, a, o) is projected on a time t: • Upi=((“0,1”, f, a, Oi), ti); Downi=((“1,0”, f, a, Oi), ti+1) , where i=1..6 • MHEG: an action(v, f, a, t) is referenced to an object o: • Upi=((“0,1”, f, a, ti), Oi); Downi=((“1,0”, f, a, ti+1), Oi) • SMIL: a basic_animation(v, f, a, t) is included into or referenced to an object o: • Upi=((“0,1”, f, a, ti), Oi); Downi=((“1,0”, f, a, ti+1), Oi)

  7. Ex. 2: MADEUS characters motion Spline path Moving a sequence of characters on a same path • Animation modeling (f, v, a, o, t) where: v= “45,350;158,260;383,440;608,260;832,440;945,350” f=spline ; a=position; o={M,A,D,E,U,S}; t={t1..t6} • In MHEG, HyTime and SMIL, the author has to specify 6 animations for each character object: (v, f, a, Oi, ti), where i=1..6.

  8. Why actual models provide no abstract specification ? • HyTime: a modifier(v, f, a) referring to one object o is projected on a concrete time t. • MHEG: an action(v, f, a, t) defined directly on a concrete time refers to an object o. Object Object Ref. Ref. Action class Object modification … … modifier modifier action action time Projectors • for only one object and • in a concrete time time • for only one object • SMIL: a basic_animation(v, f, a, t) included into or referred to an object ohas the same problems as the action of MHEG. Object … animateMotion time animate

  9. No abstraction animation specification implies: • Redundancy, • No reutilization, • Tedious and hard editing work.

  10. Animation Definition • Abstract extension of SMIL animation model Our abstract model SMIL model ((f, v, a, t), o)  A = (f, v, a, ï) • same SMIL semantic function animations f={discrete, linear, paced, spline} and basic animations set {set, animate, animateColor,animateMotion}, • abstractionA=(f, v, a, ï) where ï is an abstract interval [0,1], • several objects can refer to the same animation: (o1, t1), (o2, t2)refers to A. • time projection: when the abstract animation(f, v, a, ï) is referred by the object (o, t)the abstract interval ïis projected on the concrete time t.

  11. Abstract Animation Reutilization • Example: the uses of the abstract animation A=(f, v, a, ï) by two object contexts (O1, t1), (O2, t2): • (O1, t1, A) • (O2, t2, A)

  12. Mapping the abstract time (ï) into several concrete times (ti) • The abstract time ï=«0,0.2,0.8,1» is mapped on two real times t1=«begin:5, dur:8» and t2=«begin:15, dur:10»

  13. Ex. 1: transitions between images • Define just two abstract animations: UpAlpha = (linear, “0,1”, alpha, “ 0,1”) DownAlpha = (linear, “1,0”, alpha, “ 0,1”) • Syntax: • <animate id=“UpAlpha” calcMode=“linear” values=“0,1” attribute=“alpha” keytime=“0,1”/> • <animate id=“DownAlpha” calcMode=“linear” values=“1,0” attribute=“alpha” keytime=“0,1”/> • Referencing O1 O2 O3 O4 O5 O6 time

  14. Ex. 2: MADEUS characters motion • Define just one abstract animation MadeusPath = (spline, “45,350;158,260; …”, position, “0;0.2;0.4;0.6;0.8;1”) • Syntax: <animateMotion id=“MadeusPath” calcMode=“spline” values=“45,350;158,260; …” keyTime=“0;0.2;0.4;0.6;0.8;1”/> • Animation referencing M A D E … … time

  15. Example 1 • the author has to defined two abstract animations: UpAlpha = (linear, “0,1”, alpha, “ 0,1”) DownAlpha = (linear, “1,0”, alpha, “ 0,1”) • Syntax: <animate id=“UpAlpha” calcMode=“linear” values=“0,1” attribute=“alpha” keytime=“0,1”/> <animate id=“DownAlpha” calcMode=“linear” values=“1,0” attribute=“alpha” keytime=“0,1”/> <img id=“O_1” …> <anchor begin=“0s” dur=“3s” animateRef=“UpAlpha”/> <anchor begin=“10s” dur=“1s” animateRef=“DownAlpha”/> </img> <img id=“O_2” …> <anchor begin=“0s” dur=“3s” animateRef=“UpAlpha”/> <anchor begin=“15s” dur=“1s” animateRef=“DownAlpha”/> </img> …

  16. Example 2 • the author has to defined just one abstract animation: MadeusPath = (spline, “45,350;158,260; …”, position, “0;0.2;0.4;0.6;0.8;1”) • Syntax: <animateMotion id=“MadeusPath” calcMode=“spline” values=“45,350;158,260; …” keyTime=“0;0.2;0.4;0.6;0.8;1”/> <text id=“M_text” … > <anchor begin=“2s” dur=“10s” animateRef=“MadeusPath”/>M</text> <text id=“A_text” … > <anchor begin=“3s” dur=“10s” animateRef=“MadeusPath”/>A</text> <text id=“D_text” … > <anchor begin=“4s” dur=“10s” animateRef=“MadeusPath”/>D</text> …

  17. See also: http://opera.inrialpes.fr/people/Tien.Tran-Thuong/Welcome.html

More Related