-
Notifications
You must be signed in to change notification settings - Fork 7.5k
Mute/unmute volume control should show on iOS #4478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Excuse me, how can video autoplay on iOS? Use video.js in html5 . |
If you're on iOS, the volume mute/unmute button (in VideoJS's skin) is hidden, because iOS doesn't let you control volume using JavaScript. |
We are currently planning a sweep related to the autoplay/muted/playsinline complexity this quarter. Stay tuned!
Yes, that is the behavior of iOS Safari and Android Chrome. You cannot autoplay non-muted video on those platforms. Safari 11 on macOS will behave the same way. |
I would advise having an always-showing unmute button when this mode is on, similar to how Facebook does it. |
This looks like a duplicate of #4373 |
Agree with @rudyzeinoun, on iOS, the autoplay/muted/playsinline works but I need to use a ugly settimout to remove |
force mute to display on all devices, from videojs#4478
Hi, |
Hi,
|
Jtel to edit them on phone ? |
This should be fixed in master now, a release of 7 is coming soon and it'll be back ported to 6.x at some point as well. |
Currently, VideoJS combines volume control with muted support, and these actions aren't actually the same. Muting/unmuting volume work independently from the volume control. For example, iOS doesn't support controlling volume programmatically but allows muting/unmuting volume. This change will display the volume control panel and mute toggle button if the tech supports muting volume. The volume slider will continue to be hidden if the platform doesn't allow programmatically control volume. If neither muting nor control volume is supported, volume panel will not be displayed. Fixes #4478.
Is this fixed in 7? I am running 7 and I'm still not seeing the mute button |
The mute toggle button is displayed on iOS in v7.1.0+. Is that the version you're testing on? I'm seeing the mute toggle button fine here https://output.jsbin.com/sovubus. Another thing to note is that the mute control will be visible in iOS versions that supports muting volume programmatically only, ie iOS 10+. |
I'd love to see a |
On iOS, the volume bar is hidden because we cannot control the volume due to an OS restriction. However, the mute/unmute button should still show. This is useful in cases where "autoplay muted playsinline" is used, so the video starts automatically playing, but there would be no way to unmute it, even from the device's hardware volume controls or the OS volume slider.
You can force the controls to display by CSS, by adding:
.video-js .vjs-volume-panel { display: flex !important }
.video-js .vjs-mute-control { display: inline-block !important }
Which allows unmuting the video, but the experience is not optimal and the volume slider still takes some space until it times out and closes back. This can be fixed by more CSS changes, but these are dirty workarounds.
The expected result is to show the volume icon on iOS to allow mute/unmute.
The text was updated successfully, but these errors were encountered: