- From: Aaron Colwell <acolwell@google.com>
- Date: Thu, 12 Jul 2012 13:28:39 -0700
- To: "<public-html-media@w3.org>" <public-html-media@w3.org>
- Message-ID: <CAA0c1bAF+6kgeEFFbMYtaFCbPcM3nQiSmO2bpssC2k5xB=-OWA@mail.gmail.com>
Hi, I wanted to start a discussion about Bug 17071<https://www.w3.org/Bugs/Public/show_bug.cgi?id=17071> which talks about how to establish the presentation duration. Here is the gist of the proposal. 1. Add a duration attribute to the MediaSource object partial interface MediaSource { attribute unrestricted double duration }; 2. duration is NaN while MediaSource.readyState == "closed" 3. If duration is NaN and an initialization segment with a duration is appended, then duration becomes the value contained in the initialization segment. 4. When MediaSource.readyState == "open", duration can be set anytime by the web application with a value > 0 or positive Infinity. Using other values will be ignored and trigger an exception. 5. If duration is set to a value less than what is buffered in the MediaSource.sourceBuffers, then all data beyond the duration will be removed from each SourceBuffer. 6. HTMLMediaElement.readyState can't transition to HAVE_METADATA until duration becomes something other than NaN. I think all of the above should be pretty uncontroversial, but I have a few questions. - What should happen if a media segment is appended that starts before the duration and ends past the duration? Should the duration be updated or should the segment be truncated? - What should happen if the entire media segment is beyond the duration? - What should happen if a new duration is set and HTMLMediaElement.currentTime is beyond that? Should this act like a seek to duration? Please let me know what you think and whether I have missed any key scenarios. Thanks, Aaron
Received on Thursday, 12 July 2012 20:29:08 UTC