On Tue, May 18, 2010 at 9:46 PM, Silvia Pfeiffer <span dir="ltr"><<a href="mailto:silviapfeiffer1@gmail.com">silviapfeiffer1@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
To be honest, it doesn't make much sense to display the "wrong" time<br>
in a player. If a video stream starts at 10:30am and goes for 30 min,<br>
then a person joining the stream 10 min in should see a time of 10min<br>
- or better even 10:40am - which is in sync with what others see that<br>
joined at the start. It would be rather confusing if the same position<br>
in a video would be linked by one person as "at offset 10min" while<br>
another would say "at offset 0min". And since the W3C Media Fragments<br>
WG is defining temporal addressing, such diverging pointers will even<br>
end up in a URL and how should that be interpreted then?<br></blockquote><div> </div></div>Here's how I think it should work:<br>-- currentTime (and related times, such as times in TimeRanges) range from 0 to 'duration'<br>
-- media resources are allowed to have a non-zero "initial playback time". This is what currentTime should be set to on media load. We could create a new DOM attribute to expose this.<br>-- media resources are allowed to have a "real time offset". This is an optional date+time (in UTC) that corresponds to currentTime=0, exposed as a DOM attribute. Players would be encouraged to use this to display real times, when it's present.<br>
<br>This would be similar in power to what the spec already has. In your example you could either let currentTime=0 be the start of the stream that the user's loading, and use the "real time offset" to get the correct time displayed, or you could let 0 be the real "start", and set the initial playback time to match where the user joined. However, I think describing things the way I just did is simpler and avoids weirdness like the "start time" changing dynamically. It also preserves the invariant that currentTime ranges from 0 to 'duration', which I think players will come to depend on if the cases where it's not true are rare.<br>
<br>Rob<br>--<br>"He was pierced for our transgressions, he was crushed for our iniquities; the punishment that brought us peace was upon him, and by his wounds we are healed. We all, like sheep, have gone astray, each of us has turned to his own way; and the LORD has laid on him the iniquity of us all." [Isaiah 53:5-6]<br>