Convertir TXT en TTML
Ou collez le texte d'un sous-titre
Options
Utilisée quand la source n'a pas d'heures de fin (texte brut, LRC). La chronologie de la sortie est ici générée plutôt que convertie : c'est donc ce nombre que vous obtiendrez.
Ce que cette conversion change
1 élément perdu ou à décider
- Minutage
la chronologie elle-même — la source n'enregistre aucun minutage, celle de la sortie est donc générée plutôt que convertie
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 texte brut en TTML. Chaque ligne non vide devient un élément `<p>` avec `begin` et `end` calculés à partir de zéro et de la durée réglée, dans un `<body>`, avec une déclaration XML en tête.
Le TTML sait exprimer la mise en forme et la disposition ; le TXT n’en apporte aucune, et son minutage n’existe pas. La liste ci-dessus nomme donc le minutage comme perdu : il est fabriqué ici plutôt que converti. Elle vient des capacités, pas de votre fichier.
La durée par ligne se règle en millisecondes. Un fichier ou une saison : la file les traite dans l’ordre et les résultats descendent dans un ZIP. Aucun envoi.
Exemples
Un fichier texte typique, converti en TTML
Entrée
The quick brown fox jumps over the lazy dog.
Second paragraph, first line.
Second paragraph, second line.
Sortie
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<body>
<p begin="00:00:00.000" end="00:00:02.000">The quick brown fox jumps over the lazy dog.</p>
<p begin="00:00:02.000" end="00:00:04.000">Second paragraph, first line.</p>
<p begin="00:00:04.000" end="00:00:06.000">Second paragraph, second line.</p> </body>
</tt>
Dans cette sortie, la chronologie est inventée : chaque `<p>` reçoit des bornes calculées ici. Le texte correspond ligne pour ligne.
La même conversion sur une entrée abîmée
Entrée
Hello world.
Second block.
Sortie
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<body>
<p begin="00:00:00.000" end="00:00:02.000">Hello world.</p>
<p begin="00:00:02.000" end="00:00:04.000">Second block.</p> </body>
</tt>
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
Comment une ligne d’un TXT devient-elle un élément p dans le TTML ?
Elle devient un `<p begin="00:00:00.000" end="00:00:02.000">` dans un `<body>`, sous une déclaration XML. Les bornes viennent du calcul : zéro pour la première ligne, puis la durée réglée pour chacune des suivantes.
Le TTML produit depuis un TXT contient-il un en-tête de style ?
Un en-tête minimal, oui : le document est bien formé et contient les espaces de noms TTML. Comme le TXT n’apporte ni police, ni couleur, ni région, il n’y a rien d’autre à traduire dans `<styling>` ou `<layout>`.
La chronologie d’un TXT converti en TTML est-elle exacte ?
Elle est exacte par rapport au calcul, pas par rapport à une source : le TXT ne contient aucun temps. Le TTML écrit `begin` et `end` à la milliseconde, avec trois décimales.
Comment les paragraphes d’un TXT sortent-ils en TTML ?
Elles restent des séparateurs de paragraphes et ne produisent pas d’élément `<p>`. Elles n’ajoutent pas de temps entre deux blocs ; seules les lignes non vides comptent.
Puis-je revenir d’un TTML vers le TXT d’origine ?
Oui, avec sa propre liste : TTML vers TXT perd le minutage, les styles, la position, les sauts de ligne et le contenu propre au format, comme les blocs `<styling>`, `<layout>` et `<metadata>`.