NEW 282323
Safari mutes autoplay video even with User Activation in same-origin context on https://premier.one/
https://bugs.webkit.org/show_bug.cgi?id=282323
Summary Safari mutes autoplay video even with User Activation in same-origin context ...
Nikita
Reported 2024-10-30 02:22:43 PDT
I am writing to seek your assistance with a persistent issue we’ve been facing with Safari’s autoplay policy for video content. You can observe this issue on our website: https://premier.one/show/odin Steps to Reproduce: 1. Open the webpage in Safari. 2. Click the yellow “play” button to initiate video playback. 3. Notice that the video starts but without audio, despite having user activation and the video content being hosted on the same domain. Technical Details • The video and main website are on the same domain (https://premier.one). • User Activation API behaves inconsistently: • Parent frame: window.parent.navigator.userActivation shows {hasBeenActive: true, isActive: false} • Iframe: window.navigator.userActivation shows {hasBeenActive: false, isActive: false} • The results indicate potential miscalculation or propagation issue of User Activation in Safari. Environment • Browser: All versions of Safari (Safari 17, 16, Technology Preview, Nightly Build) • OS: macOS / iOS (all versions) • URL: https://premier.one/show/odin This behavior suggests a potential bug in how Safari handles User Activation for autoplay video in same-origin iframes. Please investigate this issue, as it significantly affects user experience. Please let me know if you need further information or access to test environments.
Attachments
same-origin-user-activation.html (1.12 KB, text/html)
2024-10-30 08:22 PDT, Jer Noble
no flags
Radar WebKit Bug Importer
Comment 1 2024-10-30 08:06:48 PDT
Jer Noble
Comment 2 2024-10-30 08:22:25 PDT
Created attachment 473080 [details] same-origin-user-activation.html Here's a test case demonstrating the problem. If an <iframe> is created _before_ the user activation, the activation propagates to the iframe's navigator. If an <iframe> is created _within_ the user activation, it does not.
Jer Noble
Comment 3 2024-10-30 08:26:06 PDT
This behavior is consistent across Chrome, Firefox, and Safari. I suspect that this isn't a bug, per se, but rather just the way that the specification works. An available workaround may be to ensure your player iframe is created at load time.
Nikita
Comment 4 2024-11-02 00:35:49 PDT
Hello Jer, thank you for you information. We need to discover this problem inside the team. I came with a solution.
Note You need to log in before you can comment on or make changes to this bug.