html5 video not working on ipad

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.


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...