Insérer des vidéos

Les vidéos sont devenues un élément incontournable des sites web modernes, offrant une expérience utilisateur riche et engageante.

Avantages clés des vidéos :

  • Explication visuelle : Certains concepts sont mieux expliqués en vidéo qu'en texte
  • Engagement accru : Les visiteurs passent plus de temps sur les pages avec vidéo
  • Démonstration produit : Montrer un produit en action est plus convaincant
  • Accessibilité : Alternative pour les personnes ayant des difficultés de lecture
  • Émotion : Créer une connexion émotionnelle avec les visiteurs

Exemple éducatif

Tutoriel de montage vidéo intégré directement dans la page

Aperçu d'un tutoriel vidéo

Exemple commercial

Présentation produit avec démonstration d'utilisation

Aperçu d'une vidéo produit

Points de vigilance

  • Les vidéos peuvent ralentir le chargement de la page
  • Elles consomment plus de données mobiles
  • Certains utilisateurs peuvent les trouver intrusives
  • Nécessitent des alternatives pour l'accessibilité

La balise <video>

La balise <video> est la méthode native en HTML5 pour intégrer des vidéos sans nécessiter de plugins externes.

<video src="presentation.mp4" controls></video>

Caractéristiques principales :

  • Nécessite l'attribut src pour spécifier le fichier vidéo
  • Doit être fermée avec </video>
  • Peut contenir du texte alternatif affiché si la vidéo ne peut pas être lue
  • Prend en charge plusieurs attributs pour contrôler le comportement
  • Style personnalisable avec CSS

Exemple complet

Vidéo avec dimensions et contrôles

<video src="tutoriel.mp4" 
       controls
       width="640" 
       height="360">
  Votre navigateur ne supporte pas les vidéos HTML5.
</video>

Aperçu d'une vidéo avec contrôles

Bonnes pratiques

  • Toujours spécifier les attributs width et height pour éviter les sauts de mise en page
  • Fournir un texte alternatif entre les balises <video> et </video>
  • Utiliser des chemins relatifs ou absolus corrects pour les fichiers vidéo
  • Optimiser les vidéos pour le web (compression, format adapté)

L'attribut controls

L'attribut controls est essentiel pour permettre aux utilisateurs d'interagir avec la vidéo.

Avec controls

<video src="video.mp4" controls></video>

Barre de contrôle visible

Sans controls

<video src="video.mp4"></video>

Aucun contrôle disponible

Fonctionnalités offertes par controls :

  • Lecture/Pause : Bouton pour démarrer/mettre en pause la vidéo
  • Barre de progression : Permet de naviguer dans la vidéo
  • Volume : Contrôle du niveau sonore
  • Plein écran : Option pour afficher la vidéo en mode plein écran
  • Sous-titres : Si disponibles dans le fichier vidéo

Personnalisation avancée

Pour un contrôle plus poussé, vous pouvez :

  • Créer vos propres contrôles avec JavaScript
  • Utiliser l'API Media pour des fonctionnalités custom
  • Styliser certains éléments avec CSS (::-webkit-media-controls)
  • Ajouter des sous-titres avec <track>

Formats vidéo

Différents navigateurs supportent différents formats vidéo. Il est donc crucial de fournir plusieurs alternatives.

<video controls>
  <source src="video.mp4" type="video/mp4">
  <source src="video.webm" type="video/webm">
  Votre navigateur ne supporte pas les vidéos HTML5.
</video>

MP4 (H.264)

Avantages :

  • Support universel
  • Bonne compression
  • Qualité décente

Inconvénients :

  • Licences propriétaires
  • Moins performant que WebM

WebM (VP9)

Avantages :

  • Open source
  • Excellente compression
  • Support du 4K

Inconvénients :

  • Support plus limité
  • Encodage plus lent

OGG (Theora)

Avantages :

  • Open source
  • Bon pour la compatibilité

Inconvénients :

  • Qualité inférieure
  • Moins utilisé aujourd'hui

Stratégie recommandée

  • Fournir au minimum MP4 et WebM
  • Ordonner les sources du format le plus récent au plus ancien
  • Utiliser des outils comme FFmpeg pour la conversion
  • Optimiser les vidéos pour le web (réduire la résolution si nécessaire)

L'attribut poster

L'attribut poster permet de définir une image d'aperçu qui s'affiche avant la lecture de la vidéo.

<video src="tutoriel.mp4" controls poster="apercu.jpg"></video>

Avec poster

Aperçu personnalisé

Image d'aperçu avant lecture

Sans poster

Première frame de la vidéo

