Français

Vidéo et sous-titres · Boîte à outils de sous-titres

WebVTT expliqué : du WebSRT au format de sous-titre W3C pour la vidéo HTML5

· Contexte

sous-titres webvtt formats de fichiers traitement du navigateur

Un fichier de repère simple obtenant un en-tête WebVTT, des paramètres et une connexion de piste de navigateur
Illustration vectorielle originale de ToolAcre

WebVTT a été créé pour que les navigateurs puissent afficher les sous-titres de manière native. Cet article couvre ses origines en tant que WebSRT, en quoi il diffère de SRT, ce que la spécification ajoute et où il est utilisé aujourd'hui.

Pourquoi le navigateur avait besoin de son propre format de sous-titres : l'arrivée de la vidéo native et l'absence de format de piste standard

La vidéo native a donné à une page Web un élément multimédia, mais le texte chronométré avait toujours besoin d'une représentation de fichier interopérable que les navigateurs pouvaient récupérer et analyser. Un fichier informel SRT n'était pas suffisant pour une fonctionnalité de navigateur nécessitant une syntaxe définie, un comportement de repère et des points d'ancrage pour la présentation. WebVTT fournit ce contrat Web tout en conservant la forme reconnaissable du signal et de l'horodatage.

Ce contexte de navigateur explique à la fois sa familiarité et sa structure supplémentaire. Un VTT minimal semble proche de SRT, mais ce n'est pas SRT avec une autre extension. La signature, la ponctuation de l'horodatage et la grammaire des signaux contribuent à décider si le navigateur a reçu WebVTT.

WebSRT et le changement de nom en WebVTT — les premiers travaux du WHATWG et le passage au W3C

Le format a été discuté sous l'ancien nom WebSRT avant de devenir WebVTT, ou Web Video Text Tracks. Cette lignée communique le chemin de conception : commencez par une forme de bloc de sous-titres largement comprise, puis définissez le comportement supplémentaire requis par les médias Web. Cet article évite les dates, les éditeurs nommés et une chronologie détaillée des organismes de normalisation, car ces faits ne sont pas vérifiés par les documents du référentiel utilisés pour les allégations de mise en œuvre.

Pour un développeur front-end, la leçon durable est que WebVTT est une entrée spécifiée dans les fonctionnalités multimédia du navigateur plutôt qu'une convention spécifique au lecteur. L'implémentation doit cibler sa syntaxe actuelle et la tester chez le lecteur consommateur au lieu de dépendre des étiquettes historiques.

Ce que la spécification ajoute par rapport à SRT — l'en-tête WEBVTT, les identifiants de repère, les paramètres de repère et les crochets de style

WebVTT ajoute une signature WEBVTT requise et autorise les identifiants de repère qui n'ont pas besoin d'être numériques. Les paramètres de repère peuvent suivre l'heure de fin pour exprimer l'alignement et le placement, tandis que les blocs NOTE, STYLE et REGION fournissent des métadonnées et des structures de présentation au-delà d'une simple liste de repères SRT. Les crochets de style du navigateur peuvent ensuite répondre aux signaux affichés sans graver de texte dans la vidéo.

ToolAcre implémente un sous-ensemble ciblé. Il préserve les paramètres trouvés après l'horodatage de fin, mais supprime les identifiants de repère et ignore les blocs NOTE, STYLE et REGION lors du chargement. C'est suffisant pour une conversion ordinaire et ce n'est délibérément pas un éditeur sans perte pour le modèle WebVTT complet.

Le point, l'en-tête et UTF-8 — les petites différences qui empêchent un fichier SRT d'être un fichier VTT valide

Trois petits détails séparent un VTT minimal de SRT. La première ligne doit porter la signature WEBVTT, les horodatages utilisent un point avant les millisecondes et le texte doit être UTF-8. ToolAcre détecte VTT en testant la signature tout en tolérant une marque facultative d'ordre d'octet et un espace de début ; le texte sans cette signature est par défaut SRT.

Le sérialiseur écrit la signature et la ponctuation par points plutôt que de conserver ce que la source a utilisé. L'entrée du fichier est lue comme UTF-8. Un SRT codé en héritage peut donc afficher des caractères de remplacement avant la conversion, et la modification de la syntaxe de son conteneur ne peut pas récupérer les octets déjà décodés de manière incorrecte.

Où WebVTT est utilisé : l'élément de piste HTML5, les sous-titres HLS et de nombreuses plates-formes vidéo

WebVTT est le format side-car associé à l'élément de piste vidéo HTML et apparaît dans les systèmes de diffusion Web qui consomment du texte chronométré. Certains flux de travail de streaming et de plateforme utilisent également WebVTT, mais les détails d'acceptation appartiennent à la destination et doivent y être vérifiés plutôt que déduits de l'extension. Un fichier VTT valide peut toujours être servi avec le mauvais type de média ou bloqué par des règles de livraison multi-origines.

La boîte à outils produit une représentation de fichier ; il ne configure pas de page HTML, d'en-têtes de serveur ou de manifeste de streaming. Traitez la conversion comme une étape de la livraison et testez le lecteur réel avec la même URL, les mêmes en-têtes et la même relation d'origine que le public utilisera.

Ce que cela ne couvre pas : le modèle complet de style et de région, que la plupart des fichiers de sous-titres n'utilisent jamais

Le modèle complet de style et de région se trouve en dehors de ce convertisseur. Les sélecteurs de repères complexes, la disposition des régions et les politiques de présentation méritent un outil de création et des tests de navigateur prenant en charge WebVTT. L'analyseur ignore les blocs STYLE et REGION, donc l'envoi d'un tel maître via ce chemin les supprime de l'une ou l'autre sortie plutôt que de les conserver de manière invisible.

L'outil transporte également un paramètre de repère dans la sortie SRT même si SRT n'a aucun mécanisme défini pour agir sur lui. Cette limite documentée est une raison pour conserver le maître VTT d'origine chaque fois que le placement est important, et non une raison pour supposer que chaque destination ignorera le texte supplémentaire de la même manière.

À retenir : un véritable standard pour le Web – comment le Subtitle Toolkit produit le WebVTT qui le suit

WebVTT transforme un modèle de texte chronométré familier en entrée Web définie. La signature l'identifie, la grammaire de l'horodatage est canonique et le modèle de repère peut contenir plus qu'un simple texte séquentiel. Subtitle Toolkit produit le fichier canonique minimal à partir de SRT en analysant les temps en millisecondes entières, puis en écrivant un en-tête WEBVTT, des séparateurs de points et des repères sans lignes d'identification.

Comparez le nombre de repères source et de sortie et lisez tous les problèmes d'analyse avant de joindre le résultat à un lecteur. Si la source s'appuie sur des commentaires, des régions, des blocs de style ou des identifiants, choisissez un flux de travail qui préserve ces fonctionnalités ; un convertisseur ciblé devrait indiquer cette limite plutôt que d'impliquer une fidélité aller-retour complète.