1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
|
---
title: '<audio> : l''élément audio embarqué'
slug: Web/HTML/Element/audio
tags:
- Element
- HTML
- Multimedia
- Reference
- Web
translation_of: Web/HTML/Element/audio
---
<div>{{HTMLRef}}</div>
<p>L'élément HTML <strong><code><audio></code></strong> 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 <code>src</code> ou l'élément {{HTMLElement("source")}}. S'il y a plusieurs sources, l'agent utilisateur choisira celle qui convient le mieux.</p>
<div>{{EmbedInteractiveExample("pages/tabbed/audio.html","tabbed-standard")}}</div>
<p class="hidden">Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> et à envoyer une <em>pull request</em> !</p>
<p>L'exemple qui précède illustre le fonctionnement simple d'un élément <code><audio></code>, à la façon de ce qui peut être fait pour une image avec l'élément {{htmlelement("img")}} : on inclut un chemin vers la ressource grâce à l'attribut <code>src</code> et on peut ajouter d'autres attributs afin de fournir d'autres informations : lecture automatique, lecture en boucle, utilisation des contrôles par défaut du navigateur, etc</p>
<p>Le contenu présent à l'intérieur des balises <code><audio></audio></code> est affiché comme contenu alternatif lorsque le navigateur ne prend pas en charge l'élément.</p>
<p>Les navigateurs ne prennent pas en charge l'ensemble des <a href="/fr/docs/Web/Media/Formats/Audio_codecs">formats audio</a> et plusieurs sources peuvent être fournies en utilisant des éléments {{htmlelement("source")}} imbriqués. Ainsi, le navigateur sélectionnera la première ressource dont il prend en charge le format:</p>
<pre class="brush: html"><audio controls>
<source src="monAudio.mp3" type="audio/mpeg">
<source src="monAudio.ogg" type="audio/ogg">
<p>Votre navigateur ne prend pas en charge l'audio HTML. Voici un
un <a href="myAudio.mp4">lien vers le fichier audio</a> pour le
télécharger.</p>
</audio></pre>
<p>Autres notes :</p>
<ul>
<li>Si l'attribut <code>controls</code> n'est pas indiqué, le lecteur audio n'incluera pas les contrôles par défaut du navigateur. Il est possible de créer des contrôles spécifiques en JavaScript grâce à l'API {{domxref("HTMLMediaElement")}}.</li>
<li>Afin d'avoir un contrôle précis sur le contenu audio, l'API <code>HTMLMediaElement</code> déclenche de nombreux<a href="/fr/docs/Web/Guide/DOM/Events/evenement_medias"> évènements</a>.</li>
<li>Il est aussi possible d'utiliser <a href="/fr/docs/Web/API/Web_Audio_API">lAPI Web Audio</a> afin de générer et de manipuler des flux audio en JavaScript.</li>
<li>Les éléments <code><audio></code> ne peuvent pas avoir de sous-titres contrairement aux éléments <code><video></code>. Pour plus d'informations et certaines méthodes de contournements, voir <a href="https://www.iandevlin.com/blog/2015/12/html5/webvtt-and-audio">WebVTT et l'audio</a>, écrit par Ian Devlin.</li>
</ul>
<p>Pour apprendre comment utiliser les éléments liés aux médias, nous vous conseillons de lire <a href="/fr/docs/Apprendre/HTML/Multimedia_and_embedding/Contenu_audio_et_video">le tutoriel sur le contenu audio et vidéo</a>.</p>
<h2 id="Attributs">Attributs</h2>
<p>Comme tous les autres éléments HTML, cet élément possède <a href="/fr/docs/Web/HTML/Attributs_universels">les attributs universels</a>.</p>
<dl>
<dt>{{htmlattrdef("autoplay")}}</dt>
<dd>
<p>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.</p>
<div class="note"><strong>Note :</strong> 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 <em>a posteriori</em>.</div>
</dd>
<dt>{{htmlattrdef("controls")}}</dt>
<dd>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.</dd>
<dt>{{htmlattrdef("crossorigin")}}</dt>
<dd>Cet attribut à valeur contrainte indique comment le CORS doit être utilisé afin de récupérer la ressource. <a href="/en-US/docs/CORS_Enabled_Image">Les ressources utilisant le CORS</a> peuvent être réutilisées dans un élément {{HTMLElement("canvas")}} sans corrompre celui-ci. Les valeurs autorisées pour cet attribut sont :
<dl>
<dt><code>anonymous</code></dt>
<dd>Une requête multi-origine est envoyée sans information d'authentification. Autrement dit, l'en-tête HTTP {{HTTPHeader("Origin")}} est envoyé sans cookie, certificat X.509 ou sans authentification HTTP. Si le serveur ne fournit pas d'information d'authentification au site d'origine (sans indiquer l'en-tête {{HTTPHeader("Access-Control-Allow-Origin")}}), la ressource sera corrompue (<em>tainted</em>) et son utilisation sera restreinte.</dd>
<dt><code>use-credentials</code></dt>
<dd>Une requête multi-origine est envoyée avec une information d'authentification (c'est-à-dire avec un en-tête HTTP <code>Origin:</code> qui contient un cookie, un certificat ou effectuant une authentification HTTP).</dd>
</dl>
Lorsque cet attribut n'est pas présent, la ressource est récupérée sans requête CORS et empêche ainsi d'utiliser la ressource dans un {{HTMLElement('canvas')}}. Si la valeur fournie est invalide, elle sera considérée comme <code>anonymous</code>. Voir <a href="/fr/docs/Web/HTML/Reglages_des_attributs_CORS">Paramétrage des attributs relatifs au CORS</a> pour plus d'informations.</dd>
<dt>{{htmlattrdef("loop")}}</dt>
<dd>Attribut booléen. S'il est renseigné, la lecture du fichier se fera en boucle.</dd>
<dt>{{htmlattrdef("muted")}}</dt>
<dd>Attribut booléen, indiquant si le son de l'élément audio est initialement coupé. Sa valeur par défaut est <code>false</code>.</dd>
<dt>{{htmlattrdef("preload")}}</dt>
<dd>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 :<br>
<ul>
<li><code>none</code> : l'élément audio ne devrait pas être mis en cache</li>
<li><code>metadata</code> : seules les méta-données (comme la durée) sont préchargées</li>
<li><code>auto</code> : tout le fichier peut être téléchargé, même s'il n'est pas certain que l'utilisateur le lira</li>
<li><code>"" </code>(chaîne de caractères vide) : synonyme de <code>auto</code></li>
</ul>
La valeur par défaut peut varier d'un navigateur à l'autre. Les spécifications recommandent la valeur <code>metadata</code>.</dd>
</dl>
<div class="note"><strong>Notes d'utilisation :</strong>
<ul>
<li>L'attribut <code>autoplay</code> est prioritaire sur cet attribut. Si le navigateur a besoin de jouer cet élément, il le téléchargera automatiquement</li>
<li>La spécification n'impose pas au navigateur de prendre en compte cet attribut. Il n'a qu'une valeur indicative.</li>
</ul>
</div>
<dl>
<dt>{{htmlattrdef("src")}}</dt>
<dd>L'URL du fichier audio à intégrer. Cet attribut suit les <a href="/fr/docs/HTTP/Access_control_CORS">spécifications du CORS</a>. Il est optionnel; on peut lui préférer l'élément {{HTMLElement("source")}} dans le bloc de l'élément sur lequel il est défini.</dd>
</dl>
<h2 id="Évènements">Évènements</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">Nom</th>
<th scope="col">Condition du déclenchement</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{Event("audioprocess")}}</td>
<td>La mémoire tampon en entrée d'un {{DOMxRef("ScriptProcessorNode")}} peut désormais être traité.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.canplay_event", 'canplay')}}</td>
<td>Le navigateur peut lire le média mais estime que trop peu de données ont été chargées pour lire le média jusqu'à sa fin (il faudra vraisemblablement un arrêt pour un chargement en mémoire tampon).</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.canplaythrough_event", 'canplaythrough')}}</td>
<td>Le navigateur estime qu'il peut lire le média jusqu'à sa fin, sans avoir à interrompre la lecture par du chargement en mémoire tampon.</td>
</tr>
<tr>
<td>{{Event("complete")}}</td>
<td>Le rendu d'un {{DOMxRef("OfflineAudioContext")}} est terminé.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.durationchange_event", 'durationchange')}}</td>
<td>L'attribut <code>duration</code> a été mis à jour.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.emptied_event", 'emptied')}}</td>
<td>Le média est devenu vide. Cela peut par exemple se produire lorsque le média a déjà été (partiellement ou complètement) chargé et que la méthode <a href="/fr/docs/Web/API/HTMLMediaElement/load" rel="internal"><code>load()</code></a> est invoquée pour le recharger.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.ended_event", 'ended')}}</td>
<td>La lecture a été interrompue car la fin du média est atteinte.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.loadeddata_event", 'loadeddata')}}</td>
<td>La première <em>frame</em> du média a été chargée.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.loadedmetadata_event", 'loadedmetadata')}}</td>
<td>Les métadonnées ont été chargées.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.pause_event", 'pause')}}</td>
<td>La lecture a été mise en pause.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.play_event", 'play')}}</td>
<td>La lecture a démarré.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.playing_event", 'playing ')}}</td>
<td>La lecture est prête à être lancée après avoir été mise en pause ou interrompue pour un chargement en mémoire de données.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.ratechange_event", 'ratechange')}}</td>
<td>La vitesse de lecture a changé.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.seeked_event", 'seeked')}}</td>
<td>Une opération de déplacement du curseur de lecture (<em>seek</em>) est terminée.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.seeking_event", 'seeking')}}</td>
<td>Une opération de déplacement du curseur de lecture (<em>seek</em>) a été initiée.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.stalled_event", 'stalled')}}</td>
<td>L'agent utilisateur tente de récupérer les données associées au média mais les données ne parviennent pas.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.suspend_event", 'suspend')}}</td>
<td>Le chargement des données du média ont été suspendues.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.timeupdate_event", 'timeupdate')}}</td>
<td>Le temps décrit par l'attribut <code>currentTime</code> a été mis à jour.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.volumechange_event", 'volumechange')}}</td>
<td>Le volume a été modifié.</td>
</tr>
<tr>
<td>{{domxref("HTMLMediaElement.waiting_event", 'waiting')}}</td>
<td>La lecture a été interrompue en raison d'un manque temporaire de données.</td>
</tr>
</tbody>
</table>
<h2 id="Notes_d'utilisation">Notes d'utilisation</h2>
<h3 id="Mise_en_forme_avec_CSS">Mise en forme avec CSS</h3>
<p>L'élément <code><audio></code> n'a aucun affichage intrinsèque en dehors des contrôles par défaut du navigateur qui sont affichés lorsque l'attribut booléen <code>controls</code> est présent.</p>
<p>Les contrôles par défaut sont affichés avec {{cssxref("display")}} qui vaut <code>inline</code> par défaut et il est possible de changer cette valeur en <code>block</code> dans une feuille de style afin de pouvoir placer le contrôle au sein de la disposition, à moins de vouloir le placer en incise.</p>
<p>Les contrôles par défaut peuvent être mis en forme grâce à des propriétés qui influent sur l'ensemble du bloc. On peut ainsi utiliser {{cssxref("border")}}, {{cssxref("border-radius")}}, {{cssxref("padding")}}, {{cssxref("margin")}}, etc. Toutefois, il n'est pas possible de mettre en forme chacun des composants individuel du contrôle (on ne peut pas, par exemple, modifier la taille d'un des boutons ou leurs icones). Chaque navigateur peut avoir des contrôles par défaut qui soient différents.</p>
<p>Pour obtenir un aspect identique dans les différents navigateurs, il vous faudra créer vos propres contrôles afin de les baliser et de les mettre en forme à votre convenance puis d'utiliser JavaScript et l'API {{domxref("HTMLMediaElement")}} pour manipuler les différentes fonctionnalités.</p>
<p><a href="/fr/docs/Web/Apps/Fundamentals/Audio_and_video_delivery/Video_player_styling_basics">Le guide sur la mise en forme des lecteurs vidéo</a> fournit quelques techniques utiles, bien qu'écrit à propos de l'élément <code><video></code>, certains concepts peuvent tout à fait s'appliquer aux éléments <code><audio></code>.</p>
<h3 id="Détecter_l'ajout_et_la_suppression_de_pistes">Détecter l'ajout et la suppression de pistes</h3>
<p>Il est aussi possible de détecter lorsque des pistes sont ajoutées et supprimées sur un élément <code><audio></code> en écoutant les évènements {{event("addtrack")}} et {{event("removetrack")}}. Toutefois, ces évènements ne sont pas directement envoyés sur l'élément <code><audio></code> mais sur l'objet représentant la liste de pistes de l'élément <code><audio></code> et rattaché à l'élément {{domxref("HTMLMediaElement")}}.</p>
<dl>
<dt>{{domxref("HTMLMediaElement.audioTracks")}}</dt>
<dd>Un objet {{domxref("AudioTrackList")}} contenant l'ensemble des pistes audio associées à l'élément. Un écouteur <code>addtrack</code> peut être associé à l'objet afin d'alerter lorsque de nouvelles pistes audio sont ajoutées à l'élément.</dd>
<dt>{{domxref("HTMLMediaElement.videoTracks")}}</dt>
<dd>Un écouteur <code>addtrack</code> peut être ajouté à cet objet {{domxref("VideoTrackList")}} afin d'alerter lorsque de nouvelles pistes vidéo sont ajoutées à l'élément.</dd>
<dt>{{domxref("HTMLElement.textTracks")}}</dt>
<dd>Un écouteur <code>addtrack</code> peut être ajouté à cet objet {{domxref("TextTrackList")}} afin d'alerter lorsque de nouvelles pistes de texte sont ajoutées à l'élément.</dd>
</dl>
<div class="note">
<p><strong>Note :</strong> Bien qu'on parle ici d'un élément <code><audio></code>, il est possible qu'un tel élément possède des pistes vidéo et des pistes texte bien que la cohérence des interfaces puisse être mise à mal.</p>
</div>
<p>Ainsi, on pourra utiliser un fragment de code analogue à celui qui suit pour détecter si de nouvelles pistes sont ajoutées ou supprimées d'un élément <code><audio></code> :</p>
<pre class="brush: js">var elem = document.querySelector("audio");
elem.audioTrackList.onaddtrack = function(event) {
trackEditor.addTrack(event.track);
};
elem.audioTrackList.onremovetrack = function(event) {
trackEditor.removeTrack(event.track);
};
</pre>
<p>Ce code permet de surveiller lorsque de nouvelles pistes audio sont ajoutées et supprimées. Lorsque c'est le cas, une fonction (non décrite ici) est invoquée afin de mettre à jour l'éditeur présenté à l'utilisateur avec la liste des pistes disponibles.</p>
<p>Il est aussi possible d'utiliser {{domxref("EventTarget.addEventListener", "addEventListener()")}} afin d'écouter les évènements {{event("addtrack")}} et {{event("removetrack")}}.</p>
<h2 id="Exemples">Exemples</h2>
<h3 id="Utilisation_simple">Utilisation simple</h3>
<pre class="brush: html"><!-- 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>
</pre>
<h3 id="Utilisation_de_l'élément_<source>">Utilisation de l'élément <code><source></code></h3>
<pre class="brush: html"><audio controls="controls">
<source src="toto.wav" type="audio/wav">
Votre navigateur ne prend pas en charge l'élément <code>audio</code>.
</audio>
</pre>
<h3 id="Utilisation_de_plusieurs_éléments_<source>">Utilisation de plusieurs éléments <code><source></code></h3>
<p>Dans l'exemple qui suit, le navigateur essaiera de jouer le premier fichier correspondant au premier élément (celui avec le codec Opus) : s'il peut le lire, il n'interprète pas les suivants ; s'il ne peut pas le lire, il tente de lire le deuxième puis, si ce n'est toujours pas possible, le troisième (au format MP3) :</p>
<pre class="brush: html"><audio controls="">
<source src="toto.opus" type="audio/ogg; codecs=opus"/>
<source src="toto.ogg" type="audio/ogg; codecs=vorbis"/>
<source src="toto.mp3" type="audio/mpeg"/>
</audio></pre>
<h2 id="Accessibilité">Accessibilité</h2>
<p>Les éléments audio contenant des dialogues parlés doivent fournir des sous-titres et des transcriptions qui décrivent précisément le contenu. Les sous-titres permettent aux personnes souffrant de troubles auditifs ou ne pouvant pas utiliser le son de l'appareil de lire le fichier. Les transcriptions permettent aux personnes ayant besoin de plus de temps pour lire le contenu d'utiliser un format plus adéquat.</p>
<p>Si un service de sous-titre automatique est utilisé, il est nécessaire de vérifier le contenu généré afin de s'assurer qu'il correspond correctement à la source audio.</p>
<p>En plus des dialogues, les sous-titres et transcriptions devraient également permettre d'identifier les musiques et effets sonores qui véhiculent des informations importantes (dont l'émotion et le ton) :</p>
<pre>1
00:00:00 --> 00:00:45
[Musique avec des trompettes sonnantes]
2
00:00:46 --> 00:00:51
Elle est où la poulette ?
16
00:00:52 --> 00:01:02
[sur un ton énervé] Vous rendez la poulette ou c'est plus vous qui donnez à manger aux lapins ?
</pre>
<ul>
<li><a href="/en-US/docs/Plugins/Flash_to_HTML5/Video/Subtitles_captions">Sous-titrage sur le web</a></li>
<li><a href="/fr/docs/Web/API/WebVTT_API">Web Video Text Tracks Format (WebVTT)</a></li>
<li><a href="https://webaim.org/techniques/captions/"><em>WebAIM: Captions, Transcripts, and Audio Descriptions</em> (en anglais)</a></li>
<li><a href="/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable#Guideline_1.2_—_Providing_text_alternatives_for_time-based_media">Comprendre les règles WCAG 1.2</a></li>
<li><a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/media-equiv-av-only-alt.html"><em>Understanding Success Criterion 1.2.1 | W3C Understanding WCAG 2.0</em> (en anglais)</a></li>
<li><a href="https://www.w3.org/TR/UNDERSTANDING-WCAG20/media-equiv-captions.html"><em>Understanding Success Criterion 1.2.2 | W3C Understanding WCAG 2.0</em> (en anglais)</a></li>
</ul>
<h2 id="Résumé_technique">Résumé technique</h2>
<table class="properties">
<tbody>
<tr>
<th scope="row"><dfn><a href="/fr/docs/Web/HTML/Catégorie_de_contenu">Catégories de contenu</a></dfn></th>
<td><a href="/fr/docs/Web/HTML/Catégorie_de_contenu#Contenu_de_flux">Contenu de flux</a>, <a href="/fr/docs/Web/HTML/Catégorie_de_contenu#Contenu_phras.C3.A9">contenu phrasé</a>, <a href="/fr/docs/Web/HTML/Catégorie_de_contenu#Contenu_int.C3.A9gr.C3.A9">contenu intégré</a>.<br>
Si l'attribut {{htmlattrxref("controls", "audio")}} est utilisé : <a href="/fr/docs/Web/HTML/Catégorie_de_contenu#Contenu_interactif">contenu interactif</a> et <a href="/fr/docs/Web/HTML/Catégorie_de_contenu#Contenu_interactif">contenu tangible</a>.</td>
</tr>
<tr>
<th scope="row"><dfn>Contenu autorisé</dfn></th>
<td>Si l'élément possède un attribut {{htmlattrxref("src", "audio")}} : zéro ou plusieurs éléments {{HTMLElement("track")}}, suivis par du contenu transparent ne contenant pas d'éléments média, c'est-à-dire des éléments qui ne soient pas {{HTMLElement("audio")}} ou {{HTMLElement("video")}}<br>
Sinon : zéro ou plusieurs éléments {{HTMLElement("source")}} suivis par un élément {{HTMLElement("track")}}, suivi par du contenu transparent ne contenant pas d'éléments média (ni {{HTMLElement("audio")}} ni {{HTMLElement("video")}}).</td>
</tr>
<tr>
<th scope="row"><dfn>Omission de balises</dfn></th>
<td>{{no_tag_omission}}</td>
</tr>
<tr>
<th scope="row"><dfn>Parents autorisés</dfn></th>
<td>Tout élément acceptant du contenu intégré.</td>
</tr>
<tr>
<th scope="row">Rôles ARIA autorisés</th>
<td>{{ARIARole("application")}}</td>
</tr>
<tr>
<th scope="row">Interface DOM</th>
<td>{{domxref("HTMLAudioElement")}}</td>
</tr>
</tbody>
</table>
<h2 id="Spécifications">Spécifications</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">Spécification</th>
<th scope="col">État</th>
<th scope="col">Commentaires</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{SpecName('HTML WHATWG', 'embedded-content.html#the-audio-element', '<audio>')}}</td>
<td>{{Spec2('HTML WHATWG')}}</td>
<td></td>
</tr>
<tr>
<td>{{SpecName('HTML5 W3C', 'embedded-content-0.html#the-audio-element', '<audio>')}}</td>
<td>{{Spec2('HTML5 W3C')}}</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
<div class="hidden">Ce tableau de compatibilité a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à envoyer une <em>pull request</em> sur <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a>.</div>
<p>{{Compat("html.elements.audio")}}</p>
<h2 id="Voir_aussi">Voir aussi</h2>
<ul>
<li><a href="/fr/docs/Web/Media/Formats/Audio_codecs">Guide sur les codecs audio utilisés sur le Web</a></li>
<li><a href="/fr/docs/Web/HTML/formats_media_support">Formats de média pris en charge par les éléments <code>audio</code> et <code>video</code></a></li>
<li><a href="/fr/docs/Web/API/Web_Audio_API">API Web Audio</a></li>
<li>{{domxref("HTMLAudioElement")}}</li>
<li><a href="/fr/docs/Mozilla/Tech/XPCOM/Reference/Interface/NsIDOMHTMLMediaElement"><code>nsIDOMHTMLMediaElement</code></a></li>
<li>{{htmlelement("source")}}</li>
<li>{{htmlelement("video")}}</li>
<li><a href="/fr/docs/Web/HTML/Utilisation_d'audio_et_video_en_HTML5">Utiliser les éléments HTML5 <code>audio</code> et <code>video</code></a></li>
<li>L'élément <code>audio</code> selon <a href="https://www.whatwg.org/specs/web-apps/current-work/#audio">la spécification HTML5</a></li>
<li><a href="/fr/Apps/Fundamentals/Audio_and_video_delivery/Cross-browser_audio_basics">Utiliser des médias audio pour les différents navigateurs</a></li>
</ul>
|