Aller au contenu principal
SubtitleMatrix

Convertir SRT en VTT

Ou collez le texte d'un sous-titre

Ce que cette conversion change

Rien n'est perdu dans ce sens — chaque fonctionnalité du format source a un équivalent dans le format cible.

Ce rapport de pertes vient de la matrice de capacités de ces deux formats, pas du fichier particulier que vous avez chargé. Un fichier précis peut perdre davantage s'il utilise des fonctionnalités que le format autorise mais que la matrice ne modélise pas.

Un fichier SRT et un fichier WebVTT portent souvent les mêmes sous-titres dans deux enveloppes différentes. Cette page passe de l'une à l'autre : la chronologie, le texte des blocs, les retours à la ligne et les balises en ligne restent intacts ; seule la syntaxe qui les entoure change. Chaque code temporel SRT de la forme 00:00:01,000 devient 00:00:01.000, parce que le WebVTT écrit un point là où le SRT écrit une virgule, et le fichier reçoit la ligne WEBVTT que les lecteurs exigent en tête.

Les numéros de blocs sont conservés. Le WebVTT lit le nombre qui précède un bloc comme un identifiant facultatif, ce qui permet de retrouver le même sous-titre dans les deux versions. Une entrée abîmée passe sans erreur : BOM, fins de ligne Windows, heure à un chiffre ou bloc vide sont lus, puis réécrits dans une structure propre.

Un fichier ou une saison entière : la file traite les fichiers dans l'ordre, peut être arrêtée en cours de route et rend un seul ZIP. Rien n'est téléversé, la conversion se fait dans le navigateur.

Exemples

Un fichier SRT typique, converti en VTT

Entrée

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

Sortie

WEBVTT

1
00:00:01.000 --> 00:00:03.500
Hello there.

2
00:00:03.500 --> 00:00:06.000
<i>Whispering</i> now.
And a second line.

3
00:00:06.000 --> 00:00:09.250
<b>Bold</b> statement.

Rien n'est écarté ici : les deux colonnes se comparent ligne par ligne.

La même conversion sur une entrée mal formée

Entrée

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

Sortie

WEBVTT

1
00:00:01.000 --> 00:00:03.500
<b>Bold</b> and <i>italic</i>.

2
00:00:03.500 --> 00:00:06.000

3
00:00:08.000 --> 00:00:09.000
Last one.

C'est le genre de dégâts que portent les vrais fichiers : fins de ligne mélangées, espaces parasites, champs vides. Comparez avec l'exemple propre ci-dessus pour voir ce que l'analyseur pardonne.

Questions fréquentes

Que deviennent les codes temporels d'un SRT quand le fichier devient un VTT ?

Ils gardent la même valeur à la milliseconde : 00:00:01,250 en SRT s'écrit 00:00:01.250 en VTT. Seul le caractère entre les secondes et les millisecondes change, la virgule du SRT cédant la place au point du WebVTT.

Les numéros de bloc SRT survivent-ils dans le VTT ?

Oui. Le WebVTT accepte un identifiant libre avant chaque bloc ; les nombres 1, 2, 3 du SRT y deviennent donc des identifiants, sans rôle pour la lecture mais utiles pour comparer les deux fichiers côte à côte.

Les balises italique et gras d'un SRT restent-elles dans le VTT ?

Elles passent telles quelles. Les deux formats utilisent des balises entre chevrons dans le texte du bloc, donc i et b restent i et b ; le WebVTT ajoute seulement la possibilité de u et de font color.

Pourquoi le fichier VTT commence-t-il par WEBVTT ?

Parce que c'est la première ligne du format : un fichier qui ressemble au WebVTT mais ne commence pas par ce mot est refusé par les lecteurs. Le SRT n'a aucun en-tête, d'où cette ligne ajoutée à la conversion.

Un bloc SRT sur deux lignes donne-t-il un ou deux blocs VTT ?

Un seul bloc VTT, avec le même retour à la ligne à l'intérieur. Le WebVTT sépare les blocs par une ligne vide, pas par un numéro, donc la paire de lignes reste un seul sous-titre.

Que se passe-t-il si mon SRT est dans un autre encodage ?

Il est décodé à la lecture, puis écrit en UTF-8 avec des fins de ligne Unix et sans BOM. Le panneau de résultat signale le décodage ; le VTT produit est toujours dans cet encodage normalisé.

Outils associés