LGTM2 On 9/9/26 6:56 a.m., Yoav Weiss (@Shopify) wrote:
LGTM1On Friday, September 4, 2026 at 6:49:26 PM UTC+2 Chromestatus wrote: *Contact emails* [email protected], [email protected] *Explainer* https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md <https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md> *Specification* https://wicg.github.io/iframe-media-pausing <https://wicg.github.io/iframe-media-pausing> Should this move to HTML? Somewhere else? *Summary* Adds a "media-playback-while-not-visible" permission policy to allow embedders to pause audible media playback of embedded iframes which are currently hidden - i.e. "display" property set to "none"; "visibility" property set to "hidden"; or zero-area (width or height equal to 0). While hidden, attempts made by the embedded iframe to render audible media will be blocked. When the frame is shown again the prohibitions should be lifted. This should allow developers to build more user-friendly experiences and to also improve the performance by letting the browser handle the playback of content that is not visible to users. *Blink component* Blink>Media <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EMedia%22> *Web Feature ID* https://github.com/web-platform-dx/web-features/issues/4292 <https://webstatus.dev/features/https://github.com/web-platform-dx/web-features/issues/4292> *Motivation* Web applications that host embedded media content via iframes may wish to respond to application input by temporarily hiding the media content. These applications may not want to unload the entire iframe when it's not rendered since it could generate user-perceptible performance and experience issues when showing the media content again. At the same time, the user could have a negative experience if the media continues to play and emit audio when not rendered. This proposal aims to provide web applications with the ability to control embedded media content in such a way that guarantees their users have a good experience when the iframe's render status is changed. *Initial public proposal* /No information provided/ *TAG review* https://github.com/w3ctag/design-reviews/issues/1084 <https://github.com/w3ctag/design-reviews/issues/1084> *TAG review status* Issues addressed *Origin Trial Name* media-playback-while-not-visible Permission Policy *Goals for experimentation* Gather feedback from web developers and validate that the current prototype implementation works as expected. We have added telemetry to measure how the feature is being exercised by users: - HTMLMediaElement's: - # of pauses while hidden - # of pauses because got hidden during playback - WebAudio AudioContext's - # of interruptions while hidden - # of interruptions because got hidden during playback *Chromium Trial Name* MediaPlaybackWhileNotVisiblePermissionPolicy *Origin Trial documentation link* https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md <https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md> *WebFeature UseCounter name* kMediaPlaybackWhileNotVisiblePermissionPolicy *Risks* *Interoperability and Compatibility* Firefox has already shown official support, although, we can't say for sure when other browsers are going to implement this feature. Safari also seems to be unofficially supportive: https://github.com/whatwg/html/issues/10208#issuecomment-3060151372 <https://github.com/whatwg/html/issues/10208#issuecomment-3060151372> /Gecko/: Positive (https://github.com/mozilla/standards-positions/issues/1082 <https://github.com/mozilla/standards-positions/issues/1082>) /WebKit/: No signal (https://github.com/WebKit/standards-positions/issues/409 <https://github.com/WebKit/standards-positions/issues/409>) /Web developers/: Positive (https://github.com/whatwg/html/issues/10208 <https://github.com/whatwg/html/issues/10208>) The community is supportive of resolving this problem using a permission policy. A commenter mentioned that the proposal fits well within the Permissions Policy API specification. They also agree that there is no workaround for this problem using current web API's. Feedback has been addressed to also include other invisibility scenarios like zero-area (height or width equal to 0) and to change the API name from "not-rendered" to "not-visible". /Other signals/: *Ergonomics* This feature will be used with other audio rendering API's, like HTMLMediaElement and Web Audio. This new behavior should only take effect if web pages explicitly opt-in by overriding the permission policy's default state. Moreover, once the permission policy is used, it should help Chromium to be more optimized by pausing audio rendering for content that is not visible for the user. *Activation* Developers need to opt-in by setting "allow" property of an iframe. For example: <iframe src="https://foo.media.com" allow="media-playback-while-not-visible 'none'"></iframe> *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? None. This feature adds a new behavior that applications need to opt-in. *Debuggability* /No information provided/ *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>?* Yes - https://wpt.fyi/results/html/semantics/embedded-content/media-elements/media-playback-while-not-visible-permission-policy?label=master&label=experimental&aligned&q=media-playback-while-not-visible-permission-policy <https://wpt.fyi/results/html/semantics/embedded-content/media-elements/media-playback-while-not-visible-permission-policy?label=master&label=experimental&aligned&q=media-playback-while-not-visible-permission-policy> - https://wpt.fyi/results/webaudio/the-audio-api/media-playback-while-not-visible-permission-policy?label=master&label=experimental&aligned&q=media-playback-while-not-visible-permission-policy <https://wpt.fyi/results/webaudio/the-audio-api/media-playback-while-not-visible-permission-policy?label=master&label=experimental&aligned&q=media-playback-while-not-visible-permission-policy> *DevTrial instructions* https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/HOWTO.md <https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/HOWTO.md> *Flag name on about://flags* media-playback-while-not-visible-permission-policy *Finch feature name* MediaPlaybackWhileNotVisiblePermissionPolicy *Rollout plan* Will ship enabled for all users *Requires code in //chrome?* False *Tracking bug* https://issues.chromium.org/issues/351354996 <https://issues.chromium.org/issues/351354996> *Availability expectation* The feature will be available in Chromium browsers at first. Despite this, Mozilla supports the feature too and will implement it at some point. *Adoption expectation* Feature is used by specific partners to provide functionality within 3 months of launch in Chrome. *Non-OSS dependencies* Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function? None. *Estimated milestones* Shipping on desktop155 Origin trial desktop first137 Origin trial desktop last142 Origin trial extension 1 end milestone145 DevTrial on desktop137 Shipping on Android155 Origin trial Android first137 Origin trial Android last142 Shipping on WebView155 Origin trial WebView first137 Origin trial WebView last142 *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). Currently the feature is spec'ed to work with HTMLMediaElements and Web Audio AudioContexts. We'll work on incrementally integrating it with other media-playback apis like PiP, Audio Session API, and Media Session API: - https://github.com/WICG/iframe-media-pausing/issues/2 <https://github.com/WICG/iframe-media-pausing/issues/2> - https://github.com/WICG/iframe-media-pausing/issues/3 <https://github.com/WICG/iframe-media-pausing/issues/3> - https://github.com/WICG/iframe-media-pausing/issues/4 <https://github.com/WICG/iframe-media-pausing/issues/4> *Link to entry on the Chrome Platform Status* https://chromestatus.com/feature/5082950457884672?gate=5168819537707008 <https://chromestatus.com/feature/5082950457884672?gate=5168819537707008> *Links to previous Intent discussions* Intent to Prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/PH7PR00MB1638C5FA59458CE0BBDC1FA6D5D72%40PH7PR00MB1638.namprd00.prod.outlook.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/PH7PR00MB1638C5FA59458CE0BBDC1FA6D5D72%40PH7PR00MB1638.namprd00.prod.outlook.com> Intent to Experiment: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6806b191.170a0220.2f866a.0286.GAE%40google.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6806b191.170a0220.2f866a.0286.GAE%40google.com> 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 [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/38ec928e-3bcf-422c-9a69-25db9e078cd9n%40chromium.org <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/38ec928e-3bcf-422c-9a69-25db9e078cd9n%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 [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/dcd58edc-9cdb-42a3-923d-fbefb47fa03c%40chromium.org.