Affiche la première frame par défaut

Bonnes pratiques pour les posters :

  • Choisir une image représentative du contenu vidéo
  • Optimiser le poids de l'image (compression JPEG/WebP)
  • Utiliser les mêmes dimensions que la vidéo
  • Ajouter un bouton play overlay si nécessaire
  • Éviter les images trompeuses (clickbait)

Attention

L'image poster :

  • Ne doit pas être trop lourde (ralentit le chargement)
  • Doit respecter les droits d'auteur
  • Devrait inclure un texte si la vidéo est muette

Autres attributs

La balise <video> supporte plusieurs attributs pour contrôler son comportement.

Attribut Effet Exemple
autoplay Démarre la lecture automatiquement <video autoplay>
loop Joue la vidéo en boucle <video loop>
muted Coupe le son par défaut <video muted>
playsinline Empêche le plein écran automatique sur iOS <video playsinline>

Restrictions des navigateurs

Pour améliorer l'expérience utilisateur :

  • autoplay ne fonctionne souvent qu'avec muted
  • Certains navigateurs bloquent l'autoplay sur mobile
  • Les données économisées peuvent désactiver l'autoplay
  • Toujours donner le contrôle à l'utilisateur

Exemple combiné

<video controls autoplay muted loop
       poster="apercu.jpg"
       width="800" height="450">
  <source src="video.mp4" type="video/mp4">
  <source src="video.webm" type="video/webm">
  Votre navigateur ne supporte pas les vidéos HTML5.
</video>

Intégrer YouTube

Pour intégrer une vidéo hébergée sur YouTube, vous pouvez utiliser le code d'intégration fourni.

<iframe width="560" height="315"
  src="https://www.youtube.com/embed/VIDEO_ID"
  title="YouTube video player"
  frameborder="0"
  allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
  allowfullscreen>
</iframe>

Avantages de l'intégration YouTube :

  • Pas d'hébergement vidéo à gérer
  • Lecture fluide grâce au CDN de YouTube
  • Fonctionnalités avancées (sous-titres, qualité variable)
  • Analytics intégrés
  • Moins de charge sur votre serveur

Paramètres d'intégration

Autoplay

Ajouter ?autoplay=1 à l'URL :

src="https://.../VIDEO_ID?autoplay=1"

Début à un moment précis

Ajouter ?start=30 (30 secondes) :

src="https://.../VIDEO_ID?start=30"

Masquer les contrôles

Ajouter ?controls=0 :

src="https://.../VIDEO_ID?controls=0"

Inconvénients potentiels

  • Charge des scripts tiers (vie privée)
  • Affiche des suggestions de vidéos à la fin
  • Peut être bloqué par des extensions/adblockers
  • Nécessite une connexion à YouTube

Erreurs fréquentes

Oublier controls

<video src="video.mp4"></video>

La vidéo ne peut pas être lue ou contrôlée

Autoplay sans muted

<video src="video.mp4" autoplay></video>

Ne fonctionnera pas sur la plupart des navigateurs

Vidéo trop lourde

<video src="video-4k.mp4"></video>

Charge très lentement, consomme beaucoup de données

Solutions

  • Toujours tester sur plusieurs appareils et navigateurs
  • Optimiser les vidéos pour le web (résolution, compression)
  • Utiliser le lazy loading pour les vidéos hors écran
  • Fournir une alternative texte ou image
  • Considérer l'utilisation d'un CDN vidéo pour les gros fichiers

Optimisation des performances

  • Utiliser l'attribut preload="none" pour les vidéos non prioritaires
  • Activer le lazy loading avec loading="lazy"
  • Fournir des vidéos en qualité adaptée au device
  • Utiliser le format WebP pour les posters
  • Envisager le streaming adaptatif pour les longues vidéos

En résumé

Balise <video>

Méthode native pour intégrer des vidéos

Attribut controls

Essentiel pour l'interaction utilisateur

Formats multiples

Fournir MP4 et WebM pour la compatibilité

Intégration YouTube

Solution pratique pour l'hébergement externe

L'intégration de vidéos en HTML offre des possibilités riches pour enrichir vos pages web. Que vous utilisiez la balise <video> native ou des intégrations de plateformes comme YouTube, il est essentiel de respecter les bonnes pratiques en matière d'accessibilité, de performance et d'expérience utilisateur. N'oubliez pas d'optimiser vos fichiers vidéo pour le web et de toujours donner le contrôle à vos visiteurs. Dans le prochain chapitre, nous aborderons les formulaires HTML et leur mise en œuvre.