Logo
  • Ajouter du son avec la balise audio
  • Insérer de la vidéo avec la balise video
  • Intégrer une vidéo externe (YouTube, Vimeo…)
  • Bonnes pratiques

Html5, les bases

2 jours • Créer et modifier des pages Web en HTML

Mon plan d'action

Jour 1 : Construire sa page en Html

Introduction

  • hello html5

Mise en route

  • introduction html
  • creation page html

Les balises HTML

  • insertion image
  • definition lien
  • creation tableau
  • creation formulaire
  • insertion audio video

Jour 2 : Gérer la forme avec les feuilles de styles CSS

Mise en route

  • css integration
  • css selecteur

Les propriétés CSS

  • css mise en couleur
  • css gestion texte
  • css marges espacements

Aller plus loin

  • publication site
← Retour à la formation

Bonjour
& bienvenue !

Veuillez entrer le mot de passe pour accéder au contenu de la formation.

(Mon email si vous avez une question)

Insérer de l'audio et de la vidéo

Concevoir une page rich-media avec les balises HTML5

Ajouter du son avec la balise audio

Avant le HTML5, il fallait un plugin externe (Flash, QuickTime) pour lire du son dans une page Web. La balise audio, apparue avec le HTML5, rend l’intégration native et universelle.

La balise audio est une balise double. L’attribut controls est indispensable : sans lui, le lecteur est invisible et l’utilisateur n’a aucun moyen de lancer la lecture.

<!-- Insertion simple : un seul fichier -->
<audio controls src="sons/musique.mp3"></audio>

Les formats audio

Tous les navigateurs ne supportent pas les mêmes formats. En pratique, le MP3 est aujourd’hui universel, mais il est bon de connaître les alternatives.

FormatExtensionAvantagesInconvénients
MP3.mp3Universel, très bonne compression, supporté par tous les navigateursFormat propriétaire (brevet expiré en 2017)
OGG Vorbis.oggLibre et open source, bonne qualitéNon supporté par Safari
WAV.wavQualité maximale, aucune compressionFichiers très lourds — inadapté au Web
AAC.aac / .m4aMeilleure qualité que le MP3 à débit égalSupport variable selon les navigateurs
WebM Audio.webmLibre, développé par GoogleSupport limité sur Safari et iOS

Les attributs de la balise audio

AttributRôleRemarque
controlsAffiche le lecteur (play, pause, volume, barre de progression)Indispensable — sans lui, rien de visible
autoplayLance la lecture automatiquement au chargement de la page⚠️ Bloqué par la plupart des navigateurs sans interaction préalable
loopRelance la lecture en boucleUtile pour une ambiance sonore de fond
mutedDémarre en sourdinePermet de contourner le blocage de l'autoplay sur certains navigateurs
preloadIndique au navigateur s'il doit précharger le fichier (auto, metadata, none)metadata est un bon compromis : charge la durée sans télécharger tout le fichier
L’attribut autoplay est déconseillé et même bloqué par les navigateurs modernes pour protéger l’expérience utilisateur. Un son qui se déclenche sans prévenir est l’une des premières causes de rebond sur un site.
<!-- Lecteur simple -->
<audio controls src="sons/musique.mp3"></audio>

<!-- Lecteur avec lecture en boucle et préchargement des métadonnées -->
<audio controls loop preload="metadata" src="sons/ambiance.mp3"></audio>

Gérer la compatibilité avec la balise source

Le texte placé entre les balises audio (avant </audio>) ne s’affiche que si le navigateur ne supporte pas du tout la balise. C’est un message de repli (fallback). Pensez à y inclure un lien de téléchargement.

Pour maximiser la compatibilité, on peut proposer plusieurs formats. Le navigateur lit les balises source de haut en bas et utilise le premier format qu’il reconnaît. L’attribut type aide le navigateur à identifier le format sans télécharger le fichier.

<!-- Plusieurs formats pour une compatibilité maximale -->
<audio controls>
  <source src="sons/musique.mp3" type="audio/mpeg">
  <source src="sons/musique.ogg" type="audio/ogg">
  <!-- Texte de repli pour les très vieux navigateurs -->
  <p>Votre navigateur ne supporte pas la lecture audio.
     <a href="sons/musique.mp3">Téléchargez le fichier</a>.</p>
</audio>

Insérer de la vidéo avec la balise video

Comme pour l’audio, la balise video du HTML5 a rendu obsolète l’usage de Flash pour la lecture vidéo dans le navigateur.

Le fonctionnement est identique à celui de la balise audio : une balise double, l’attribut controls pour afficher le lecteur, et la possibilité de proposer plusieurs formats via source.

<!-- Insertion simple -->
<video controls src="videos/presentation.mp4"></video>

Les formats vidéo

En pratique, un fichier MP4 (H.264) suffit dans la grande majorité des cas. Ajoutez une version WebM si vous visez une compatibilité maximale ou si vous privilégiez les formats libres.

FormatExtensionAvantagesInconvénients
H.264 / MP4.mp4Universel, excellente compression, standard de faitFormat propriétaire (licences)
WebM / VP9.webmLibre, développé par Google, très bonne compressionNon supporté par Safari (avant v16)
OGG / Theora.ogvLibre et open sourceQualité inférieure aux formats modernes, support en recul
AV1.mp4 / .webmLibre, compression supérieure au H.264Encodage lent, support en progression

Les attributs de la balise video

La balise video partage les mêmes attributs que audio (controls, autoplay, loop, muted, preload), avec quelques attributs supplémentaires :

