WebVTT - hackathonBnF/FichesFormat GitHub Wiki
Le format WebVTT (Web Video Text Tracks) est un format textuel qui fournit le contenu des sous-titres et leur positionnement temporel vis-à-vis d'une vidéo. Il est très répandu sur Internet.
Ce format est une recommandation du W3C et sert du format de référence pour les sous-titres référencés par la balise <track>
du HTML5.
Directement inspiré du format SRT, il est simple, lisible et éditable par un humain.
Le format permet d'encoder un flux de sous-titres multi-voix et multilingues. Les sous-titres peuvent être associés à une langue et à une voix particulières, notamment pour leur définir un style particulier.
Le format WebVTT est directement intégrable dans les pages Web et sa manipulation programmatique ou stylistique sur les navigateurs est complétement définie, ce qui autorise les interactions ou les effets de style (en particulier, par le sélecteur ::cue
). Il est de plus très facile de passer du format SRT au WebVTT et réciproquement.
Les principaux usages envisagés par le W3C et explicités dans l'attribut kind
de la balise <track>
sont :
- Les sous-titres de transcription ou de traduction, typés
subtitles
; - Les sous-titres pour les sourds et malentendants, typés
captions
; - Les descriptions, typés
descriptions
.
Ce format est directement inspiré du SRT.
La seule version disponible ayant le statut de recommandation est la version 1.
Le format WebVTT se présente soit dans un fichier dédié, séparé du contenu vidéo associé, soit embarqué dans un fichier conteneur, notamment MKV (voir cet Internet draft).
Un fichier WebVTT est un fichier texte encodé en UTF-8.
Il possède un en-tête obligatoire (WEBVTT
) suivi d'une zone d'en-tête optionnelle (qui peut porter des styles ou des notes)
et poursuivi par une concaténation de blocs identiques qui portent les sous-titres :
numéro séquentiel du sous-titre
Temps de départ --> temps de fin
Texte du sous-titre (peut être sur plusieurs lignes)
[ligne vide]
Les temps de départ et de fin sont exprimés en respectant le format HH:MM:SS.sss
(attention, c'est la principale différence avec le SRT puisque la séparation décimale est ici un point).
Les textes peuvent être stylés avec des balises <b>, <i>, <s>, <u>
pour formater le texte. Il est possible de définir un positionnement du texte en ajoutant des styles CSS de positionnement sur la ligne des temps.
La balise <v>
permet de spécifier la voix et la balise <lang>
la langue, notamment pour les besoins d'accessibilité.
Le format est maintenu par le W3C qui publie sa recommandation.
Extension : .vtt
Type MIME : text/vtt
Registre | Identifiant |
---|---|
Wikidata | Q3566973 |
Bibliothèque du Congrès | fdd000567 |
PRONOM | fmt/1454 |
Just Solve the File Format Problem | WebVTT |
Contrairement au SRT, le format WebVTT peut devenir complexe si l'on veut utiliser toutes ses possibilités mais un usage basique est possible (CPO-SIM). Il est par ailleurs plutôt transparent (CPO-TRA) et indépendant (CPO-AUT).
Comme il s'agit d'un format textuel, il n'est pas très compact (CPO-COM) mais peut être très facilement et très efficacement compressé sans perte par des algorithmes de type Deflate.
Il n'inclut pas de mécanismes de protection (CPO-PRO).
Comme tout format en clair, il est relativement robuste (CPO-ROB) puisqu'il est aisé d'ignorer les parties non conformes ou de les réparer à la main avec un simple éditeur de texte.
Il est possible d'embarquer des métadonnées puisque la balise <v>
ou que des blocs spécifiques de métadonnées (au format JSON) peuvent être intégrés, par exemple pour embarquer une localisation ou un lien vers des informations complémentaires.
Par ailleurs, il est possible d'ajouter des commentaires libres dans des blocs NOTE
.
Le format est identifié par les outils DROID et Unix file.
L'outil d'analyse et d'extraction de métadonnées techniques pour la BnF est MediaInfo
.
L'outil ffmpeg peut le prendre comme flux en entrée ou en sortie.
La BnF ne collecte pas spécifiquement ce type de fichiers mais il en existe dans ses collections de collecte du Web.