Per previous LGTMs on this, the feature launched in M105:
https://chromium-review.googlesource.com/c/chromium/src/+/3795560
Unfortunately, both the MSE spec and Chromium implementation for this
feature included logic which regressed some media playback sites, and the
regression was found late after the feature reached stable in M105.
The launch was reverted from 105 (and 106-108 also have had this feature
reverted explicitly back to experimental).

The regression was due to the MediaSource object's new handle attribute
being:

   1. Visible on both main/Window and on Dedicated Worker contexts (not
   just the latter), and
   2. Throwing NotSupportedError exception if read from on a context
   (main/Window, in this case) where the implementation does not support using
   a MediaSourceHandle for attaching the MediaSource object owned by that
   context.

The specific MSE spec language involved in this regression (from
https://github.com/w3c/media-source/pull/306):

"If the implementation does not support creating a handle for this
MediaSource, then throw a NotSupportedError exception and abort these
steps.NOTE Implementations MAY choose to only allow handle creation for
MediaSource objects in a DedicatedWorkerGlobalScope, as a minimum
requirement for enabling attachment of such a MediaSource object to an
HTMLMediaElement."


Uncaught by myself nor multiple reviewers (except partially by
cas...@chromium.org, who asked about precedent for throwing exceptions in
attribute getters
<https://chromium-review.googlesource.com/c/chromium/src/+/3750140/comment/201a43a2_85dfa17f/>),
there was a pre-existing behavior pattern in at least one older version of
a media playback javascript library (video.js) that enumerated all
MediaSource object attributes, including reading from them and obtaining an
unexpected exception on reading this new handle attribute on the
main/Window context.

Also uncaught by myself nor reviewers was the lack of "flag-guarding" of
this feature (it only had blink runtime enabled features, not corresponding
base::Features), so the revert in M105 stable of the previous launch
required a binary respin.

The MSE spec has been updated to replace this regressing logic
<https://github.com/w3c/media-source/pull/317>, and the corresponding
Chromium implementation update, addition of flag-guards, and relaunch to
stable (in current M108 milestone) is in code-review now
<https://chromium-review.googlesource.com/c/chromium/src/+/3910706> and is
pending further LGTMs on this thread.

Please review for relaunch. I expect I'll need 3 LGTMs to proceed with
landing the relaunch CL
<https://chromium-review.googlesource.com/c/chromium/src/+/3910706>.

Thank you,
Matt


On Mon, Aug 1, 2022 at 10:59 AM 'Joe Medley' via blink-dev <
blink-dev@chromium.org> wrote:

> Gang,
>
> NOTE: Requested desktop and Android ship milestone: 105 (The 'edit
>> estimated milestones' link from chromestatus didn't result in such ability
>> to edit, so I'm adding this request explicitly here.)
>
>
> I'm looking into this and will report back. Has anyone else noticed this
> problem?
>
> Joe
> Joe Medley | Technical Writer, Chrome DevRel | jmed...@google.com |
> 816-678-7195 <(816)%20678-7195>
> *If an API's not documented it doesn't exist.*
>
>
> On Mon, Aug 1, 2022 at 8:52 AM Mike Taylor <miketa...@chromium.org> wrote:
>
>> LGTM3
>>
>> On 8/1/22 8:05 AM, Yoav Weiss wrote:
>>
>> LGTM2
>>
>> On Fri, Jul 29, 2022 at 12:40 AM slightlyoff via Chromestatus <
>> admin+slightly...@cr-status.appspotmail.com> wrote:
>>
>>> 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+unsubscr...@chromium.org.
>>> To view this discussion on the web visit
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/000000000000eea04c05e4e53819%40google.com
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/000000000000eea04c05e4e53819%40google.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+unsubscr...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWsqYRjB%3DqCuu4UxHzEa%2B%2B2SqkDJdE8W8sUNCnS%2BwoH5w%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWsqYRjB%3DqCuu4UxHzEa%2B%2B2SqkDJdE8W8sUNCnS%2BwoH5w%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+unsubscr...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/91d78e87-3241-0719-eb2a-a7e8d21afd0b%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/91d78e87-3241-0719-eb2a-a7e8d21afd0b%40chromium.org?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+unsubscr...@chromium.org.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJUhtG8EH2E1y33qLPJr3xdp8ZT1z1T98mCQ9bJ4WeBn19BOsQ%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJUhtG8EH2E1y33qLPJr3xdp8ZT1z1T98mCQ9bJ4WeBn19BOsQ%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+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAADho6PuY-LVWX_aSrtmGgofjRMEjwy2nmWT0jECqWqyy00-Lw%40mail.gmail.com.

Reply via email to