- From: Sjoerd Mullender <Sjoerd.Mullender@cwi.nl>
- Date: Wed, 15 Jul 1998 10:53:29 +0200
- To: jourdan <Muriel.Jourdan@inrialpes.fr>
- cc: Philipp.Hoschka@sophia.inria.fr, www-smil@w3.org
On Wed, Jul 15 1998 jourdan wrote: > The Opera project of INRIA is working on the implementation of a SMIL > import functionnality from its multimedia authoring environment, namely > Madeus. > It means that our goal is to read SMIL documents using the existing > Madeus player. > > The temporal body of a SMIl document is our main interest. > We have a first version of this import functionnality > which takes only basic tree temporal structures of seq and par with > some delay offset. > We are now working on the integration of "event-value" operand in a > begin or end attribute. We find very difficult to understand the > semantic rules with the four kinds of events (expected, > desired,implicit, and effective). > > More precisely, applying the different rules to a simple example (see > below), we get a cyclic system of equations, whereas the example seems > to be intuitively correct. > > The example: > A,B and C are three video. Their respective intrinsic durations are: > 4,6,8 > > <smil> > ... > <body> > <par endsync = "last"> > <video id= "A"> > <video id = "B" end = id(A)(End)> > <video id = "C"> > </par> > </body> > </smil> > > Intuitively, it seems to us that the execution of such an example would > give: > > t = 0 A,B and C begin to be played. > t = 4 A ends and B is interrupted > t = 8 C ends > > If we applyed the different rules, we get at the end: > > Abreviations used: > IE (resp. ID) means Implicit End (resp. implicit Duration) > EfE (resp. EfD) means Effective End (resp. Effective Duration), > DE (resp. DD) means Desired End (resp. Desired Duration). > > EfE(par node) = max(DD(A),DD(B),DD(C)) > DD(A) = 4 > DD(B) = EfE(A) > DD(C) = 8 > > EfE(A) = EfE(par node) > > There is a cycle between EfE(par node) and EfE(A). > > Could someone help us to understand where we are wrong ? The effective end of the par is player-dependent (first bullet of "Determining the effective end of an element in Section 4.2.4.2), but we know it is at least as late as the desired end of the par. We can't say anything about the effective end of the children of the par, since the effective end of an element depends on the effective end of its parent. We can say something about the desired end of the par. DE(par) = IE(par) # 4th bullet Determ. des. end IE(par) = max(DE(A),DE(B),DE(C)) # 6th bullet, 1st subbullet Determ. impl. end DE(A) = IE(A) # 4th bullet Determ. des. end IE(A) = 4 # 3rd bullet Determ. impl. end DE(B) = DE(A) # rule 4 section 4.2.4.1 (should be made clearer though) DE(C) = IE(C) # 4th bullet Determ. des. end IE(C) = 8 # 3rd bullet Determ. impl. end So DE(par) = 8 (and so EfE(par) >= 8). I did notice a bug in the specification, though. The last bullet of "Determining the implicit end of an element" uses "duration" where it should use "end". The end of the par depends on the end of its children, not on their durations (since the start of those children may be delayed). -- Sjoerd Mullender <Sjoerd.Mullender@cwi.nl> <URL:http://www.cwi.nl/~sjoerd/>
Received on Wednesday, 15 July 1998 04:53:18 UTC