Convertir CSV 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.
Cette page convertit un tableau CSV en WebVTT. Chaque ligne devient un bloc avec ses bornes `00:00:04.126 --> 00:00:06.250` et son texte, sous l’en-tête `WEBVTT`.
CSV et VTT notent tous deux la milliseconde : rien n’est arrondi ni décalé. Le tableau ne porte ni styles, ni positions, ni karaoké, et le VTT n’en reçoit pas. La liste ci-dessus est vide, parce qu’aucune capacité du CSV ne manque au WebVTT.
Un fichier ou une saison entière : la file les traite dans l’ordre et les résultats descendent ensemble. Aucun envoi, aucun compte.
Exemples
Un fichier CSV typique, converti en VTT
Entrée
start,end,text
00:00:01.000,00:00:03.500,The quick brown fox.
00:00:04.000,00:00:06.250,"Jumps over, the lazy dog."
00:00:07.000,00:00:09.000,"Two lines here.
And a second one."
Sortie
WEBVTT
00:00:01.000 --> 00:00:03.500
The quick brown fox.
00:00:04.000 --> 00:00:06.250
Jumps over, the lazy dog.
00:00:07.000 --> 00:00:09.000
Two lines here.
And a second one.
Rien n’est perdu ici : les bornes et les lignes du tableau se retrouvent à l’identique dans les blocs WebVTT.
La même conversion sur une entrée abîmée
Entrée
id,start,end,note,text
1,00:00:01,000,00:00:04,000,cue one,"Hello there, friend."
2,00:00:05.000,00:00:07.000,cue two,Second line.
bad,notatime,00:00:09.000,cue three,Unreadable start.
4,00:00:10.000,00:00:09.000,cue four,End before start.
5,00:00:12.000,00:00:14.000,cue five,Unquoted comma in text, right here.
Sortie
WEBVTT
1
00:00:01.000 --> 00:00:04.000
Hello there, friend.
2
00:00:05.000 --> 00:00:07.000
Second line.
4
00:00:10.000 --> 00:00:10.001
End before start.
5
00:00:12.000 --> 00:00:14.000
Unquoted comma in text, right here.
C’est le genre de dégâts des vrais fichiers : fins de ligne mélangées, espaces parasites, champs vides. Comparez avec l’exemple propre ci-dessus pour voir ce que le lecteur pardonne.
Questions fréquentes
Quel fichier WebVTT sort d’un tableau CSV ?
À un fichier WebVTT : l’en-tête `WEBVTT`, puis un bloc par ligne du tableau avec un horodatage à trois décimales et le texte. Aucune ligne d’identifiant n’est ajoutée.
Les heures d’un CSV sont-elles exactes dans le VTT ?
Oui. Le CSV et le VTT descendent tous deux à la milliseconde : `00:00:04.126` sort tel quel. Ni arrondi ni décalage.
Une cellule CSV de plusieurs lignes reste-t-elle groupée en VTT ?
Sur plusieurs lignes dans le même bloc, l’une sous l’autre. Le regroupement est conservé et le lecteur les affiche ensemble.
Le VTT produit depuis un CSV contient-il des réglages de cue ?
Non. Le CSV n’apporte aucune position, donc aucun `align:` ni `position:` n’est écrit. Le bloc se réduit à l’horodatage et au texte.
Puis-je revenir d’un VTT vers le CSV d’origine ?
Oui, et c’est la direction avec perte : styles, position et contenu propre au format n’ont pas de colonne. Ce sens-ci ne retire rien, le coût n’apparaît donc qu’au retour.