Intent to Ship: API for customizing HTMLMediaElement.seekable for Media Source live streams

52 views
Skip to first unread message

Matthew Wolenetz

unread,
Aug 1, 2017, 7:27:54 PM8/1/17
to blink-dev, Husain Bengali

Contact emails

wole...@chromium.org, hben...@chromium.org


Spec

https://www.w3.org/TR/media-source/

Tag review process was skipped since this feature is already included in the W3C MSE REC spec.


Summary

This API lets MediaSource apps more effectively customize the HTMLMediaElement.seekable range logic by providing (or removing) a single seekable range that is union'ed with the current buffered ranges to result in a single seekable range which fits both, when media duration is infinite.


Link to “Intent to Implement” blink-dev discussion

https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/2znjjhg7KiY


Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes


Debuggability

The live seekable range conditionally modifies the logic used to determine HTMLMediaElement’s seekable range. HTMLMediaElement.seekable is already visible in devtools console. Likewise, exercising {set,clear}LiveSeekableRange() on a MediaSource object is also visible in devtools console. Seek behavior is otherwise unmodified, with many of the related pieces visible or mutable via the devtools console.


Interoperability Risk


Firefox: W3C web-platform-test results for Firefox 51 shows it mostly passed mediasource-liveseekable.html cases [0]; local test of Firefox 54 passes all those liveseekable cases.
Edge: Positive. MSFT co-editor reviewed and approved the spec change [1]
Safari: No public signals
Web developers: Positive [2]


[0] https://w3c.github.io/test-results/media-source/all.html#test-file-38

[1] https://github.com/w3c/media-source/pull/92

[2] https://github.com/w3c/media-source/issues/5


Compatibility Risk

Low. These are new methods [3][4] that trigger behavior change [5] only when they are used and the media duration is positive infinity when seekable is queried. Web authors can condition their behavior on the presence of these new methods.


[3] void MediaSource.prototype.setLiveSeekableRange(double start, double end) https://www.w3.org/TR/media-source/#dom-mediasource-setliveseekablerange


[4] void MediaSource.prototype.clearLiveSeekableRange() https://www.w3.org/TR/media-source/#dom-mediasource-clearliveseekablerange


[5] https://www.w3.org/TR/media-source/#htmlmediaelement-extensions



Is this feature fully tested by web-platform-tests?

Yes. https://github.com/w3c/web-platform-tests/blob/master/media-source/mediasource-liveseekable.html

(Imported in blink at https://cs.chromium.org/chromium/src/third_party/WebKit/LayoutTests/external/wpt/media-source/mediasource-liveseekable.html)


OWP launch tracking bug

crbug.com/623698


Entry on the feature dashboard

https://www.chromestatus.com/features/5671401352593408


Chris Harrelson

unread,
Aug 1, 2017, 11:57:38 PM8/1/17
to Matthew Wolenetz, blink-dev, Husain Bengali
LGTM1

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAADho6OeawyCaiemMQz8KEXhoCCLobj6-NgYu0QbEsqrVsb8EQ%40mail.gmail.com.

Mounir Lamouri

unread,
Aug 4, 2017, 2:56:51 AM8/4/17
to Chris Harrelson, Matthew Wolenetz, blink-dev, Husain Bengali
This is implementing a feature already implemented by Firefox and
specified in a REC spec. SGTM :)

-- Mounir

On Tue, 1 Aug 2017, at 20:57, Chris Harrelson wrote:
> LGTM1
>
> On Tue, Aug 1, 2017 at 4:27 PM, Matthew Wolenetz <wole...@chromium.org>
> wrote:
>
> > Contact emails
> >
> > wole...@chromium.org <wole...@google.com>, hben...@chromium.org
> > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
> > ?
> >
> > Yes. https://github.com/w3c/web-platform-tests/blob/master/
> > media-source/mediasource-liveseekable.html
> >
> > (Imported in blink at https://cs.chromium.org/chromium/src/third_party/
> > WebKit/LayoutTests/external/wpt/media-source/mediasource-liveseekable.html
> > )
> >
> > OWP launch tracking bug
> >
> > crbug.com/623698
> >
> > Entry on the feature dashboard
> >
> > https://www.chromestatus.com/features/5671401352593408
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "blink-dev" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to blink-dev+...@chromium.org.
> > To view this discussion on the web visit https://groups.google.com/a/
> > chromium.org/d/msgid/blink-dev/CAADho6OeawyCaiemMQz8KEXhoCCLo
> > bj6-NgYu0QbEsqrVsb8EQ%40mail.gmail.com
> > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAADho6OeawyCaiemMQz8KEXhoCCLobj6-NgYu0QbEsqrVsb8EQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> > .
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to blink-dev+...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw_Ft%3DHZ6sQj_aB_vqtj56ZcM7nZ3Xd3%3DYssh8fF6%3D4nGQ%40mail.gmail.com.

Rick Byers

unread,
Aug 4, 2017, 4:32:25 PM8/4/17
to Mounir Lamouri, Chris Harrelson, Matthew Wolenetz, blink-dev, Husain Bengali
LGTM2


> > To view this discussion on the web visit https://groups.google.com/a/
> > chromium.org/d/msgid/blink-dev/CAADho6OeawyCaiemMQz8KEXhoCCLo
> > bj6-NgYu0QbEsqrVsb8EQ%40mail.gmail.com
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an

> To view this discussion on the web visit
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.

mk...@chromium.org

unread,
Aug 8, 2017, 7:00:48 AM8/8/17
to blink-dev, mou...@lamouri.fr, chri...@chromium.org, wole...@chromium.org, hben...@google.com
LGTM3
Reply all
Reply to author
Forward
0 new messages