SMI-Untertitelformat
Was dieses Format ausdrücken kann
- Textformatierung
- Fett und Kursiv
- Positionierung auf dem Bildschirm
- Ja
- Karaoke-Zeitangaben
- Nein
- Zeilenumbrüche innerhalb eines Blocks
- Ja
- Zeitachse
- Start- und Endzeit für jeden Block
- Zeitauflösung
- 1 ms
- Zeitangaben als Bildnummern gespeichert
- Nein
- Rechts-nach-links-Text
- Ja
Beispiele
Eine typische SMI-Datei und was daraus gelesen wird
Datei
<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial; }
.ENCC { Name: English; lang: en-US; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P Class=ENCC>Hello there.
<SYNC Start=3000>
<P Class=ENCC>
<SYNC Start=3500>
<P Class=ENCC>How are you?<br>Fine, thanks.
<SYNC Start=6000>
<P Class=ENCC>
</BODY>
</SAMI>
Was sie enthält
2 cues, 3 lines of text
Start=1000 = 00:00:01.000 → 00:00:03.000
Hello there.
[Class=ENCC]
Start=3500 = 00:00:03.500 → 00:00:06.000
How are you?
Fine, thanks.
[Class=ENCC]
Outside the cues:
head a <STYLE> block with CSS for the paragraphs, kept as it came in
cue ends the next <SYNC> tag — a SAMI file writes no end time of its own
clearing a <P> block blanks the screen; the two here are kept as clearing blocks, not turned into cuesDie rechte Seite ist keine konvertierte Datei, sondern das, was diese Seite aus der linken liest — und der Ausgangspunkt jeder Konvertierung dieser Datei.
Eine unordentliche SMI-Datei und was trotzdem gelesen wird
Datei
<SAMI>
<BODY>
<SYNC Start=abc>
<P Class=ENCC>this block's start cannot be read
<SYNC Start=2000>
<SYNC Start=4000>
<P>no attributes here<br>second line
<SYNC Start="6000">
some loose text before any P
</BODY>
</SAMI>Was sie enthält
3 cues, 3 lines of text
Start=2000 = 00:00:02.000 → 00:00:04.000
(no text)
Start=4000 = 00:00:04.000 → 00:00:06.000
no attributes here
second line
Start=6000 = 00:00:06.000 → 00:00:08.000
some loose text before any P
Outside the cues:
head no <STYLE> block and no <TITLE> — just the <SAMI> and <BODY> tags
cue ends the next <SYNC> tag; the last cue has none after it, so its end time was given a default
loose text text between two <SYNC> tags that belongs to no <P> is kept and attached to the cue open at that point
Reported while reading — repaired or skipped, never silently:
1 × SYNC blocks whose start time could not be read (they were skipped)
1 × the last cue has no following timestamp, so its end time was generatedEchte Dateien kommen mit Byte-Order-Mark, Windows-Zeilenenden, einer Fremdzeile vor einem Zeitstempel oder einem Zeitstempel, der sich nicht lesen lässt. Nichts davon löst einen Fehler aus: Was nicht verstanden wird, wird berichtet statt stillschweigend verworfen.
SAMI (SMI) in ein anderes Format konvertieren
Jede davon läuft vollständig in Ihrem Browser. Die Beschriftungen sagen, was diese Richtung kostet, bevor Sie sie öffnen.
- Genauigkeit
- Formatspezifischer Inhalt
- Formatierung
- Positionierung
- Formatspezifischer Inhalt
- Formatspezifischer Inhalt
- Zeitangaben
- Formatierung
- Positionierung
- Genauigkeit
- Formatspezifischer Inhalt
- Formatierung
- Positionierung
- Bildrate
- Formatspezifischer Inhalt
- Formatierung
- Positionierung
- Formatspezifischer Inhalt
- Formatierung
- Positionierung
- Formatspezifischer Inhalt
- Genauigkeit
- Formatspezifischer Inhalt
- Formatspezifischer Inhalt
- Zeitangaben
- Formatierung
- Positionierung
- Zeilenumbrüche
- Formatspezifischer Inhalt
- Positionierung
- Formatspezifischer Inhalt
In dieses Format konvertieren
- SubRip (SRT) → SAMI (SMI)
- WebVTT (VTT) → SAMI (SMI)
- Advanced SubStation Alpha (ASS) → SAMI (SMI)
- SubStation Alpha (SSA) → SAMI (SMI)
- YouTube SBV → SAMI (SMI)
- LRC Lyrics → SAMI (SMI)
- MicroDVD → SAMI (SMI)
- TTML (Timed Text) → SAMI (SMI)
- SubtitleMatrix JSON → SAMI (SMI)
- Plain Text (TXT) → SAMI (SMI)
- CSV Spreadsheet → SAMI (SMI)
SMI ist das Untertitelformat von SAMI, der Untertiteltechnik von Microsoft. Diese Seite ist die Referenz: was das Format speichern kann, was nicht, und ein Einstieg in jede Konvertierung, die von SMI aus möglich ist.
SAMI ist HTML mit einer Zeitsteuerung: Jeder Block beginnt mit `<SYNC Start=4126>`, der Text steht in einem `<P>`, und ein `<STYLE>`-Block vergibt Klassen wie `Class=ENCC`. Diese Konstruktionen sind der Grund, warum SMI mehr ausdrücken kann als SRT — und warum beim Konvertieren in einfachere Formate etwas übrig bleibt.
Alle diese Konvertierungen laufen im Browser. Nichts wird hochgeladen, und ein Konto ist nicht nötig — das zählt bei Material unter Geheimhaltungsvereinbarung, bei Patientendaten oder bei einer Sendesperrfrist.
Häufige Fragen
Was ist eine SMI-Datei?
`.smi` ist das Dateiformat von SAMI, einem älteren Untertitelstandard von Microsoft: HTML mit Zeitmarken. Die Datei liegt meist als `.smi` oder `.sami` vor, lässt sich aber wie jede andere Untertiteldatei einlesen.
Wie funktionieren die `<SYNC>`-Tags in SMI?
Ein `<SYNC Start=4126>` sagt, dass ab Millisekunde 4126 etwas Neues auf dem Bildschirm steht; weil SAMI keinen Endzeitpunkt kennt, ersetzt der nächste `<SYNC>` den vorherigen Inhalt. Deshalb steht hinter jedem Block ein `<P> `, das den Bildschirm wieder leert.
Was macht der `<STYLE>`-Block in SMI?
Er ist eine kleine CSS-Regel: `<STYLE>` vergibt Klassen wie `Class=ENCC` eine Schrift, eine Farbe oder eine Position, und jeder `<P>` verweist nur noch darauf. Dieselbe Klasse kann in vielen Blöcken stehen — ein Vorteil, den SRT nicht kennt.
In welche Formate lässt sich SMI ohne Verlust konvertieren?
In keines der zwölf hier behandelten Formate ganz ohne Verlust: SMI hat mit `<STYLE>`, `Class=` und `Start=` Konstruktionen, die jeweils eigene Gegenstücke brauchen. Die Tabelle oben zeigt, wie viel jede Richtung behält — ASS, SSA und TTML verlieren am wenigsten, weil sie Stile selbst ausdrücken können.
Warum zeigen manche Player eine SMI-Datei als leeren Bildschirm?
Weil SAMI den Inhalt bei jedem `<SYNC>` vollständig ersetzt: Fehlt das abschließende `<P> `, bleibt die letzte Zeile bis zum Ende stehen. Eine Datei mit einem einzigen `<SYNC>` zeigt deshalb nur einen Block, und ein Player ohne SAMI-Unterstützung zeigt gar nichts.