Adds a "media-playback-while-not-rendered" permission policy to allow embedder websites to pause media playback of embedded iframes which aren't rendered - i.e. have their "display" property set to "none". 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.
This feature is still being discussed with other browser vendors and the shape and functionality might not be final.
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.
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>
Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?
None
None
None
We have implemented Blink webtests. But they are not WPT's yet. - https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/media/media-playback-while-not-visible-permission-policy-cant-play-if-hidden.html?q=third_party%2Fblink%2Fweb_tests%2Fmedia%2Fmedia-playback-while-not-visible-permission-policy-cant-play-if-hidden.html&ss=chromium%2Fchromium%2Fsrc -https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/media/media-playback-while-not-visible-permission-policy-pause-when-hidden.html
DevTrial on desktop | 133 |
Contact emails gabrie...@microsoft.com, ste...@microsoft.com
Explainer https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md
Specification None
SummaryAdds a "media-playback-while-not-rendered" permission policy to allow embedder websites to pause media playback of embedded iframes which aren't rendered - i.e. have their "display" property set to "none". 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
TAG review None
TAG review status Pending
Origin Trial documentation link https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md
Risks
Interoperability and CompatibilityThis feature is still being discussed with other browser vendors and the shape and functionality might not be final.
Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1082)
WebKit: No signal (https://github.com/WebKit/standards-positions/issues/409)
Web developers: Positive (https://github.com/whatwg/html/issues/10208) The web community seems to be interested in this feature, even though we may need to iterate on the user-facing API.
Other signals:
ErgonomicsThis 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.
ActivationDevelopers 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 risksDoes this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?
None
Goals for experimentation
Ongoing technical constraintsNone
DebuggabilityNone
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? YesWe have implemented Blink webtests. But they are not WPT's yet. - https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/media/media-playback-while-not-visible-permission-policy-cant-play-if-hidden.html?q=third_party%2Fblink%2Fweb_tests%2Fmedia%2Fmedia-playback-while-not-visible-permission-policy-cant-play-if-hidden.html&ss=chromium%2Fchromium%2Fsrc -https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/media/media-playback-while-not-visible-permission-policy-pause-when-hidden.html
DevTrial instructions https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/IframeMediaPause/iframe_media_pausing.md#proposed-solution-media-playback-while-not-visible-permission-policy
Flag name on about://flags None
Finch feature name MediaPlaybackWhileNotVisiblePermissionPolicy,AudioContextInterruptedState
Requires code in //chrome? False
Tracking bug https://issues.chromium.org/issues/351354996
Estimated milestones DevTrial on desktop 133
--
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+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/f29cc6a5-83b7-4bde-a450-302cb689e88an%40chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9a248ee6-461e-44c8-91b6-f845a7646ecdn%40chromium.org.