[encrypted-media] Define EME promise fulfill behavior on hardware context reset (#494)

xhwang-chromium has just created a new issue for https://github.com/w3c/encrypted-media:

== Define EME promise fulfill behavior on hardware context reset ==
Now a `MediaKeySession` can be closed by itself when hardware context is reset (see https://github.com/w3c/encrypted-media/issues/473). If there is a pending promise on the session, e.g. pending `generateRequest()`, it's unclear what the user agent should do with the promise. I can see two options:

1. Reject the promise because the user agent cannot complete the operation due to hardware context reset. But a rejected promise could trigger a JS player error, which defeats the purpose of providing the `MediaKeySessionClosedReason` for this non-failure case.

2. Resolve the promise (pretending it succeeded). Even though we didn't really finished the operation, it won't make a difference in real world because the session will be closed immediately with `hardware-context-reset` anyways. And this can help prevent unnecessary JS player error.

I propose we do option (2), and define this behavior in the EME spec.

Any thoughts or comments?

Please view or discuss this issue at https://github.com/w3c/encrypted-media/issues/494 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 16 March 2022 17:06:12 UTC