7
votes

Intégrer la vidéo dans la page Web (HTML)

Je veux intégrer une vidéo dans une page Web.
Je ne veux pas utiliser Flash car il est indisponible pour un grand nombre de plates-formes.
Je suis réticent à utiliser HTML5 parce que ce n'est pas encore aussi standard (il est standard, mais la plupart des gens n'ont pas de navigateurs qui le soutiennent)

Y a-t-il une autre façon? Ou devrais-je m'en tenir à HTML5 et une énorme bannière raconte aux gens de mettre à niveau leur navigateur?


3 commentaires

Hugo, j'ai enlevé votre opinion "personnelle" sur Flash de votre question. Vous serez simplement flamber que votre question serait fermée comme "subjective et argumentative"


Le point n'était pas de la critiquer, mais plutôt de dire «je ne veux pas l'utiliser». :)


Je me sens la même chose et ça m'est fallu quelques années pour trouver une solution ... ici c'est! Ce n'est pas la meilleure solution jamais ... la performance n'est pas vraiment bonne ... mais ça marche! (Vient de l'avoir posté ici comme une réponse)


6 Réponses :


6
votes

HTML 5 n'est pas standard. C'est un brouillon. Cela deviendra probablement standard un jour. Cela changera probablement en premier.

Si vous souhaitez incorporer une vidéo dans une page, au moins au moins, Flash est la meilleure option prise en charge que vous disposez. Je fournirais un lien vers une version régulière téléchargeable en tant que option pour les personnes qui n'ont pas de flash (ou qui veulent simplement regarder la vidéo dans un lecteur vidéo dédié). P>

Dire aux gens de mettre à niveau leur Le navigateur n'en aidera pas beaucoup. Pour autant que je sache, le seul navigateur avec support vidéo dans une libération stable est Firefox. Chrome ne le supporte pas sauf dans la version de développement. Je ne pense pas que l'opéra a sorti une construction stable avec un soutien. Microsoft ne l'a certainement pas encore ajouté à Internet Explorer. Safari Je ne suis pas sûr de. P>

Si vous voulez vraiment éviter Flash, vous pouvez utiliser un objet HTML 4.01. P>

<object data="myVideo.ogv" type="video/ogg">
  <!-- fallback content here -->
</object>


7 commentaires

Je n'ai jamais rencontré ça. Qu'est-ce qui joue la vidéo dans cette balise? Les navigateurs de maire ont-ils un plug-in qui fait ce travail ou est-ce une chose de 5%-de-gens?


Il est standard HTML 4.01. Quels que soient les registres plug-in de manière à gérer la vidéo / ogg (dans cet exemple) les données les gère. L'installation de VLC m'a donné le support dont j'avais besoin pour cela (et Firefox m'avait poussé à rechercher un plugin lorsqu'il n'a pas été installé). Je n'ai jamais enquêté sur la base d'installation de plug-ins appropriés pour que je ne sache pas ce que le niveau de support est comme dans la nature.


Cool. C'est une assez bonne baisse pour la balise


@Wahnfrieden Salut! Bienvenue au 2009. Les choses peuvent être un peu différentes de ce que vous êtes habitué. w3.org/tr/html5/video.html#video


@David Dorward, pas besoin d'être sarcastique. Je me trompe - la balise


Il offre un avantage clair sur - une API cohérente et un moyen de tester si le format vidéo est pris en charge. Les codecs vont presque certainement normaliser rapidement de toute façon.


