2017-08-19 1 views
2

J'ai converti un gif composé de trois images en mp4 et aussi m4v (pour Safari) à jouer dans le lecteur vidéo html5, cependant, Safari ne jouera pas non plus le .mp4 ni le .m4v avec les éléments suivantssafari ne jouera pas un gif converti en mp4 ou m4v

<video preload="yes" controls="true" > 
<source src="./menu.mp4" type="video/mp4" /> 
<source src="./menu.m4v" type="video/m4v" /> 
</video> 

Cependant, si j'utilise une vidéo appropriée (et non un fichier GIF converti) Safari (9.2) va jouer en utilisant la syntaxe ci-dessus, donc je sais que le lecteur vidéo html5 travaille dans mon navigateur, mais pas mon gif converti. Question, pour un fichier GIF converti en un "film d'images fixes", dois-je définir un autre type, à savoir type="gif/m4v" ou y a-t-il un autre paramètre que je dois activer?

J'ai utilisé ffmpeg pour convertir le gif en mp4 mais je ne me souviens pas de la commande exacte que j'ai exécutée pour le faire.

Mise à jour Selon l'article TechCrunch, Twitter utilise mp4s au lieu de gifs, donc je suppose qu'il devrait fonctionner sur tous les navigateurs.

le fichier mp4 peut être consulté ici

https://www.dropbox.com/s/mvkzo8xe7is4rle/menu.mp4?dl=0

+2

Comment avez-vous converti les gifs en mp4/m4v? Peut-être que le convertisseur est problématique? – Dekel

+0

Cela fonctionne-t-il dans d'autres navigateurs? – faintsignal

+0

@faintsignal cela fonctionne en chrome (le seul autre que j'ai essayé) – Leahcim

Répondre

1

Le problème est l'encodage vidéo, en particulier le réglage du profil H.264, utilisé avec le codec vidéo.

Votre vidéo actuelle est codée en tant que: High 4:4:4 Predictive @ Level 2.2 ce qui semble inhabituel pour une vidéo de navigateur (et peut ne pas décoder sur certains appareils mobiles).

Solution:

Dans l'encodeur, choisissez un profil H.264 soit Baseline ou Main.

Cette working video utilise Main @ L3.1

En utilisant FFmpeg vous pouvez produire une nouvelle vidéo sous profil Main (qui est adapté à vos dimensions largeur de hauteur 480 X 640).

ffmpeg -i input.mp4 -c:v libx264 -pix_fmt yuv420p -profile:v main -level:v 3.1 -an output.mp4 


Remarques utiles:

  • Vous pouvez check here certains profils d'Apple est recommandé (voir Point.11). Il est prévu que la vidéo utilise 4:2:0 échantillonnage, pas le problème 4:4:4 dans la vidéo qui ne fonctionne pas.

  • Wowza.com explains Profils et niveaux pour les appareils mobiles.

  • A Baseline Le profil garantirait la lecture sur des appareils encore plus anciens (par exemple: iPhone 3 ou plus ancien).