MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

L'élément HTML <audio> est utilisé afin d'intégrer un contenu sonore dans un document. Il peut contenir une ou plusieurs sources audio représentées avec l'attribut src ou l'élément <source>. S'il y a plusieurs sources, l'agent utilisateur choisira celle qui convient le mieux.

Catégories de contenu Contenu de flux, contenu phrasé, contenu intégré.
Si l'attribut controls est utilisé : contenu interactif et contenu tangible.
Contenu autorisé Si l'élément possède un attribut src : zéro ou plusieurs éléments <track>, suivis par du contenu transparent ne contenant pas d'éléments média, c'est-à-dire des éléments qui ne soient pas <audio> ou <video>
Sinon : zéro ou plusieurs éléments <source> suivis par un élément <track>, suivi par du contenu transparent ne contenant pas d'éléments média (ni <audio> ni <video>).
Omission de balises Aucune, la balise d'ouverture et la balise de fermeture sont obligatoires
Parents autorisés Tout élément acceptant du contenu intégré.
Rôles ARIA autorisés application
Interface DOM HTMLAudioElement

Attributs

Comme tous les autres éléments HTML, cet élément possède les attributs universels.

Note : la lecture automatique peut être source de nuisance pour les utilisateurs. Mieux vaut l'éviter lorsque c'est possible ou proposer à l'utilisateur de pouvoir choisir cette option. Cette valeur peut être utile lorsqu'on crée des fichiers audio dont la source sera définie a posteriori.
autoplay
Attribut booléen. Si celui-ci est renseigné (même avec une valeur "false"), l'élément audio sera joué automatiquement dès qu'assez de données seront chargées.
autobuffer Obsolète depuis Gecko 2.0
Attribut booléen. Si il est renseigné, l'élément audio commencera automatiquement à charger les données (même si l'attribut autoplay n'est pas renseigné). Le chargement se poursuit jusqu'à ce que le cache média soit plein, ou que tout le fichier soit téléchargé. Cela ne devrait être utilisé que s'il est attendu que l'utilisateur pourra joue le son; par exemple quand il s'est rendu sur une page en suivant un lien "Jouer ce son". Cet attribut a été retiré de Gecko 2.0 pour être remplacé par l'attribut preload.
buffered
Attribut qui indique le ou les intervalles de temps du média qui ont été mis en mémoire tampon. Cet attribut contient un objet TimeRanges.
controls
Si l'attribut est présent, le navigateur affichera des contrôles pour que l'utilisateur puisse gérer la lecture, le volume, et le déplacement du curseur de lecture.
loop
Attribut booléen. S'il est renseigné, la lecture du fichier se fera en boucle.
mozCurrentSampleOffset
Indique le décalage, en nombre d'échantillons, entre le début du flux audio et le fragment en cours de lecture.
muted
Attribut booléen, indiquant si le son de l'élément audio est initialement être coupé. Sa valeur par défaut est false.
played
Un objet TimeRanges indiquant tous les fragments de l'élément audio qui ont déjà été joués.
preload
Cet attribut indique au navigateur ce que l'auteur du code html pense de l'utilisation optimale de cet élément. Il accepte uniquement les valeurs suivantes :
 
  • none :  l'élément audio ne devrait pas être mis en cache
  • metadata : seules les méta-données (comme la durée) sont préchargées
  • auto : tout le fichier peut être téléchargé, même s'il n'est pas certain que l'utilisateur le lira
  • "" (chaîne de caractères vide) : synonyme de auto
Si cet attribut n'est pas renseigné, la valeur par défaut sera celle du navigateur (chaque navigateur pouvant définir sa propre valeur). Les spécifications recommandent la valeur metadata.
Notes d'utilisation :
  • L'attribut autoplay est prioritaire sur cet attribut. Si le navigateur a besoin de jouer cet élément, il le téléchargera automatiquement
  • La spécification n'impose pas au navigateur de prendre en compte cet attribut. Il n'a qu'une valeur indicative.
src
L'URL du fichier audio à intégrer. Cet attribut suit les spécifications du CORS. Il est optionnel; on peut lui préférer l'élément <source> dans le bloc de l'élément sur lequel il est défini.
volume
Le volume de la partie audio, fournie comme une valeur flottante comprise entre 0.0 (silencieux) et 1.0 (le volume le plus élevé).

