Was ist eine SRT-Datei?

Eine SRT-Datei ist eine Untertiteldatei im Klartextformat mit fortlaufend nummerierten Einträgen. Jeder Eintrag enthält eine Startzeit, eine Endzeit und den Untertiteltext; Leerzeilen trennen die Einträge.

So funktionieren SRT-Dateien

SubRip-Untertiteldaten sind in Eintragsblöcken organisiert: eine Zählerzeile, eine Zeitzeile in der Form hours:minutes:seconds,milliseconds --> hours:minutes:seconds,milliseconds, eine oder mehrere Textzeilen und eine Leerzeile. Das Format stammt aus dem Programm SubRip zum Extrahieren von Untertiteln und hat keine formale Spezifikation. In der Praxis wird es daher durch das definiert, was Parser akzeptieren. Es enthält Zeitangaben und Text, aber kein Layoutmodell, das Player einheitlich umsetzen; viele Player akzeptieren informelle Formatierungen wie HTML-ähnliche Tags für Fettdruck, Kursivschrift, Unterstreichung und Farbe, wodurch dieselbe Datei in verschiedenen Anwendungen unterschiedlich erscheinen kann. SRT wird häufig als Begleitdatei beim Untertitelaustausch, bei der Lokalisierung, der Qualitätsprüfung und der Verpackung in einen Streaming-Container verwendet.

Wichtige Fakten

  1. Kanonische SRT-Zeitangaben sehen so aus: 00:00:00,498 --> 00:00:02,827. Sie verwenden ein Komma vor den Millisekunden und einen Pfeil aus zwei Bindestrichen und einem Größer-als-Zeichen. Parser sind unterschiedlich tolerant. Der SRT-Demuxer von FFmpeg (in Version 8.0 geprüft) akzeptiert ein Komma oder einen Punkt und prüft weder Zählerwerte noch deren Reihenfolge, allerdings muss eine Zählerzeile mit einer Zahl beginnen. Ein strengerer Parser akzeptiert möglicherweise weniger. Verwenden Sie daher die kanonische Form.
  2. Browser laden SRT nicht als Textspur: MDN dokumentiert WebVTT als Dateiformat für das Element track. Eine Konvertierung erfordert mehr als das Umbenennen der Datei. Eine WebVTT-Datei muss mit der Zeichenfolge WEBVTT beginnen, verwendet einen Punkt vor den Millisekunden und muss als UTF-8 codiert sein.
  3. SRT hat weder einen Standard für die Zeichenkodierung noch eine Stelle, an der sie deklariert werden kann, wie die Library of Congress anmerkt. Einem Leseprogramm muss sie daher mitgeteilt werden, oder es muss sie erraten. Liefern Sie UTF-8: Matroska speichert SRT-Text als UTF-8, und WebVTT verlangt diese Zeichenkodierung. Konvertieren Sie ältere Dateien aus der bekannten Zeichenkodierung der Quelle; die Option sub_charenc von FFmpeg dient dazu, die Zeichenkodierung der Eingabeuntertitel anzugeben. Ist sie unbekannt, fragen Sie den Absender. Eine erkannte Zeichenkodierung ist eine Vermutung. Prüfen Sie daher nach der Konvertierung Text mit Akzenten und nichtlateinischen Zeichen.
  4. Behandeln Sie Formatierung und Positionierung als nicht portabel. Die Library of Congress beschreibt die von HTML abgeleiteten Tags für Fettdruck, Kursivschrift, Unterstreichung und Farbe als vom Leseprogramm abhängig. FFmpeg verarbeitet optionale Koordinaten X1, X2, Y1, Y2 in der Zeitzeile, doch sein Decoder skaliert sie unter Annahme eines Bildrahmens von 720×480 neu. Matroska behält beim Einmuxen von SRT nur Text und Zeitangaben eines Eintrags bei.

Wann SRT-Dateien wichtig sind

Verwenden Sie SRT, um Untertitel oder Übersetzungen mit Playern, Editoren und Plattformen auszutauschen, die das Format akzeptieren. Konvertieren Sie für HTML-Video zu WebVTT, da das Element track WebVTT-Dateien lädt. Eine fehlerhafte Zeitzeile, eine fehlende Leerzeile zwischen Einträgen oder die falsche Zeichenkodierung können dazu führen, dass Untertitel verschwinden, ineinanderlaufen oder fehlerhafte Zeichen anzeigen.

So hilft Transloadit bei SRT-Dateien

Der Robot /video/subtitle von Transloadit akzeptiert SRT- und VTT-Untertiteldateien und fügt sie einem Video entweder als separaten, zuschaltbaren Stream hinzu oder brennt sie ins Bild ein. Der Robot /speech/transcribe kann seine Transkription als Datei im Format srt oder webvtt ausgeben.

Die Robot-Dokumentation erläutert nicht, wie SRT-Formatierungstags oder Dateien mit einer anderen Zeichenkodierung als UTF-8 behandelt werden. Die Parameter für Textfarbe, Randfarbe, Fettdruck und Kursivschrift sind dort als ausschließlich für eingebrannte Untertitel geltend gekennzeichnet. Testen Sie repräsentative formatierte Dateien und Dateien mit einer anderen Zeichenkodierung als UTF-8 in dem Modus, den Sie verwenden möchten.

Entdecken Sie Transloadits Möglichkeiten für Dateiformate & Komprimierung

Quellen

Machen Sie aus Medienwissen eine funktionierende Pipeline

Verbinden Sie Uploads, Verarbeitung, KI, Storage und Auslieferung über eine deklarative API – um Encoding-Stack, Skalierung und ständig wechselnde Formate müssen Sie sich nicht selbst kümmern.

Transloadit kostenlos ausprobieren