@David deux ans plus tard, et la bataille rage toujours. Je souhaite que tu avais raison :(



0
votes

Pourquoi pensez-vous que beaucoup de grands sites Web utilisent Flash pour lire la vidéo? Probablement pas à cause de son indisponibilité ... Bien sûr, il existe des alternatives pour intégrer le contenu vidéo dans une page Web, mais si la disponibilité est un problème, Flash est le meilleur moyen d'aller en ce moment.


8 commentaires

Supposons simplement que Flash n'est pas une option pour Hugo. Que devrait-il utiliser?


Même si ce n'est que 10% des personnes qui sont laissées de côté, je veux l'éviter. J'ai d'autres raisons de détester Flash de toute façon, alors je ne l'utiliserai tout simplement pas.


C'est probablement plus que 0,1% des personnes.


@BW: Ce qu'il devrait utiliser dépend de l'objectif / des utilisateurs cibles du site Web. Le grand public: utiliser un format pour lequel les utilisateurs la plupart ont un plug-in (pas sûr que ce serait). Groupe d'utilisateurs spécifique / Entreprise / Environnement technique: Utilisez le format disponible dans ce contexte.


Probablement. Même X86 utilisateurs Linux ne sont pas exclus dans ce cas.


Je veux autant de personnes que possible de pouvoir le voir. Personnellement, j'utilise un système d'exploitation sans support flash et où Gnash a également chuté de développement, donc aucune chance. Ce fait de côté, flash «brise généralement la cohérence» dans de nombreux navigateurs. Les raccourcis arrière de navigateur sont inutilisables car Flash axé sur la mise au point; Ne respecte pas l'accessibilité (taille de la police) Paramètres, etc.


@Hugo: tout très vrai, et ce sont effectivement des lacunes de flash, mais si le flash peut faire la différence entre votre contenu disponible pour beaucoup de personnes ou non (à condition que ce soit l'intention bien sûr), cela pourrait valoir la mise en place de tout ça.


Je ne pense pas que vous allez trouver une solution vidéo dans le navigateur qui a une disponibilité plus large que Flash en ce moment.



2
votes

Je viens de rencontrer Cortado . C'est un applet Java qui joue un OGG. Je dois remercier David Dorward EM> pour cela, car la vérification du statut de HTML5 m'a fait venir sur elle. Firefox suggère d'utiliser quelque chose comme:

 <video src="my_ogg_video.ogg" controls width="320" height="240">  
   <object type="application/x-java-applet"  
           width="320" height="240">  
      <param name="archive" value="cortado.jar">  
      <param name="code" value="com.fluendo.player.Cortado.class">  
      <param name="url" value="my_ogg_video.ogg">  
      <p>You need to install Java to play this file.</p>  
   </object>  
 </video>  


0 commentaires

1
votes

Je sais que c'est un peu en retard, mais avez-vous consulté VLC?

Il peut être incorporé dans un site Web, exécuté sous Windows, Mac OS & Linux, est gratuit, open source, prend en charge beaucoup de format vidéo / audio ...

L'inconvénient est qu'il n'a pas de bel interface graphique avec Play / Pause / Set Volume / ... Fonctions, vous devez les créer vous-même.

Vous pouvez jeter un coup d'œil à cet article: http: //www.videolan.org/doc/play-howto/en/ch04.html#id310965


1 commentaires

Merci, je suis tombé sur ce sujet l'autre jour. J'ai fini par utiliser HTML5 avec Java Fallback, mais ce n'est pas une très mauvaise idée non plus. Seul problème serait des clients sans VLC installé.



8
votes

Il existe quelques façons de combiner la vidéo HTML5 avec des retombées pour des navigateurs non prises en charge. Quelques solutions spécifiques ont été démontrées.

Un exemple est vidéo pour tout le monde par Camen Design, qui est conforme à HTML5 et utilise des commentaires conditionnels pour IE et une étiquette d'objet imbriquée pour les navigateurs plus anciens. Cela devrait être une preuve compatible avec des normes, compatible à l'envers et future.


1 commentaires

WOW! Cela règle totalement, aime ça!



0
votes

J'ai travaillé sur ce problème car je suis très intéressé par XHTML + RDFA et j'ai trouvé un moyen de lire une vidéo dans un document strict XHTML 1.0 sur les navigateurs HTML5 sans bloquer les navigateurs NO HTML5.

J'ai publié un plugin JQuery. Ici: https://github.com/charlycoste/xhtml-video P>

Et une démo ici: http://demo.ccoste.fr/video p>

En réalité, cela est tout à fait moins puissant que d'utiliser une balise HTML5, mais au moins ... Ça fonctionne! P>

La solution repose sur JavaScript et sur toile mais peut être gracieusement dégradé en utilisant Code> Tags (c'est ce que fait mon plugin JQuery). P>

Ce que je fais est en fait simple: p>

  1. i Créez une nouvelle vidéo élément strong> (pas une étiquette) en mémoire mais je n'ajoutez pas strong> it to the DOM Document: P>

    img.setAttribute('src', canvas.toDataURL());
    
  2. i Créez un nouveau Canvas CODE> ELEMENT STRUT> EN MÉMOIRE, mais I N'ajoutez pas strong> au document DOM: P >

    canvas.getContext("2d").drawImage(video, 0, 0, width, height);
    
  3. i Créez un nouveau img code> élément strong> et i ajouter fort> au DOM. P>

    // var parent = ... ;
    // var width = ...;
    // var height = ...;
    var img = document.createElement('img');
    
    img.setAttribute('width', width);
    img.setAttribute('height', height);
    
    parent.appendChild(img);
    
  4. lorsque la vidéo est en cours de lecture ( video.play () code>), je le fais dessiner chaque image dans la toile (qui n'est pas visible, car elle n'est pas ajoutée à la DOM - qui fait le Dom Séjour valide XHTML 1.0 Document) P>

    var canvas = document.createElement('canvas');
    
  5. Enfin, j'utilise le TODAaurl () CODE> Méthode de la toile CODE> Elément pour obtenir une image codée de base64 pour le cadre et le mettre au SRC Code> Attribut de l'élément img code>. p>

    var video = document.createElement('video');
    


0 commentaires