Media element resource selection algorithm should "await a stable state" (post a microtask, not a plain task)
Reported by
phil...@opera.com,
Mar 9 2016
|
||||||||||||||
Issue descriptionhttps://html.spec.whatwg.org/multipage/embedded-content.html#concept-media-load-algorithm Step 4 is "await a stable state", which is equivalent to queueing a microtask to continue. This has never been implemented in WebKit/Blink, but was in Presto and at least appears to be in Gecok and Edge. Blink instead ultimately depends on HTMLMediaElement::scheduleDelayedAction which sets a timer, which is more like posting a plain task instead of a microtask. This is the likely root cause of at least these web-platform-test failures: http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html http://w3c-test.org/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html
,
Mar 11 2016
,
Mar 11 2016
I have implemented test code for microtask similar to how it is done in ImageLoader.cpp. All the above test cases are passing. Though there are some crashes in existing media tests. I will make proper changes and upload.
,
Mar 11 2016
Fantastic, I hope it works out!
,
Mar 15 2016
,
Mar 16 2016
,
Mar 21 2016
Renaming Blink>Audio to Blink>Media>Audio for better characterization
,
Mar 21 2016
Renaming Blink>Video to Blink>Media>Video for better characterization
,
Apr 15 2016
,
Aug 9 2016
,
Nov 11 2016
,
Nov 11 2016
,
Jul 5 2017
,
Sep 14 2017
,
Oct 9 2017
Most of the above test cases are failing even in Edge and Firefox. Probably we should revisit the spec again?
,
Nov 21 2017
Could be, but I'd be quite surprised if the behavior of Chrome, Edge and Firefox is actually the same, so it would be a matter of finding out what the behavior should be and who needs to change.
,
Apr 6 2018
|
||||||||||||||
►
Sign in to add a comment |
||||||||||||||
Comment 1 by phil...@opera.com
, Mar 9 2016