Open jyavenard opened 7 years ago
I lodged a test bug in https://github.com/w3c/web-platform-tests/issues/3726
However, I do believe that we have a problem in the MSE specs themselves.
According to the spec, we are to detach the mediasource from the media element when the element's networkState moves to NETWORK_EMPTY (ref: https://w3c.github.io/media-source/index.html#mediasource-detach)
However, following the HTML spec, we will never transition to NETWORK_EMPTY with mediasource, as the only time this can occur is
"⌛ Otherwise the media element has no assigned media provider object and has neither a src attribute nor a source element child: set the networkState to NETWORK_EMPTY, and abort these steps; the synchronous section ends." https://html.spec.whatwg.org/multipage/embedded-content.html#concept-media-load-algorithm
or "If the media data fetching process is aborted by the user".
And if an error occurs during the resource selection algorithm, then we are to run
"The dedicated media source failure steps with a list of promises promises are the following steps:
so here networkState goes to NETWORK_NO_SOURCE
So I'm puzzled on what the proper course of action should be or the wording...
This looks at least like a bugfix is needed in V2.
I lodged a test bug in https://github.com/w3c/web-platform-tests/issues/3726
However, I do believe that we have a problem in the MSE specs themselves.
According to the spec, we are to detach the mediasource from the media element when the element's networkState moves to NETWORK_EMPTY (ref: https://w3c.github.io/media-source/index.html#mediasource-detach)
However, following the HTML spec, we will never transition to NETWORK_EMPTY with mediasource, as the only time this can occur is
"⌛ Otherwise the media element has no assigned media provider object and has neither a src attribute nor a source element child: set the networkState to NETWORK_EMPTY, and abort these steps; the synchronous section ends." https://html.spec.whatwg.org/multipage/embedded-content.html#concept-media-load-algorithm
or "If the media data fetching process is aborted by the user".
And if an error occurs during the resource selection algorithm, then we are to run
"The dedicated media source failure steps with a list of promises promises are the following steps:
so here networkState goes to NETWORK_NO_SOURCE
So I'm puzzled on what the proper course of action should be or the wording...