Convertir SRT en SSA
Ou collez le texte d'un sous-titre
Ce que cette conversion change
1 élément perdu ou à décider
- Précision
la précision du minutage — l'horloge de la sortie est plus grossière, chaque code temporel est donc arrondi au 10 ms le plus proche
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 SRT en SSA, l'ancêtre de l'ASS. Le SSA est un script : il possède un en-tête, une table de styles et des lignes Dialogue dans une section Events. Chaque bloc SRT devient donc une ligne Dialogue rattachée à un style, et les temps sont réécrits au centième de seconde, car le SSA ne connaît pas la milliseconde.
La seule perte de ce sens est la précision : 00:00:04,126 devient 0:00:04.13, soit un déplacement maximal de 5 ms par borne. Le texte, les retours à la ligne et l'ordre des blocs sont conservés, et les balises d'italique et de gras deviennent des codes de surcharge du script.
Un fichier ou une saison entière, dans le navigateur, avec un seul ZIP à la fin.
Exemples
Un fichier SRT typique, converti en SSA
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
[Script Info]
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,{\i1}Whispering{\i0} now.\NAnd a second line.
Dialogue: 0,0:00:06.00,0:00:09.25,Default,,0,0,0,,{\b1}Bold{\b0} statement.
La précision est la seule perte annoncée : tout le reste se compare 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
[Script Info]
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,{\b1}Bold{\b0} and {\i1}italic{\i0}.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,
Dialogue: 0,0:00:08.00,0:00:09.00,Default,,0,0,0,,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
Pourquoi les codes temporels d'un SRT changent-ils en passant au SSA ?
Le SSA stocke le temps au centième de seconde, alors que le SRT le stocke à la milliseconde : 00:00:04,126 s'écrit 0:00:04.13. L'écart maximal est de 5 ms par borne, et rien n'est étiré ni réordonné.
Une table de styles est-elle ajoutée lors de la conversion SRT vers SSA ?
Oui, car une ligne Dialogue SSA doit référencer un style. Le convertisseur écrit un style Default — Arial, taille 20, blanc avec un contour — et chaque ligne s'y rattache ; le style se modifie ensuite dans un éditeur SSA.
Comment un bloc SRT de deux lignes est-il écrit dans le SSA ?
Avec le code de saut de ligne du SSA entre les deux lignes, à l'intérieur d'une seule ligne Dialogue. Les deux lignes gardent donc le même minutage et restent un seul sous-titre.
Où se retrouvent les numéros de blocs du SRT dans le SSA ?
Dans le champ Marked de la ligne Dialogue, qui joue le rôle occupé par le numéro dans le SRT. Ce champ est informatif : l'ordre de lecture suit les temps, pas la numérotation.
Que se passe-t-il pour l'italique et le gras d'un SRT dans le SSA ?
Ils deviennent des codes de surcharge activés puis désactivés autour de la portion concernée. Un éditeur SSA les affiche comme du style, et non comme des balises restées dans le texte.
Que perd le retour SSA vers SRT ?
Le retour a sa propre liste : le style, le positionnement, le karaoké et les constructions propres au script. Un SRT ne peut pas conserver une table de styles ni un code de position, donc ces éléments ne reviennent pas.
Le SSA produit garde-t-il l'encodage du SRT source ?
Non : la sortie est en UTF-8, avec des fins de ligne Unix et sans BOM. Un fichier d'entrée en UTF-16 ou en encodage Windows est décodé à la lecture, puis réécrit dans cette forme normalisée.