SRT - hackathonBnF/FichesFormat GitHub Wiki
Le format SRT (SubRip Text) est un format textuel qui fournit le contenu des sous-titres et leur positionnement temporel vis-à-vis d'une vidéo. C'est un standard de fait, produit à l'origine par le logiciel SubRip qui utilisait des techniques d'OCR pour reconnaître les sous-titres en mode image intégrés dans les vidéos et les DVD. Son histoire, hors des circuits officiels, explique l'absence de spécification formelle et une utilisation libertaire.
Il est extrêmement simple, lisible et éditable par un humain et a connu plusieurs variantes pour ajouter de l'expressivité (en particulier, les balises de formatage et le positionnement spatial).
Malgré son extrême simplicité qui permet une vérification visuelle et une compréhension immédiate pour un humain, son manque de spécification formelle qui autorise plusieurs extensions syntaxiques rend son usage pour une préservation à long terme incertain.
Le format permet d'encoder un seul flux de sous-titres dans une seule langue.
Le format SRT est largement répandu comme format d'échange de sous-titres sur Internet. Il est accepté par toutes les plateformes de streaming, notamment YouTube. De plus, il peut être ajouté à la plupart des logiciels de visualisation de vidéos, notamment VLC.
Ce format est à l'origine du format WebVTT, promu par le W3C.
Depuis la version initiale, les seules évolutions ont concerné l'ajout de style sur le texte via des balises (par analogie avec le HTML), qui peuvent être ignorés par les lecteurs. Le format est donc paradoxalement très stable (CPO-STA).
Le format SRT se présente soit dans un fichier dédié, séparé du contenu vidéo associé, soit embarqué dans un fichier conteneur, notamment MKV (voir cet Internet draft).
Un fichier SRT est une simple concaténation de blocs identiques :
numéro séquentiel du sous-titre
Temps de départ --> temps de fin
Texte du sous-titre (jusqu'à deux lignes)
[ligne vide]
Les temps de départ et de fin sont exprimés en respectant le format HH:MM:SS,sss
(on notera l'utilisation de la virgule pour la séparation décimale, marque de l'origine française du format 😉 )
Le texte des sous-titres est en Unicode soit, le plus souvent, en UTF-8 soit en UTF-16.
Une extension courante permet l'usage des balises <b>, <i>, <s>, <u>
pour formater le texte, ainsi que <font color="">
pour le coloriser.
Le format n'est pas maintenu par un organisme quelconque et il n'y a pas de documentation formelle.
La page Wikipédia de l'outil SubRip en français mais, de façon plus complète, en anglais peuvent servir de base de référence.
Extension : .srt
Type MIME : text/plain
ou application/x-subrip
(variante non officielle)
Registre | Identifiant |
---|---|
Wikidata |
Q9332294 Q105852434 variante en UTF-16 |
Bibliothèque du Congrès | fdd000569 |
PRONOM | fmt/1218 |
Just Solve the File Format Problem | SubRip_text_file_format |
Comme évoqué précédemment, le format est particulièrement simple (CPO-SIM), transparent (CPO-TRA) et indépendant (CPO-AUT).
Comme il s'agit d'un format textuel, il n'est pas très compact (CPO-COM) mais peut être, très facilement et très efficacement, compressé sans pertes par des algorithmes de type Deflate.
Il n'inclut pas de mécanismes de protection (CPO-PRO).
Comme tout format en clair, il est relativement robuste (CPO-ROB) puisqu'il est aisé d'ignorer les parties non interprétables ou de les réparer à la main avec un simple éditeur de texte.
Le format ne définit pas de métadonnées internes.
Le format est identifié par les outils DROID et Unix file.
L'outil d'analyse et d'extraction de métadonnées techniques pour la BnF est MediaInfo
.
Sa production est réalisable avec tous les outils de fabrication ou de manipulation de sous-titres textuels. En particulier, ffmpeg peut le prendre comme flux en entrée ou en sortie.
Ce format est utilisé à la BnF comme format pivot lors des manipulations de fichiers vidéo avec des sous-titres.