- From: Ian Hickson <ian@hixie.ch>
- Date: Mon, 17 Sep 2012 18:53:35 +0000 (UTC)
- To: Jer Noble <jer.noble@apple.com>
- Cc: whatwg <whatwg@lists.whatwg.org>
On Tue, 28 Aug 2012, Jer Noble wrote: > On Aug 27, 2012, at 5:02 PM, Ian Hickson <ian@hixie.ch> wrote: > >> > >> With JavaScript, it's certainly possible for a page author to play() > >> or pause() a slaved media element directly, but that author could > >> just as easily remove the media element from the media group / media > >> controller. > >> > >>> [...] > >>> > >>> That only works if there's JavaScript doing the removing. The idea > >>> here is that this should all work even without any JS, just with UA > >>> UI. > >> > >> With just the UA UI, the behavior would be exactly the same [...] > > > > If you remove the element from the media controller, the media > > controller's timeline changes. > > So? In the general case (alternative audio, sign-language) the > timelines will be exactly the same. If there's an edge case where a > change in the timeline is a problem, a page author could hide the slaved > media element (e.g. "display:none" or "element.muted = true") instead. Hiding it is a whole different thing than not playing. For example, text track events would still fire. > > It'll be quite common for there to be videos that are not currently > > playing, e.g. sign-language tracks. > > I think you're making an incorrect distinction. The author may not want > the sign-language track to *display*. Pausing the video is one > mechanism which achieves that (sort of). Hiding it is another. > Removing the video from the MediaController and pausing it is a third. > > The side effects of this particular mechanism are causing a lot of > confusion. We gave a session at WWDC about the MediaController and > collected a lot of developer feedback at the labs, and the general theme > was that the API didn't make sense. Here's a good example of the kinds > of bug reports we're seeing: "MediaController play() doesn't work" > <https://bugs.webkit.org/show_bug.cgi?id=94786>. I've renamed play() to unpause() and introduced a new play() that calls play() on each slaved media element then calls unpause(). -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
Received on Monday, 17 September 2012 18:54:01 UTC