Social-Media-Untertitel, die das gesprochene Wort hervorheben
Die meisten kurzen Videos in sozialen Medien werden ohne Ton angesehen, deshalb tragen die Untertitel die Geschichte. An schlichten Untertiteln, also dünnem Text mit einem ganzen Satz am unteren Bildrand, scrollt man leicht vorbei. Untertitel, die die Aufmerksamkeit halten, sehen anders aus: wenige Wörter auf einmal, groß und fett, und das gerade gesprochene Wort leuchtet auf.
Bisher brauchten Sie für diesen Look einen Video-Editor oder ein separates Untertitel-Tool. Jetzt erledigt das ein einziger Befehl: Laden Sie ein Video hoch und erhalten Sie es mit diesen eingebrannten Untertiteln zurück.
Dieser Clip mit Kevin, Mitgründer von Transloadit, wurde mit dem Befehl unten untertitelt und über Transloadit Storage ausgeliefert. Starten Sie die Wiedergabe mit Ton, um zu vergleichen.
Ein Befehl
npx -y @transloadit/node assemblies create \
--template builtin/caption-video@0.0.2 \
--field style=social \
--field vocabulary=Transloadit \
-i video.mp4 -o out/
builtin/caption-video ist ein fertiges Template: Es transkribiert das Video mit
🤖 /speech/transcribe und brennt die Untertitel mit
🤖 /video/subtitle ein. Neben dem untertitelten Video erhält
out/ auch das Transkript: als JSON mit einem Zeitstempel für jedes Wort
und als SRT, sodass Sie zusätzlich Untertitel anbieten können, die Ihr Publikum ausblenden kann.
Ohne --field style=social erhalten Sie stattdessen schlichte Untertitel:

Ihre Marke richtig schreiben
Die Spracherkennung kennt gängige Wörter, aber nicht Ihre Produktnamen. Ohne Hilfe kam der Clip
oben als „co-founder of Transloaded“ zurück. --field vocabulary=Transloadit gibt der Transkription
die Wörter vor, auf die sie achten soll. Trennen Sie mehrere Begriffe mit Kommas, wie in
vocabulary=Transloadit,Uppy,tus. Jeder vollständige Treffer, unabhängig von Groß- und
Kleinschreibung, kommt außerdem in der von Ihnen angegebenen Schreibweise zurück, sodass aus
„transloadit“ „Transloadit“ wird.
Vokabularhinweise funktionieren mit dem Standardanbieter und mit "provider": "gcp".
AWS unterstützt nur Vokabulare, die im Voraus angelegt wurden, daher gibt die Kombination mit
"provider": "aws" einen eindeutigen Fehler zurück, statt Ihre Wörter stillschweigend
zu ignorieren.
Was der Social-Media-Stil leistet
- Wenige Wörter auf einmal. Untertitel enthalten normalerweise bis zu drei Wörter. Kurze Wortgruppen können zusammenbleiben, und ein Wort am Satzende kann sich dem vorherigen Untertitel anschließen, wobei höchstens ein zusätzliches Wort erlaubt ist. Ein Untertitel endet vorzeitig am Satzende oder bei einer Pause von mehr als 0,4 Sekunden, sodass die Untertitel dem Sprechrhythmus folgen statt den Segmenten des Transkriptionsanbieters. Ein englisches Wort wie „by“ oder „to“ am Ende wandert nach Möglichkeit in den nächsten Untertitel: Sie erhalten „YOU’RE FREAKED OUT“ und dann „BY MY ROBOT“, keinen Untertitel, der auf „by“ endet.
- Das gesprochene Wort leuchtet auf. Das aktive Wort wird gelb und bleibt auch über kurze Pausen hinweg hervorgehoben, bis das nächste Wort beginnt. Die übrigen Wörter bleiben an ihrem Platz, sodass die Zeile beim Lesen nicht springt.
- Lesbar auf jedem Hintergrund. Poppins ExtraBold in Großbuchstaben im unteren Drittel, mit dicker Kontur und weichem Schatten.
- Passt zu Videos im Hoch-, Quadrat- und Querformat. Mit der standardmäßigen automatischen
Größenanpassung werden JSON-Untertitel verkleinert oder auf eine zweite Zeile umbrochen, damit sie
ins Bild passen, ohne ein Wort zu trennen. Ein gesetztes
font_sizedeaktiviert diese automatische Anpassung. - Ein kurzer Pop-Effekt. Jeder Untertitel wächst beim Erscheinen über eine Dauer von 120 Millisekunden von 85 % auf volle Größe.

Nach Ihren Wünschen anpassen
Das Template akzeptiert diese Felder:
highlight_colorlegt die Farbe des aktiven Worts fest (Standard:FFD60A).font_color,font_size,border_colorundpositionfunktionieren wie bei schlichten Untertiteln.provider,source_language,target_languageundvocabularysteuern die Transkription.
Der Standardanbieter erkennt die gesprochene Sprache automatisch. Mit target_language
können Sie optional einen Hinweis auf die gesprochene Sprache geben, etwa
german. Für AWS und GCP verwenden Sie stattdessen
source_language mit einem Sprachcode wie de-DE. Keines der
beiden Felder übersetzt das Gesprochene.
In Ihr eigenes Template einbauen
Um Ihrem eigenen Template Untertitel hinzuzufügen, verketten Sie diese beiden Steps in einer bestehenden Pipeline, zum Beispiel nach einem Upload mit Uppy oder vor dem Encoding zu HLS:
{
"steps": {
":original": {
"robot": "/upload/handle"
},
"transcribed": {
"use": ":original",
"robot": "/speech/transcribe",
"format": "json",
"vocabulary": ["Transloadit"]
},
"captioned": {
"robot": "/video/subtitle",
"use": {
"steps": [
{ "name": ":original", "as": "video" },
{ "name": "transcribed", "as": "subtitles" }
]
},
"subtitles_type": "burned",
"style": "social",
"preset": "empty",
"ffmpeg_stack": "v7",
"result": true
}
}
}
/video/subtitle akzeptiert das JSON mit Zeitstempeln aus
/speech/transcribe als Untertitel. Worthervorhebung, Gruppierung und Großbuchstaben
setzen dieses JSON voraus. SRT- und VTT-Untertitel übernehmen ebenfalls Schriftart und Schriftgröße
des Social-Media-Stils, behalten aber ihre eigenen Zeilen und ihr eigenes Timing. ASS-Dateien
behalten ihre eigenen Stile. Mit max_words_per_caption legen Sie die angestrebte
Höchstzahl an Wörtern pro Untertitel fest; die oben beschriebenen Anpassungen der Wortgruppierung
im Social-Media-Stil gelten dabei weiterhin. "preset": "empty" behält den Container
der Eingabe bei, sodass ein MP4 auch wieder als MP4 zurückkommt.
Jetzt loslegen
Führen Sie den Befehl oben mit Ihrem eigenen Video aus, oder probieren Sie die Steps im Template Editor aus. Die Dokumentation zu 🤖 /video/subtitle listet alle Parameter auf.
