Transkripte, die wissen, wer spricht
Bei Interviews, Podcasts, Podiumsdiskussionen und Meetings spricht mehr als eine Person. Fasst ein Transkript alles in einem Textblock zusammen, müssen Sie raten, wer was gesagt hat. Untertitel, die ohne Hinweis auf den Sprecher nur kurz erscheinen, lassen sich noch schwerer verfolgen.
🤖 /speech/transcribe kennzeichnet jetzt, wer spricht. Jede Ausgabe zeigt diese Kennzeichnung: ein Texttranskript, das sich wie ein Drehbuch liest, Untertitel mit standardisierten Voice-Tags und Social-Media-Untertitel, in denen jeder Sprecher seine eigene Farbe erhält.
Ein Clip aus dem NASA-Podcast Houston We Have a Podcast, Folge 441, den eine einzige Assembly allein aus dem Audio erstellt hat: der Moderator in Gelb, der Astronaut von Artemis II in Cyan. Ausgeliefert aus Transloadit Storage.
Ein Befehl
npx -y @transloadit/node speech transcribe --speaker-labels -i interview.mp3 -o interview.txt
Für den Clip oben sieht interview.txt so aus:
Speaker 1: If you could just maybe we'll take a step into those 10 days in orbit and what it was like in Orion, um, and just zooming back, looking at the overall perspective of the flight, now a couple months separated from it, you know, how are you characterizing the entirety of the experience, um, over those 10 days?
Speaker 2: Well, there's a lot that you could, you could dig into there. The, you know, I think one thing that comes to mind is we are busy, uh, really busy and really working together to try to stay on the schedule.
Ergänzen Sie --max-speakers 2, wenn Sie wissen, wie viele Personen sprechen,
und --format, um eine andere Ausgabe zu wählen.
Jedes Format zeigt den Sprecher
textliefert wie oben einen Absatz pro Redebeitrag.webvttumschließt jedes Untertitel-Segment mit einem standardisierten Voice-Span, etwa<v Speaker 1>, damit Player und Untertitel-Editoren jeden Sprecher benennen oder seine Darstellung anpassen können.srthat kein Voice-Tag. Deshalb beginnt ein Untertitel-Segment bei jedem Sprecherwechsel mitSpeaker 2:.jsonkennzeichnet jedes Wort und fügt pro Redebeitrag ein Segment hinzu. Erstellen Sie damit Ihre eigene Ansicht.
Ein Untertitel-Segment umfasst nie zwei Sprecher. Die Sprecherkennzeichnungen stammen von den
Anbietern aws und gcp.
Wenn Sie provider weglassen, wählt Transloadit einen Anbieter, der sie unterstützt.
Eine Farbe pro Sprecher
Mit 🤖 /video/subtitle eingebrannte Untertitel können jetzt jedem
Sprecher eine eigene Farbe geben. Übergeben Sie das JSON mit Sprecherkennzeichnungen aus
/speech/transcribe und eine Liste mit speaker_colors:
Das aktive Wort leuchtet in der Farbe des Sprechers auf, und kein Untertitel reicht in den
Redebeitrag des nächsten Sprechers hinein.
Das Video oben entstand in einer einzigen Assembly, allein aus der Audiodatei. Sie importiert ein NASA-Foto, zeichnet die Wellenform, fügt beides zu einem Coverbild zusammen, erstellt aus dem Coverbild und dem Audio ein Video und brennt die Untertitel ein:
{
"steps": {
"photo": {
"robot": "/http/import",
"url": "https://images-assets.nasa.gov/image/art002e009567/art002e009567~orig.jpg"
},
"waveform": {
"use": ":original",
"robot": "/audio/waveform",
"format": "image",
"width": 1600,
"height": 90,
"background_color": "00000000",
"outer_color": "ffffff73",
"center_color": "ffffff73",
"waveform_style": "bars",
"bar_width": 5,
"bar_gap": 5,
"bar_style": "rounded",
"style": "v1"
},
"cover": {
"use": {
"steps": [
{ "name": "photo", "as": "base" },
{ "name": "waveform", "as": "watermark" }
]
},
"robot": "/image/resize",
"width": 1920,
"height": 1080,
"resize_strategy": "crop",
"watermark_y_offset": 40,
"format": "jpg",
"text": [
{
"text": "HOUSTON WE HAVE A PODCAST · ARTEMIS II",
"font": "Poppins-SemiBold",
"size": 30,
"color": "#ffffff",
"align": "right",
"valign": "top",
"x_offset": 60,
"y_offset": 52
}
],
"watermark_position": "bottom"
},
"video": {
"use": {
"steps": [
{ "name": "cover", "as": "image" },
{ "name": ":original", "as": "audio" }
]
},
"robot": "/video/merge",
"preset": "empty",
"ffmpeg": { "f": "mp4" },
"ffmpeg_stack": "v7"
},
"transcribed": {
"use": ":original",
"robot": "/speech/transcribe",
"speaker_labels": true,
"format": "json"
},
"captioned": {
"use": {
"steps": [
{ "name": "video", "as": "video" },
{ "name": "transcribed", "as": "subtitles" }
]
},
"robot": "/video/subtitle",
"subtitles_type": "burned",
"preset": "empty",
"style": "social",
"ffmpeg_stack": "v7",
"result": true,
"speaker_colors": ["FFD60A", "4CC9F0"]
}
}
}
Speichern Sie diese Konfiguration als speaker-captions.json und führen Sie sie für eine
beliebige Audiodatei aus:
npx -y @transloadit/node assemblies create --steps speaker-captions.json -i podcast.mp3 -o out/
Bei einem Video, in dem Personen zu sehen sind, überspringen Sie die ersten vier Steps und verwenden
Sie :original als Video, wie im
Beitrag zu Social-Media-Untertiteln.
Erste Schritte
Führen Sie den Befehl oben für eine eigene Aufnahme aus oder fügen Sie die Steps in ein neues Template ein. Auf den Seiten zu 🤖 /speech/transcribe und 🤖 /video/subtitle finden Sie alle Parameter.
Audio und Foto mit freundlicher Genehmigung der NASA: Houston We Have a Podcast, Folge 441, „Reflections After Artemis II“, und das Artemis-II-Foto „Orion POV: Destination and Home“. Die NASA spricht keine Empfehlung für Transloadit aus.
