HTMLLa balise générale object peut être remplacée par une balise spécifique audio, pour proposer un élément sonore. Outre son nom significatif, l'avantage de cette balise est d'utiliser les ressources du navigateur et de ne pas nécessiter l'appel à un logiciel externe pour sa lecture. Cette balise propose les attributs suivant :

  • src indique la source du contenu, c'est à dire le nom du fichier audio à lire
  • autoplay="autoplay" entraîne un démarrage automatique du son, dès l'affichage de la page.
  • preload permet d'anticiper ou non le chargement du contenu à l'ouverture de la page, de façon à en préparer la diffusion.

Les valeurs possibles sont preload="none" (le fichier ne se télécharge qu'à la lecture), preload="metadata" (seules quelques données associées au fichier sont téléchargées : taille, durée, liste de lecture, etc.) et preload="auto" (chargement automatique du fichier à lire).

  • loop="loop" sert à reboucler en permanence la diffusion.
  • controls="controls" affiche les boutons de contrôle proposés par l'interface du navigateur, comme le volume, pause et reprise, retour au début, avance ou retour rapide, arrêt.
  • mediagroup="..." permet d'associer entre eux différents fichiers audio, en les reliant au même nom de groupe, écrit entre guillemets.

Dans controls="controls" ou loop="loop", la norme demande cette répétition (l'attribut et sa valeur ayant le même nom), bien que les navigateurs interprètent généralement l'attribut seul, comme controls ou loop.

Exemple d'utilisation :

<audio src="morceauxdemusique.mp3" loop="loop" controls="controls">
Votre navigateur ne peut pas afficher ce contenu audio.
</audio>
Interpretation simple de contenus audio

Le texte inscrit entre la balise de début et celle de fin sert d'alternative et sera publié uniquement par les navigateurs qui ignorent cette fonction HTML 5.

Une deuxième syntaxe existe, utilisant une ou plusieurs balises qui proposeront soit un type de décodeur pour la lecteur du contenu, soit plusieurs formats du même contenu à diffuser, de façon à ce que le navigateur en reconnaisse au moins un. Les deux exemples suivant montrent ces possibilités d'utilisation.

<audio controls="controls">
<source src="monmorceaux.mp3 type="audio/mpeg">
<source src="monmorceaux.ogg type="audio/ogg">
Votre navigateur ne peut pas afficher ce contenu audio.
</audio>
Contenu audio proposé dans plusieurs types de codage
<audio>
<source src="monmorceaux.ogg" type="audio/ogg"; codecs=vorbis" />
Votre navigateur ne peut pas afficher ce contenu audio.
</audio>
Contenu audio avec définition d'un codec.

Le W3C ne préconise pas de normes pour l'audio, laissant les navigateurs prendre en compte les formats les plus courants. Les fichiers audio sont en général codés en MP3 ou dans le format libre Ogg Vorbis, qui fournit des fichiers plus compacts pour une qualité identique. Le format Opus, libre et performant du point de vue de la compression des fichiers, a vu le jour en 2012; il commence à être pris en compte par les navigateurs, tout d'abord par Firefox et Chrome dans leurs versions récentes.

La version anglaise de Wikipédia fournit des tableaux indiquant la prise en compte, par les différentes version de navigateurs des formats audio existants.

Une chanson proposée par une balise audio est parfois accompagnée d'une ou plusieurs pistes secondaires, constituées en principe de textes : références d'auteurs, descriptions complémentaires...

Ces contenus sont alors fournis par la balise track, incluse entre le début et la fin de la balise audio associée. Cette balise track possède obligatoirement les deux attributs src="..." (fichier contenant le texte de cette piste) et label="..." (titre de la piste), ainsi que d'autre attributs spécifiques éventuellement :

  • kind="..."

indique le type de contenu fourni par cette piste, avec comme valeurs possible subtitles (sous-titres, retranscription des paroles), captions (titres donnant des informations ponctuelles), chapters (titres des morceaux de musique) et metadata (données à traiter par programme);

  • srclang="..." renseigne la langue de cette piste
  • default="..." s'applique lorsque la piste associée doit être automatiquement diffussée par le lecteur, sauf lorsque l'utilisateur a paramétré son navigateur pour choisir par défaut un autre type de piste, à partir d'une valeur possible de l'attribut kind

Une balise audio peut contenir zéro, une ou plusieurs balises track, suivant le nombre de pistes complémentaires disponibles. Cependant, cette technique ne reste qu'une possibilité théorique, car il faudra attendre son interprétation par les différents navigateurs.