Les valeurs de décalage sont définies en nombres flottants, l'unité étant la seconde.

Note : La définition de cette valeur de décalage n'a pas encore été finalisée dans la spécification HTML5 et est donc sujette à changements.

Évènements

Un élément audio peut déclencher plusieurs évènements.

Notes d'utilisation

Il est possible d'intégrer un contenu alternatif entre la balise ouvrante <audio> et la balise fermante </audio> pour afficher du contenu dans les navigateurs qui ne prennent pas en charge l'élément <audio>.

Les fonctionnalités basiques de lecture sont accessibles grâce à l'attribut controls (voir ci-après). Pour effectuer des manipulations plus avancées, on peut utiliser l'API HTML Media et les fonctions spécifiques définies par l'interface HTMLAudioElement.

L'API Web Audio peut être utilisée pour manipuler et générer des flux audio grâce à du code JavaScript. Pours plus d'informations à ce sujet, on pourra consulter la documentation de l'API Web Audio.

Exemples

Utilisation simple

<!-- Simple lecture audio -->
<audio src="http://developer.mozilla.org/@api/deki/files/2926/=AudioTest_(1).ogg" autoplay>
  Votre navigateur ne supporte pas l'élément <code>audio</code>.
</audio>

<!-- Lecture Audio avec sous-titres -->
<audio src="toto.ogg">
  <track kind="captions" src="toto.fr.vtt" srclang="fr" label="Français">
  <track kind="captions" src="toto.sv.vtt" srclang="sv" label="Svenska">
</audio> 

Utilisation de l'élément source

<audio controls="controls">
  Votre navigateur ne prend pas en charge l'élément <code>audio</code>.
  <source src="toto.wav" type="audio/wav">
</audio>

Spécifications

Spécification État Commentaires
WHATWG HTML Living Standard
La définition de '<audio>' dans cette spécification.
Standard évolutif  
HTML5
La définition de '<audio>' dans cette spécification.
Recommendation  

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Edge Internet Explorer Opera Safari
Support simple 3.0 3.5 (1.9.1) [1] (Oui) 9.0 10.5 3.1
Attribut autoplay 3.0 3.5 (1.9.1) (Oui) 9.0 10.5 3.1
Attribut buffered ? 4.0 (2.0) (Oui) ? ? ?
Attribut controls 3.0 3.5 (1.9.1) (Oui) 9.0 10.5 3.1
Attribut loop 3.0 11.0 (11.0) (Oui) 9.0 10.5 3.1
Attribut muted ? 11.0 (11.0) (Oui) ? ? ?
Propriété played ? 15.0 (15.0) (Oui) ? ? ?
Attribut preload 3.0 4.0 (2.0) (Oui) 9.0 Pris en charge avec l'ancien nom : autobuffer 3.1
Attribut src 3.0 3.5 (1.9.1) (Oui) 9.0 10.5 3.1
Attribut volume ? ? (Oui) ? ?  
Fonctionnalité Android Firefox Mobile (Gecko) Edge IE Mobile Opera Mobile Safari Mobile
Support simple ? 1.0 (1.0) [1] (Oui) ? ? ?
Attribut autoplay ? 1.0 (1.0) (Oui) ? ? ?
Attribut buffered ? 4.0 (2.0) (Oui) ? ? ?
Attribut controls ? 1.0 (1.0) (Oui) ? ? ?
Attribut loop ? 11.0 (11.0) (Oui) ? ? ?
Attribut muted ? 11.0 (11.0) (Oui) ? ? ?
Propriété played ? 15.0 (15.0) (Oui) ? ? ?
Attribut preload ? 4.0 (2.0) (Oui) ? ? ?
Attribut src ? 1.0 (1.0) (Oui) ? ? ?
Attribut volume ? ? (Oui) ? ? ?

[1] Pour que l'audio fonctionne avec Gecko, le serveur doit indiquer correctement le type MIME du fichier.

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight, Brah0um, Goofy, EnzDev, marie-ototoi, WSH, louuis, msherefel, tregagnon
 Dernière mise à jour par : SphinxKnight,