html5 video not working on ipad

无人久伴 提交于 2019-11-27 01:11:10

Are you serving the video with the correct MIME type? The excellent Video On The Web article by Dive Into HTML 5 covers everything you need to know about serving Video. Way down the bottom of the article (past all the encoding help) covers issues with iPhones and iPads as well as the need for the correct MIME type. It's well worth the full read.

EDIT

To work with iOS the Accept-Ranges: bytes HTTP response header must be included, see: Safari Web Content Guide - Configuring Your Server

Try this trick (void user to tap screen):

document.addEventListener('touchstart', function(event) {

  video.play();

  // They use this first touch/click event for buffering others video.
  // with this trick 

  video2.play();
  video2.pause();

  // After in your program you can call from 'code' play video.
  // Sum of success buffering per one click is 3 ~ 6 ( android or ios ).


}, false);

For me works on android tablet samsung , iphone and ipad 2/3.

Updated :

With new version of browsers also autoplay is enabled by default, you need to put attribute mute for success.

There is no final solution. For example firefox version 64 on mac don't support but same version on linux support autoplay. And so long...

In my case the MIME type was correct but my server was not allowing the client to request partial files with the Range HTTP header. So the server must send "Accept-Ranges: bytes" when you request that mp4 file, the iPad will refuse to download that file if it is forced to download it entirely.

I had the same problem. The video wasn't playing only on iPad and iPhone4. Nothing worked. Finally I discovered that my .mp4 file was in wrong format. I didn't create that file. After I converted it once again to mp4 format it worked.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!