TTML in TXT umwandeln
Oder Untertiteltext einfügen
Was diese Konvertierung ändert
5 Sachen entfallen oder brauchen eine Entscheidung
- Zeitangaben
die gesamte Zeitachse (das Ausgabeformat zeichnet überhaupt keine Zeitangaben auf)
- Formatierung
die gesamte Formatierung (Fett, Kursiv, Farbe, Kontur, Schatten)
- Positionierung
die Positionierung auf dem Bildschirm (jeder Block kehrt an die Standardposition zurück)
- Zeilenumbrüche
Zeilenumbrüche (mehrzeilige Blöcke werden zu einer Zeile zusammengefügt)
- Formatspezifischer Inhalt
Inhalt, den das Quellformat außerhalb seiner Blöcke führt (Nicht-Block-Abschnitte, Kopftext, Einstellungen pro Block, auskommentierte Ereignisse) — das Zielformat hat keinen Platz dafür
Diese Liste stammt aus der Fähigkeitsmatrix für diese beiden Formate, nicht aus der konkreten Datei, die Sie geladen haben. Eine bestimmte Datei kann mehr verlieren, wenn sie Merkmale nutzt, die das Format erlaubt, die Matrix aber nicht modelliert.
Diese Seite wandelt TTML in TXT um. Ziehen Sie eine Datei hinein oder fügen Sie den Text ein — Sie erhalten die TXT-Fassung zurück. Die Umwandlung läuft vollständig in Ihrem Browser: kein Upload, keine Anmeldung.
Beide Formate speichern nicht dasselbe, und der Unterschied ist nicht kosmetisch: das Timing, die Formatierung, die Positionierung, die Zeilenumbrüche und formatspezifische Inhalte haben in TXT keinen Platz. Die Liste oben stammt daraus, was die beiden Formate jeweils ausdrücken können, nicht aus Ihrer Datei; sie gilt also schon, bevor Sie etwas laden.
Eine Datei ist kein Problem, eine ganze Staffel auch nicht: Die Warteschlange arbeitet sie der Reihe nach ab und liefert alle Ergebnisse in einem einzigen ZIP.
Beispiele
Eine typische TTML-Datei, umgewandelt in TXT
Eingabe
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling" xml:lang="en">
<head>
<styling>
<style xml:id="s1" tts:color="#FFFF00" tts:fontWeight="bold"/>
</styling>
<layout>
<region xml:id="bottom" tts:origin="10% 80%" tts:extent="80% 20%"/>
</layout>
</head>
<body>
<div>
<p begin="00:00:01.000" end="00:00:03.500" region="bottom" style="s1">Hello <span tts:fontStyle="italic">there</span>.</p>
<p begin="00:00:03.500" end="00:00:06.000" region="bottom">How are you?<br/>Fine, thanks.</p>
</div>
</body>
</tt>
Ausgabe
Hello there.
How are you?
Fine, thanks.
In diesem Ergebnis geht verloren: das Timing, die Formatierung, die Positionierung, die Zeilenumbrüche und formatspezifische Inhalte. Alles andere bleibt Zeile für Zeile gleich.
Dieselbe Umwandlung mit einer unordentlichen Eingabe
Eingabe
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
ttp:frameRate="25" xml:lang="en">
<body>
<div>
<p begin="1.5s" dur="2s">Loaded from an offset and a duration.</p>
<p begin="4s" end="00:00:06.50">A coarser clock spelling.</p>
<p begin="00:00:07:00" end="00:00:08:12">Frames, at 25fps.</p>
<p begin="9s"><span tts:color="#FF0000">Half-open</span> and Tom & Jerry.</p>
</div>
</body>
</tt>
Ausgabe
Loaded from an offset and a duration.
A coarser clock spelling.
Frames, at 25fps.
Half-open and Tom & Jerry.
So sehen echte Dateien aus: gemischte Zeilenenden, verirrte Leerzeichen, leere Felder. Vergleichen Sie das mit dem sauberen Beispiel oben, dann sehen Sie, was der Parser verzeiht.
Häufige Fragen
Wohin verschwinden die TTML-Zeitangaben im TXT-Ergebnis?
TXT hat keine Zeitspalte: Der Export ist Text, keine Zeitachse. Die Reihenfolge der Blöcke bleibt, aber nichts im Ergebnis sagt, wann eine Zeile erscheint — begin und end fallen ersatzlos weg.
Was geschieht mit Fett, Kursiv und Farbe beim Umwandeln von TTML nach TXT?
Alles davon geht verloren. Ein <span tts:fontStyle="italic"> oder ein benannter Stil mit tts:color wird zu reinem Text; TXT kennt keine Auszeichnung. Die Wörter bleiben, ihre Betonung nicht.
Was geschieht mit der Bildschirmposition beim Weg von TTML nach TXT?
Sie fällt weg. Eine Region mit tts:origin und tts:extent beschreibt, wo der Text steht; TXT kennt keine Anzeigeposition und keine Regionen. Der Bericht führt die Positionierung als verloren.
Was geschieht mit einem zweizeiligen TTML-Untertitel in TXT?
Beide Zeilen werden untereinander geschrieben, aber die Gruppierung geht verloren: TXT kann Zeilen nicht zu einem Block zusammenfassen. Ein <br/> wird ein Umbruch, der beim Wiedereinlesen zwei Untertitel ergäbe.
Was geschieht mit dem TTML-Prolog und seinen Tabellen <styling> und <layout> in TXT?
Sie werden nicht übertragen. Die XML-Deklaration, die Namensräume, die Stiltabelle mit tts:color und die Regionentabelle mit tts:origin beschreiben ein Dokument; TXT speichert nur Textzeilen. Sie zählen als formatspezifischer Inhalt.
Wie sieht die TXT-Datei aus, die aus TTML entsteht?
Eine reine Textliste, eine Zeile pro Untertitelzeile, ohne Zeitstempel und ohne Blocknummern. Die Reihenfolge folgt der Startzeit der <p>-Elemente, auch wenn TXT sie nicht mehr ausgibt.
Kann ich die TXT-Datei zurück nach TTML umwandeln?
Ja, und TXT nach TTML verliert das Timing — ohne Zeitangaben muss die Rückrichtung Zeiten erfinden. Text und Reihenfolge bleiben dabei erhalten, die ursprünglichen begin- und end-Werte nicht.
Welche Zeichenkodierung bekommt die TXT-Ausgabe aus dem TTML-Dokument?
UTF-8 mit Unix-Zeilenenden und ohne Byte-Order-Mark. Eine TTML-Datei in UTF-16 oder einer Windows-Kodierung wird beim Einlesen erkannt; das Ergebnispanel nennt die Quelle.