web-dev-qa-db-fra.com

vidéo html5 ne fonctionne pas sur ipad

J'ai une vidéo html5 qui devrait fonctionner sur ipad. Les contrôles doivent être masqués et lorsque l'utilisateur appuie sur l'ipad, la vidéo html5 doit être lue. 

J'utilise html5video.js Ce que je peux voir sur ipad n'est que l'image de l'affiche et lorsque je tape sur l'ipad, rien ne se passe. ci-dessous est mon code

<!doctype html>
<html>
 <head>
   <meta name="viewport" content="width=768px, minimum-scale=1.0, maximum-scale=1.0" />
   <link href="http://vjs.zencdn.net/c/video-js.css" rel="stylesheet">
   <script src="http://vjs.zencdn.net/c/video.js"></script>

   <script>
    var video = document.getElementById('video');
    video.addEventListener('touchstart',function(){
            video.play();
    },false);
</script>
</head>
<body>
   <video id="video" class="video-js vjs-default-skin" preload="auto" width="620" height="860" poster="img/poster.png" data-setup="{}">
    <source src="video/Motion.mp4" type='video/mp4'>
    </video>
</body>
</html>
11
halubilo Saya

Desservez-vous la vidéo avec le type MIME correct? L'excellent article Vidéo sur le Web de Dive Into HTML 5 couvre tout ce que vous devez savoir sur la diffusion de vidéos. Au bas de l'article (après toute l'aide d'encodage), vous trouverez problèmes avec les iPhones et les iPads ainsi que le besoin du type MIME correct }. Cela vaut bien la lecture complète.

MODIFIER

Pour utiliser iOS, l'en-tête de réponse HTTP Accept-Ranges: bytes doit être inclus. Voir: Guide du contenu Web Safari - Configuration de votre serveur }

18
Dave Anderson

essayez: 

document.addEventListener('touchstart', function(event) {
 video.play();
}, false);

Pour moi, fonctionne sur les tablettes Android Samsung, iPhone et iPad 2/3.

2
Nikola Lukic

Dans mon cas, le type MIME était correct mais mon serveur n'autorisait pas le client à demander des fichiers partiels avec l'en-tête Range HTTP . Le serveur doit donc envoyer "Accept-Ranges: bytes" lorsque vous demandez le fichier mp4, l'iPad. refusera de télécharger ce fichier s'il est obligé de le télécharger entièrement.

1
FlorianB

J'ai eu le même problème. La vidéo ne jouait pas uniquement sur iPad et iPhone4. Rien n'a fonctionné. Finalement, j'ai découvert que mon fichier .mp4 était dans un mauvais format. Je n'ai pas créé ce fichier. Après l'avoir converti une fois de plus au format MP4, cela a fonctionné.

0
Strabek