- From: François REMY <fremycompany_pub@yahoo.fr>
- Date: Fri, 3 Aug 2012 14:50:38 +0200
- To: "Animations W3C WG" <public-fx@w3.org>
My intuition says that it should maybe be impossible to seek back and
forward in time TimedItems unless it's explicitely stated on creation that
it should be possible. This would allow an highly optimizable behavior by
default. The memory-costly behavior giving the possibility to go backward
and forward in time should be an opt-in. Developers choosing for the opt-in
would be responsible of the memory management issues.
BTW, I would remove the "timeStart" property. It's much easier to say that
the document's time source is automatically started on load, except
- if its "autoplay" property is set to false before the page load
- if its "play" method is called before the page load (on document
ready...)
If we provide both seekable and unseekable time sources to developers, I've
the feeling we should continue to import attributes from the
HTMLMediaElement interface. Interesting attributes includes:
- seekable : TimeRanges
The time ranges that the user is able to seek to, if any. Read only.
- seeking : Boolean
Indicates whether the time source is in the process of seeking to a
new position. Read only.
- autoplay : Boolean
Indicates whether to start the time source as soon as it's ready.
Defaults to true.
As far as I can envision, I can see up to four different time sources being
supported :
- RigidTimeSource implements TimeSource
initialTime
= 0 // once started with play() method
duration
= NaN // no limit
seekable
= TimeRanges[] // not seekable
autoplay
= true // auto-start by default
- animations going from active to
inactive are automatically discared
- we can get a global instance from
the document.timeSource property
- FluidTimeSouce implements TimeSource
initialTime
= 0 // once started with play() method
duration
= NaN // can be modified
seekable
= TimeRanges[<NegativeInfinity, PositiveInfinity>] // yes,
anywhere; memory pressure can force to reduce the interval
autoplay
= true // auto-start by default
- animations going from active to inactive can
be discarded in case of memory pressure.
- the use of the seekable attribute allows to
know which time ranges are still supported
for seek operations.
- it's probably possible to allow authors to
specify a preferred seekDuration.
- TimedItem implements TimeSource
- see current specification.
- performs calculations based on
parent time source and timeDrift.
- used as time source for child items;
timeDrift allows to have the parent
time source to move on while keeping
children timed items at the same time
(paused).
- HTMLMediaElement (implements TimeSource)
- see the HTML specification for the
attributes default value and behavior.
What do you think of this model?
François
Received on Friday, 3 August 2012 12:51:02 UTC