LGTM3 - it's nice to see cross-vendor support for this.
On 3/28/25 5:35 AM, TAMURA, Kent wrote:
LGTM2.
On Thu, Mar 27, 2025 at 12:37 AM Chris Harrelson
<chris...@chromium.org> wrote:
LGTM1
On Tue, Mar 25, 2025 at 1:57 PM Chromestatus
<ad...@cr-status.appspotmail.com> wrote:
Contact emails
gabrielbr...@microsoft.com, stev...@microsoft.com
Explainer
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/AudioContextInterruptedState/explainer.md
Specification
https://webaudio.github.io/web-audio-api/#dom-audiocontextstate-interrupted
Summary
The current Web Audio API lacks a mechanism for the User Agent
(UA) to interrupt playback for scenarios such as exclusive
audio access (VoIP) or when a laptop lid is closed. To address
this, we propose adding an "interrupted" state to
AudioContextState. This new state would allow the UA to pause
playback in these scenarios and enable web applications to
respond appropriately.
Blink component
Blink>WebAudio
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EWebAudio%22>
TAG review
https://github.com/w3ctag/design-reviews/issues/1069
TAG review status
Pending
Risks
Interoperability and Compatibility
When AudioContext.resume() is called for an AudioContext in
the "closed" state, the returned promise is rejected. With
this proposal, the same behavior will also happen when
AudioContext.resume() is called while the AudioContext
"interrupted". In this case, a web page that is not aware of
the existence of the "interrupted" state might imply that the
AudioContext has been closed. In this situation, application
shouldn't rely solely on the returned promise resolution
outcome and also check the AudioContext state.
/Gecko/: Positive
(https://github.com/mozilla/standards-positions/issues/1083)
Mozilla helped review and merge this feature into the Web
Audio specification
/WebKit/: Positive
(https://github.com/WebKit/standards-positions/issues/410)
Safari is supportive and already has a prototype implemented
to support the Audio Session API.
/Web developers/: Positive
(https://github.com/whatwg/html/issues/10208) Even though this
feature has not been explicitly asked by web developers, it is
required to make other in-development browser APIs to work
properly with Web Audio - e.g.
media-playback-while-not-visible permission policy and the
Audio Session API.
/Other signals/:
WebView application risks
Does this intent deprecate or change behavior of existing
APIs, such that it has potentially high risk for Android
WebView-based applications?
Debuggability
None
Will this feature be supported on all six Blink
platforms (Windows, Mac, Linux, ChromeOS, Android, and
Android WebView)?
Yes
Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
No
This feature cannot be tested by itself because it cannot be
used directly by web applications. An AudioContext should only
transition to the "interrupted" state at the user agent's
discretion - i.e. there is no public web API to interrupt the
AudioContext. However, other Web APIs' specifications will
depend on the "interrupted" state and can have web tests that
expect the AudioContext to be interrupted in some situations:
For example: - https://www.w3.org/TR/audio-session/ -
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md
Flag name on about://flags
None
Finch feature name
AudioContextInterruptedState
Requires code in //chrome?
False
Tracking bug
https://issues.chromium.org/issues/374805121
Estimated milestones
Shipping on desktop 136
Shipping on Android 136
Shipping on WebView 136
Anticipated spec changes
Open questions about a feature may be a source of future web
compat or interop issues. Please list open issues (e.g. links
to known github issues in the project for the feature
specification) whose resolution may introduce web
compat/interop risk (e.g., changing to naming or structure of
the API in a non-backward-compatible way).
This feature has been added to the Web Audio spec:
https://webaudio.github.io/web-audio-api/#dom-audiocontextstate-interrupted
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5172068166139904?gate=5204675557851136
Links to previous Intent discussions
Intent to Prototype:
https://groups.google.com/a/chromium.org/g/blink-dev/c/GgSvU1BZZRU
This intent message was generated by Chrome Platform Status
<https://chromestatus.com>.
--
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 visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/67e318b0.170a0220.e1a1e.0863.GAE%40google.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/67e318b0.170a0220.e1a1e.0863.GAE%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 visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-LK%3DSkLwrqz%2BU2d6X0WFX0-eusrMr-WwtD9O4QjLedMw%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-LK%3DSkLwrqz%2BU2d6X0WFX0-eusrMr-WwtD9O4QjLedMw%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
TAMURA Kent
Software Engineer, Google
--
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 visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGH7WqF73Z%3DmCvY4%3DvDbUjR_6GHmR4TYUKZdVw9EWRxhLXbG7A%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGH7WqF73Z%3DmCvY4%3DvDbUjR_6GHmR4TYUKZdVw9EWRxhLXbG7A%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 visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/fa225cc8-75d4-451b-a0e3-3c906f84d630%40chromium.org.