AttributRôleRemarque
controlsAffiche le lecteur vidéo (play, pause, volume, plein écran...)Indispensable
width / heightDéfinit les dimensions du lecteur en pixelsNe pas ajouter l'unité px — écrire width="640" et non width="640px"
posterImage d'aperçu affichée avant la lectureTrès recommandé : sans poster, le lecteur affiche un écran noir ou la première frame
autoplayLecture automatique⚠️ Ne fonctionne que combiné avec muted sur la plupart des navigateurs
loopLecture en boucleUtile pour des vidéos d'ambiance courtes
mutedDémarre en sourdineNécessaire pour que autoplay fonctionne
L’attribut poster est souvent négligé, mais il fait une vraie différence : une image d’aperçu donne envie de cliquer, là où un rectangle noir fait fuir.
<!-- Lecteur vidéo avec image d'aperçu et dimensions définies -->
<video controls
     width="640"
     height="360"
     poster="images/apercu-video.jpg">
  <source src="videos/presentation.mp4" type="video/mp4">
  <source src="videos/presentation.webm" type="video/webm">
  <p>Votre navigateur ne supporte pas la lecture vidéo.
     <a href="videos/presentation.mp4">Téléchargez la vidéo</a>.</p>
</video>

Intégrer une vidéo externe (YouTube, Vimeo…)

Dans la pratique, beaucoup de vidéos sont hébergées sur des plateformes tierces ce qui soulage votre serveur et garantit une page rapidement chargée. Pour les intégrer, vous utilisez la balise iframe et le code d’intégration fourni par la plateforme (bouton “Partager” → “Intégrer”).

Héberger ses vidéos sur YouTube ou Vimeo plutôt que sur son propre serveur présente un avantage de poids : la plateforme gère la bande passante, l’encodage multi-formats et l’adaptation au débit de connexion du visiteur.
<!-- Code d'intégration YouTube -->
<iframe
  width="560"
  height="315"
  src="https://www.youtube.com/embed/ID_DE_LA_VIDEO"
  title="Titre descriptif de la vidéo"
  frameborder="0"
  allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
  allowfullscreen>
</iframe>
  • L’attribut title est indispensable pour l’accessibilité — il décrit le contenu de l’iframe aux lecteurs d’écran
  • L’attribut allowfullscreen permet à l’utilisateur de passer en plein écran
  • Remplacez ID_DE_LA_VIDEO par l’identifiant trouvé dans l’URL YouTube (après v=)

Bonnes pratiques

Accessibilité

  • Toujours ajouter controls : un contenu audio ou vidéo doit pouvoir être mis en pause, relancé et ajusté en volume par l’utilisateur
  • Éviter autoplay : un média qui se lance tout seul est intrusif, perturbant pour les lecteurs d’écran, et bloqué par les navigateurs modernes
  • Ajouter un poster sur les vidéos pour donner un aperçu visuel
  • Proposer un texte de repli entre les balises audio/video pour les navigateurs qui ne les supportent pas
  • Sous-titrer ses vidéos : la balise track permet d’ajouter des sous-titres au format WebVTT
<!-- Ajouter des sous-titres à une vidéo -->
<video controls poster="images/apercu.jpg">
  <source src="videos/interview.mp4" type="video/mp4">
  <track src="sous-titres/interview-fr.vtt"
         kind="subtitles"
         srclang="fr"
         label="Français"
         default>
</video>

Performance et sobriété

Ressources disponibles en bas de page
  • Compresser ses fichiers avant de les mettre en ligne : un outil comme HandBrake (vidéo) ou Audacity (audio) permet de réduire considérablement le poids sans perte perceptible
  • Utiliser preload="metadata" plutôt que preload="auto" pour éviter de télécharger un fichier lourd que l’utilisateur ne lira peut-être pas
  • Privilégier l’hébergement externe (YouTube, Vimeo) pour les vidéos lourdes — votre serveur et vos visiteurs vous remercieront
  • Se poser la question : cette vidéo en autoplay est-elle vraiment nécessaire ? Chaque média pèse sur le temps de chargement et l’empreinte carbone de la page
exercice

Mise en pratique

Objectifs : Intégrer de l’audio et de la vidéo dans une page HTML, gérer la compatibilité et les bonnes pratiques.

Dossier : JOUR 2 - HTML > 01-Media

  • ex-media01-audio.html
  • ex-media02-video.html
  • sons/ (fichiers audio fournis en .mp3 et .ogg)
  • videos/ (fichier vidéo fourni en .mp4)
  • images/apercu-video.jpg

Consignes :

  • Exercice 01 — Audio : Insérez un lecteur audio avec le fichier MP3 fourni. Ajoutez une version OGG pour la compatibilité et un texte de repli avec un lien de téléchargement. Testez l’attribut loop.

  • Exercice 02 — Vidéo : Insérez un lecteur vidéo avec le fichier MP4 fourni. Ajoutez un poster, définissez les dimensions à 640×360, et proposez un texte de repli. Puis, en dessous, intégrez une vidéo YouTube de votre choix via une iframe.

Durée : 30 min

Ressources & références

  • Developper Mozilla | L'élément audioArticle
  • Developper Mozilla | L'élément videoArticle
  • Developper Mozilla | L'élément sourceArticle
  • Can I Use | Compatibilité audio par navigateurOutil
  • Can I Use | Compatibilité video par navigateurOutil
  • Audacity | Logiciel libre de retouche sonoreOutil
  • Sound Fishing | Banque de bruitages gratuitsOutil
  • La Sonothèque | Sons et ambiances libres de droitsOutil
  • VLC | Lecteur et convertisseur multimédiaOutil
  • HandBrake | Encodeur vidéo open sourceOutil
  • Pixabay | Vidéos et musiques libres de droitsOutil
← Précédent La création de formulaires Suivant → Intégrer du CSS à ses pages HTML
Retour à l'accueil de la formation Html5, les bases