Skip to content
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

Player pauses when trying to play Video in iOS #36

Open
anishg-cn opened this issue Jan 13, 2023 · 7 comments
Open

Player pauses when trying to play Video in iOS #36

anishg-cn opened this issue Jan 13, 2023 · 7 comments

Comments

@anishg-cn
Copy link

anishg-cn commented Jan 13, 2023

The scenario is, there is a Video element which starts at, let's say, 5 second. So, the video plays fine for 5 seconds and suddenly it pauses and never starts again, until manually played again.

This happens in iOS Chrome (and maybe Safari as well).

I think the issue might be the following:
image

@ysulyma can you please let me know how to fix this?

@ysulyma
Copy link
Collaborator

ysulyma commented Jan 14, 2023

I'll take a look!

@anishg-cn
Copy link
Author

@ysulyma did you get time to look into the issue? it would be very helpful if you could check the issue as fast as possible.

@ysulyma
Copy link
Collaborator

ysulyma commented Jan 17, 2023

@anishg-cn not yet, will attempt to fix tomorrow evening

@ysulyma
Copy link
Collaborator

ysulyma commented Jan 18, 2023

@anishg-cn does your video have audio? If so, it is impossible to have it start playing without a user interaction (e.g. clicking), due to the Web Autoplay Policy. The recommended solution is to remove the audio track from the video and merge it with whatever <Audio> you're using (which should start at 0:00).

@anishg-cn
Copy link
Author

@ysulyma but it works in android and pc, only issue in iOS?

@anishg-cn
Copy link
Author

@ysulyma also user interacts by clicking the play button in the player, so shouldn't it work after that?

@ysulyma
Copy link
Collaborator

ysulyma commented Jan 19, 2023

@anishg-cn

  • Chrome and Firefox are more permissive about autoplay than iOS
  • in Safari, you can only call play() on the underlying <video> when the user clicks the play button in the player—not 5 seconds later.

Also note iOS can only play one channel of audio at a time so you'd need to do the audio extraction trick anyway. It may be possible to work around this using the Web Audio API, however that is complex and I haven't tried it yet. See the following:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants