We’ve recently encountered unexpected behavior in some of our videos across different browsers.
🔗 Reproduction Example:
JSFiddle Demo
⸻
Expected Behavior
When a user lands on the page:
1. The video player should attempt to play with sound.
2. If autoplay with sound is not permitted (due to browser autoplay policies), the browser should:
• Fail gracefully with an error we can catch and handle (e.g., showing a “Play button to gather permission” overlay or similar UX).
⸻
Actual Behavior
Currently, the video auto-plays muted without any user interaction or prompt.
This occurs even when autoplay with sound fails, and we never receive a clear signal that permission is needed.
⸻
Steps to Reproduce
1. Open the JSFiddle.
2. Observe that the video auto-plays muted.
3. No prompt or interaction is required or requested by the browser.
4. No error is thrown or caught in our code.
⸻
Notes
• We’ve confirmed this behavior in Chrome and Safari (latest versions).
• We’re explicitly setting .muted = false and calling .play() programmatically.
• We suspect this may be related to browser autoplay policies, but we want a way to detect or intercept this fallback behavior so we can prompt the user manually if needed.
We’ve recently encountered unexpected behavior in some of our videos across different browsers.
🔗 Reproduction Example:
JSFiddle Demo
⸻
Expected Behavior
When a user lands on the page:
1. The video player should attempt to play with sound.
2. If autoplay with sound is not permitted (due to browser autoplay policies), the browser should:
• Fail gracefully with an error we can catch and handle (e.g., showing a “Play button to gather permission” overlay or similar UX).
⸻
Actual Behavior
Currently, the video auto-plays muted without any user interaction or prompt.
This occurs even when autoplay with sound fails, and we never receive a clear signal that permission is needed.
⸻
Steps to Reproduce
1. Open the JSFiddle.
2. Observe that the video auto-plays muted.
3. No prompt or interaction is required or requested by the browser.
4. No error is thrown or caught in our code.
⸻
Notes
• We’ve confirmed this behavior in Chrome and Safari (latest versions).
• We’re explicitly setting .muted = false and calling .play() programmatically.
• We suspect this may be related to browser autoplay policies, but we want a way to detect or intercept this fallback behavior so we can prompt the user manually if needed.