<track> : l'élément de piste texte embarquée
============================================

L'élément HTML **`<track>`** est utilisé comme élément fils d'un élément `<audio>` ou `<video>` et permet de fournir une piste texte pour le média (par exemple afin de gérer automatiquement les sous-titres). Les pistes texte utilisées avec cet élément sont formatées selon le format WebVTT (ce sont des fichiers `.vtt`) (WebVTT pour *Web Video Text Tracks*).

Exemple interactif
------------------

|  |  |
| --- | --- |
| Catégories de contenu | Aucune |
| Contenu autorisé | Aucun, cet élément est un élément vide. |
| Omission de balises | Étant un élément vide, la balise de début doit être présente et il ne doit pas y avoir de balise de fin. |
| Parents autorisés | Un élément média avant tout autre contenu de flux. |
| Rôle ARIA implicite | Aucun rôle correspondant |
| Rôles ARIA autorisés | Aucune. |
| Interface DOM | `HTMLTrackElement` (en-US) |

Attributs
---------

À l'instar des autres éléments HTML, cet élément inclut les attributs universels.

`default`

Cet attribut booléen indique que c'est cette piste qui doit être activée par défaut, sauf si les réglages de l'utilisatrice ou l'utilisateur indiquent qu'une autre piste est plus appropriée. Pour un élément média donné, il ne peut y avoir qu'une seule piste avec cet attribut.

`kind`

La façon dont la piste texte doit être utilisée. La valeur par défaut est `subtitles` et si la valeur fournie est incorrecte, l'agent utilisateur doit utiliser la valeur `metadata`. Cet attribut est un attribut à valeur contrainte qui peut prendre l'une des valeurs suivantes :

* `subtitles` (la valeur par défaut)
    + Les sous-titres fournissent une traduction du contenu lorsqu'il ne peut pas être compris par l'utilisatrice ou l'utilisateur. La piste peut, par exemple, contenir le texte espagnol d'un film joué en anglais.
    + Les sous-titres peuvent fournir du contenu supplémentaires, généralement des informations de contexte (par exemple, le texte qui défile au début d'un film Star Wars, la date ou le lieu d'une scène, etc.).
* `captions`
    + La piste est une retranscription voire une traduction de la partie audio du média.
    + La piste peut contenir des informations non-verbales importantes comme des indications musicales ou des effets sonores. La piste peut également indiquer la source du bruit (musique, personnage, etc.).
    + Ce type de piste est adapté aux personnes malentendantes ou lorsque le son est désactivé.
* `descriptions`
    + La piste est une description textuelle du contenu vidéo.
    + Ce type de piste est adapté aux personnes malvoyantes ou lorsque la vidéo ne peut pas être vue.
* `chapters`
    + Les titres de chapitre utilisés lorsque l'utilisatrice ou l'utilisateur navigue au sein du média.
* `metadata`
    + La piste est utilisée par des scripts, elle n'est pas visible pour l'utilisatrice ou l'utilisateur.

`label`

Le titre associé à la piste et qui est affiché par le navigateur lorsque celui-ci liste les pistes disponibles.

`src`

L'adresse du fichier pour la piste (celle du fichier `.vtt`). Cet attribut doit être une URL valide et doit nécessairement être présent dans l'élément. L'URL indiquée doit avoir la même origine à moins que l'élément parent `<audio>` ou `<video>` de l'élément `<track>` possède un attribut `crossorigin`.

`srclang`

La langue dans laquelle est exprimée la piste textuelle. La valeur de cet attribut doit être une balise de langue BCP 47. Si l'attribut `kind` vaut `subtitles,` l'attribut `srclang` doit obligatoirement être défini.

Notes d'utilisation
-------------------

### Types de piste

Le type de donnée fourni par un élément `track` est décrit par l'attribut `kind`. Cet attribut peut prendre une valeur parmi `subtitles`, `captions`, `descriptions`, `chapters` ou `metadata`. L'élément pointe vers un fichier source qui contient du texte avec des annotations temporelles que le navigateur affichera lorsque l'utilisatrice ou l'utilisateur en aura besoin.

Un élément média (`<audio>` ou `<video>`) ne peut pas avoir plusieurs pistes partageant les mêmes valeurs pour les attributs `kind`, `srclang` et `label`.

Exemples
--------

### HTML


```html
<video controls poster="/images/sample.gif">
  <source src="sample.mp4" type="video/mp4" />
  <source src="sample.ogv" type="video/ogv" />
  <track kind="captions" src="sampleCaptions.vtt" srclang="en" />
  <track kind="descriptions" src="sampleDescriptions.vtt" srclang="en" />
  <track kind="chapters" src="chapitres.vtt" srclang="en" />
  <track kind="subtitles" src="soustitres\_de.vtt" srclang="de" />
  <track kind="subtitles" src="soustitres\_en.vtt" srclang="en" />
  <track kind="subtitles" src="soustitres\_ja.vtt" srclang="ja" />
  <track kind="subtitles" src="soustitres\_oz.vtt" srclang="oz" />
  <track kind="metadata" src="keyStage1.vtt" srclang="en" label="Key Stage 1" />
  <track kind="metadata" src="keyStage2.vtt" srclang="en" label="Key Stage 2" />
  <track kind="metadata" src="keyStage3.vtt" srclang="en" label="Key Stage 3" />
  <!-- Contenu alternatif pour les navigateurs qui
 ne prennent pas en charge <video> -->
  <!-- etc. -->
</video>
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # the-track-element |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* Le format WebVTT
* `HTMLMediaElement.textTracks` (en-US)