Aller au contenu principal
SubtitleMatrix

Format de sous-titres CSV

Ce que ce format peut exprimer

Style du texte
Texte brut uniquement
Positionnement à l'écran
Non
Minutage karaoké
Non
Sauts de ligne dans un bloc
Oui
Chronologie
Heure de début et de fin pour chaque bloc
Résolution du minutage
1 ms
Minutage stocké en numéros d'image
Non
Texte de droite à gauche
Oui

Exemples

Un fichier CSV typique, et ce qu’on en lit

Fichier

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."

Ce qu'il contient

3 cues, 4 lines of 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.

Outside the cues:
  header     start,end,text
  delimiter  ","

La colonne de droite n’est pas un fichier converti : c’est ce que ce site lit dans le fichier de gauche, et le point de départ de toute conversion de ce fichier.

Un fichier CSV abîmé, et ce qu’on en lit encore

Fichier

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.

Ce qu'il contient

4 cues, 4 lines of text

  00:00:01.000 → 00:00:04.000
    Hello there, friend.
  00:00:05.000 → 00:00:07.000
    Second line.
  00:00:10.000 → 00:00:10.001
    End before start.
  00:00:12.000 → 00:00:14.000
    Unquoted comma in text, right here.

Outside the cues:
  header     id,start,end,note,text
  delimiter  ","

Reported while reading — repaired or skipped, never silently:
  1 × rows whose start time could not be read (they were skipped)
  1 × cues whose end time was not after their start time (they were given a 1ms duration)

Les vrais fichiers arrivent avec un BOM, des fins de ligne Windows, une ligne parasite avant une heure ou une heure illisible. Rien ne lève d’exception : ce qui n’est pas compris est signalé, jamais perdu en silence.

Convertir CSV Spreadsheet vers un autre format

Chacune de ces pages tourne entièrement dans votre navigateur. Les étiquettes indiquent ce que coûte cette direction avant de l'ouvrir.

CSV → JSON : aucune perte, conversion dans le navigateur.

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

CSV → SBV : aucune perte, conversion dans le navigateur.

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

CSV → SMI : aucune perte, conversion dans le navigateur.

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

CSV → SRT : aucune perte, conversion dans le navigateur.

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

CSV → TTML : aucune perte, conversion dans le navigateur.

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

CSV → VTT : aucune perte, conversion dans le navigateur.

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

Convertir vers ce format

Le CSV met les sous-titres en tableau : une ligne d’en-tête, puis une ligne par bloc avec son début, sa fin et son texte. C’est le format qu’on choisit quand quelqu’un doit relire, corriger ou renvoyer des minutages dans Excel ou Google Sheets.

La table ci-dessus est la fiche du format. Les colonnes sont reconnues par leur nom — `start`, `end`, `text` et leurs synonymes — et, sans en-tête, lues dans l’ordre `start`, `end`, `text`. Les heures s’écrivent `00:00:04.126`, et les cellules suivent RFC 4180 : guillemets doublés, champ entre guillemets dès qu’il contient le séparateur, un guillemet ou un saut de ligne.

Ce site écrit le CSV en UTF-8 sans BOM, séparateur virgule, fins de ligne LF. Un Excel en français attend le point-virgule et peut mal lire les accents d’un fichier sans BOM : ouvrez par Données > À partir d’un fichier texte, en choisissant la virgule et l’UTF-8. Rien n’est envoyé.

Questions fréquentes

À quoi sert un fichier CSV de sous-titres ?

À faire passer les minutages par un tableur. Une personne peut lire, corriger et renvoyer le fichier dans Excel ou Google Sheets, sans apprendre la syntaxe d’un format de sous-titres. Une ligne du tableau vaut un bloc.

Comment les colonnes sont-elles reconnues ?

Par leur en-tête, avec des synonymes : `start`, `begin`, `from` ou `in` pour le début, `end`, `stop`, `to` ou `finish` pour la fin, `text`, `subtitle`, `caption` ou `dialogue` pour le texte. Sans en-tête, les colonnes sont lues dans l’ordre `start`, `end`, `text`.

Un CSV peut-il stocker un style ou une position ?

Non. Une cellule contient du texte : une balise qui y traîne s’affiche comme des caractères, pas comme une mise en forme. Les styles, les positions et le karaoké n’ont donc pas de colonne dans le format.

Pourquoi mon CSV s’ouvre-t-il mal dans Excel ?

Deux causes fréquentes : le séparateur et l’encodage. Un Excel français attend le point-virgule alors que ce format utilise la virgule, et un fichier UTF-8 sans BOM peut voir ses accents mal décodés. Importez-le par Données > À partir d’un fichier texte, avec la virgule et l’UTF-8.

Quelles conversions depuis CSV sont sans perte ?

SRT, VTT, SBV, SMI, TTML et JSON : tout ce qu’un CSV sait exprimer, ces formats le savent aussi. La table ci-dessus le montre ligne par ligne ; les autres directions retirent quelque chose, et chaque page nomme sa liste.