Selon:
http://developer.android.com/sdk/android-2.0-highlights.html
Android 2.0 devrait prendre en charge l'élément vidéo HTML5. Je n'ai pas été en mesure de faire fonctionner cela à l'aide d'un Motorola Droid, et je n'ai pas pu visionner avec succès une vidéo sur l'une des pages d'exemple de vidéo HTML5. Comme il n'y a actuellement pas de support pour QuickTime ou Flash, c'est la seule autre chose à laquelle je puisse penser pour intégrer une vidéo mp4 dans une page Web. Quelqu'un at-il eu de la chance avec ça?
Réponses:
Je viens de faire quelques expériences avec cela, et d'après ce que je peux dire, vous avez besoin de trois choses:
Jetez un œil à la démo sur cette page: http://broken-links.com/tests/video/
Cela fonctionne, AFAIK, dans tous les navigateurs de bureau vidéo, iPhone et Android.
Voici le balisage:
Et j'ai ceci dans le JS:
J'ai testé cela sur un Samsung Galaxy S et cela fonctionne bien.
la source
La réponse de Roman a bien fonctionné pour moi - ou du moins, elle m'a donné ce à quoi je m'attendais. L'ouverture de la vidéo dans l'application native du téléphone est exactement la même que celle de l'iPhone.
Cela vaut probablement la peine d'ajuster votre point de vue et de vous attendre à ce que la vidéo soit lue en plein écran dans sa propre application, et codée pour cela. Il est frustrant que cliquer sur la vidéo ne soit pas suffisant pour la faire jouer de la même manière que l'iPhone, mais comme il suffit d'un attribut onclick pour la lancer, ce n'est pas la fin du monde.
Mon conseil, FWIW, est d'utiliser une image d'affiche et de montrer clairement qu'elle va lire la vidéo. Je travaille actuellement sur un projet qui fait exactement cela, et les clients en sont satisfaits - et aussi qu'ils obtiennent la version Android d'une application Web gratuitement, bien sûr, car le contrat était uniquement pour un Application Web iPhone.
Juste à titre d'illustration, une balise vidéo Android fonctionnelle est ci-dessous. Sympa et simple.
la source
controls
attribut, l'événement onclick est contourné lorsque vous appuyez sur pause (donc la vidéo est réellement mise en pause), mais d'une manière ou d'une autre, lorsque vous cliquez sur play, rien ne se passe - vous devez cliquer dans la vidéo (pas sur le bouton de lecture) pour que la vidéo reprenne.J'inclus ici comment un de mes amis a résolu le problème de l'affichage de vidéos en HTML dans Nexus One:
Je n'ai jamais pu faire jouer la vidéo en ligne. En fait, beaucoup de gens sur Internet mentionnent explicitement que la lecture vidéo en ligne en HTML est prise en charge depuis Honeycomb, et nous nous sommes battus avec Froyo et Gingerbread ... Aussi pour les petits téléphones, je pense que jouer en plein écran est très naturel - sinon, ce n'est pas tellement visible. . Le but était donc de rendre la vidéo ouverte en plein écran. Cependant, les solutions proposées dans ce fil de discussion n'ont pas fonctionné pour nous - cliquer sur l'élément n'a rien déclenché. De plus, les contrôles vidéo ont été affichés, mais aucune affiche n'a été affichée, l'expérience utilisateur était donc encore plus étrange. Donc, ce qu'il a fait était le suivant:
Exposez le code natif au HTML pour qu'il puisse être appelé via javascript:
Le code lui-même avait une fonction qui appelait l'activité native pour lire la vidéo:
Ensuite, dans le HTML lui-même, il n'arrêtait pas de faire fonctionner la balise vidéo pour lire la vidéo. Ainsi, finalement, il a décidé d'écraser l'
onclick
événement de la vidéo, en lui faisant jouer le jeu réel. Cela a presque fonctionné pour lui - sauf qu'aucune affiche n'a été affichée. Voici la partie la plus étrange - il continuait à recevoirERROR/AndroidRuntime(7391): java.lang.RuntimeException: Null or empty value for header "Host"
chaque fois qu'il définissait l'poster
attribut de la balise. Finalement, il a trouvé le problème, ce qui était très étrange - il s'est avéré qu'il avait conservé lasource
sous - étiquette dans l'video
étiquette, mais ne l'avait jamais utilisée. Et c'est assez étrange exactement ce qui causait le problème. Maintenant, voyez sa définition de lavideo
section:Bien sûr, vous devez également ajouter la définition de la fonction javascript en tête de page:
Je me rends compte que ce n'est pas une solution purement HTML, mais c'est le mieux que nous ayons pu faire pour le type de téléphone Nexus One. Tous les crédits pour cette solution vont à Dimitar Zlatkov Dimitrov.
la source
Si vous appelez manuellement,
video.play()
cela devrait fonctionner:la source
pointant mon navigateur Android 2.2 vers html5test.com , me dit que l'élément vidéo est pris en charge, mais aucun des codecs vidéo répertoriés ... semble un peu inutile de prendre en charge l'élément vidéo mais pas de codecs ??? sauf si quelque chose ne va pas avec cette page de test.
cependant, j'ai trouvé le même genre de situation avec l'élément audio: l'élément est pris en charge, mais aucun format audio. vois ici:
http://textopiablog.wordpress.com/2010/06/25/browser-support-for-html5-audio/
la source
Rien n'a fonctionné pour moi jusqu'à ce que j'encode la vidéo correctement. Essayez ce guide pour les réglages corrects du frein à main: http://forum.handbrake.fr/viewtopic.php?f=7&t=9694
la source
Peut-être que vous devez encoder la vidéo spécifiquement pour l'appareil, par exemple:
Il y a quelques exemples de configurations d'encodage qui ont fonctionné ici:
https://supportforums.motorola.com
la source
Essayez h.264 dans un conteneur mp4. J'ai eu beaucoup de succès avec ça sur mon Droid X. J'utilise zencoder.com pour les conversions de format.
la source
Cela fonctionne pour moi:
Seulement lorsque le .mp4 est au-dessus et que le fichier vidéo n'est pas trop gros.
la source
Il est censé fonctionner, mais surveillez la résolution: Android 2.0 et webkit
la source
Cela ne répond peut-être pas exactement à votre question, mais nous utilisons le format de fichier 3GP ou 3GP2. Mieux vaut même utiliser le protocole rtsp, mais le navigateur Android reconnaîtra également le format de fichier 3GP.
Vous pouvez utiliser quelque chose comme
pour déclencher le lecteur vidéo. Le fichier sera diffusé et une fois la lecture terminée, la gestion est renvoyée au navigateur.
Pour moi, cela résout beaucoup de problèmes avec la mise en œuvre actuelle des balises vidéo sur les appareils Android.
la source
Selon: https://stackoverflow.com/a/24403519/365229
Je l'ai testé sur le navigateur Android 2.3.3 et 4.4.
la source
Après de nombreuses recherches, sur de nombreux appareils différents, jusqu'à présent, je suis arrivé à la conclusion simple qui
MP4
est beaucoup moins prise en charge que leMOV
format. Donc, j'utilise leMOV
format, qui est pris en charge par tous les appareils Android et Apple, sur tous les navigateurs. J'ai détecté la météo, l'appareil est un appareil mobile ou un navigateur de bureau, et configurez le enSRC
conséquence:la source
J'ai essayé d'utiliser le
.mp4
format pour lire une vidéo sur des appareils Android, mais cela ne s'est pas bien passé. Donc, après quelques essais et erreurs, j'ai converti la vidéo au.webm
format et au code suivant sans javascript ou JQuery supplémentaire:Cela fonctionnait sur un appareil Android plus ancien (au moins quelques années en 2020).
la source
HTML5 est pris en charge sur les téléphones Google (Android) tels que Galaxy S et iPhone. Cependant, l'iPhone ne prend pas en charge Flash, que les téléphones Google prennent en charge.
la source