DokuQuellen und Einstellungen

Quellen und Einstellungen

Welche Links funktionieren, wann transcript1 Untertitel nutzt und wie du Sprecherzuordnung und Sprache einstellst.

Für eine Transkription übergibst du einen Video-Link oder lädst eine Datei hoch. Die Tabelle zeigt, welche öffentlichen Aufnahmen und Linkformate transcript1 akzeptiert. Mit source wählst du Untertitel oder KI-Transkription, mit diarize die Sprecherzuordnung und mit language die Sprache. Diese drei Felder sind im Request-Body von POST /v1/transcriptions optional.

Von diesen Plattformen kannst du Videos einreichen

Setze den Link in url. Die API erkennt daran die Plattform. Du kannst platform zusätzlich angeben, der Wert muss dann aber zum Link passen.

PlattformDiese Links funktionieren
YouTube (youtube)Die unten aufgeführten Video-URLs.
X (x)Links zu Video-Posts auf x.com oder twitter.com, zum Beispiel https://x.com/user/status/1234567890.
TikTok (tiktok)Links zu Video-Posts auf tiktok.com. Auch Kurzlinks über vm.tiktok.com, vt.tiktok.com und www.tiktok.com/t/ funktionieren.
Instagram (instagram)Reels und Video-Posts auf instagram.com mit /reel/, /reels/, /p/ oder /tv/. Vor dem Reel- oder Post-Pfad darf auch der Nutzername stehen.
Facebook (facebook)Videos und Reels auf facebook.com, auch über Watch-Links. Dazu kommen fb.watch und die Kurzlinks /share/v/ und /share/r/.
Bluesky (bluesky)Links zu Video-Posts auf bsky.app, zum Beispiel https://bsky.app/profile/user.example/post/3l3w4b5c6d7e2.
Twitch (twitch)VODs nach Ende der Übertragung unter twitch.tv/videos/<id> oder /<channel>/v/<id>; statt v geht auch video. Clips unter clips.twitch.tv/<slug>, twitch.tv/<channel>/clip/<slug> oder /clip/<slug>. Erlaubte Hosts: twitch.tv, www, m, go und clips.twitch.tv.
Dailymotion (dailymotion)Videos unter dailymotion.com/video/<id>, auch mit angehängtem _title, sowie /embed/video/<id> und dai.ly/<id>. Die Hosts www.dailymotion.com und touch.dailymotion.com funktionieren ebenfalls.
Pinterest (pinterest)Direkt auf Pinterest hochgeladene Video-Pins unter pinterest.com oder www.pinterest.com, mit /pin/<id>/ oder /pin/<slug>--<id>/. transcript1 nimmt den ersten nativen Videoblock. Extern eingebettete Videos, Bilder, Boards, pin.it und regionale Domains funktionieren nicht.
LinkedIn (linkedin)Öffentliche Video-Posts auf linkedin.com oder www.linkedin.com unter /posts/<slug>-<activity-id>-<four-character-suffix> oder /feed/update/urn:li:activity:<id>/. Profile, LinkedIn Learning, Events und lnkd.in funktionieren nicht.
Snapchat Spotlight (snapchat)Videos unter /spotlight/<id> auf snapchat.com oder www.snapchat.com. Stories und Profile funktionieren nicht.

Für Twitch, Dailymotion, Pinterest, LinkedIn und Snapchat Spotlight muss der Link HTTPS verwenden. Er darf weder Zugangsdaten noch einen eigenen Port enthalten. Reiche einzelne, öffentliche Aufnahmen ein. Private Posts, Posts hinter einem Login, laufende oder noch verarbeitete Streams, Profile, Feeds und Sammlungen funktionieren nicht. transcript1 sendet keine Account-Cookies mit. Zeitangaben in der URL schneiden die Aufnahme nicht zu.

Twitch-Clips und Snapchat Spotlight können einen media_id-String liefern, dessen Aufbau du nicht interpretieren solltest. Übernimm ihn unverändert, statt eine ID aus der URL abzuleiten.

Auf X, TikTok, Instagram, Facebook und Bluesky muss der Post öffentlich sein. Enthält er mehrere Videos, nimmt transcript1 nur das erste. Profile, Stories, Live-Seiten und TikTok-Fotoposts funktionieren nicht. Verlangt die Plattform eine Anmeldung, bekommst du login_required. Fehlt dem Video die Tonspur, bekommst du no_audio. In beiden Fällen berechnen wir nichts.

Untertitel lassen sich auf YouTube, X, TikTok, Bluesky, Dailymotion und LinkedIn nutzen, sofern das Video eine passende Spur in der Originalsprache hat. Für Instagram, Facebook, Twitch, Pinterest und Snapchat läuft die Transkription mit auto oder stt immer über KI-Speech-to-Text. captions ist dort nicht erlaubt. Der Minutenpreis ist für alle Plattformen und Uploads gleich; abgerechnet wird die gemessene Länge.

Kurzlinks funktionieren nur in den oben genannten Formen. Willst du eine frühere Transkription wiederverwenden, nimm den vollständigen Post-Link. Share-Links ohne Post-ID können wir beim Absenden keiner früheren Transkription zuordnen.

Plattform mit UntertitelnVerfügbare Spuren und Zeitangaben
YouTube und Xtranscript1 ruft vorhandene Untertitelspuren ab. Wort-Zeitstempel gibt es dabei nur für automatisch erzeugte YouTube-Untertitel.
TikTokNative Untertitel in VTT oder SRT, sofern vorhanden. Zeitstempel gibt es nur für ganze Segmente.
BlueskyNative Video-Untertitel auf dem unterstützten, vertrauenswürdigen PDS. Beliebige föderierte Hosts sowie zitierte und externe Videos funktionieren nicht. Zeitstempel gibt es nur pro Segment.
DailymotionDirekt abrufbare SRT-Dateien, keine Untertitel-Playlists. Zeitstempel gibt es nur pro Segment. Bei erkannten en-auto/fr-auto-Spuren lautet der Wert auto_generated.
LinkedInVerfügbare VTT-Spuren öffentlicher, direkt auf LinkedIn hochgeladener Video-Posts. LinkedIn Learning gehört nicht dazu. Zeitstempel gibt es nur pro Segment.

Diese YouTube-Links funktionieren

Für YouTube setzt du den Video-Link in url und lässt platform weg oder wählst youtube. Die folgenden Formate funktionieren jeweils mit und ohne www.:

LinktypBeispiel
Normale Videoseitehttps://www.youtube.com/watch?v=dQw4w9WgXcQ
Kurzlinkhttps://youtu.be/dQw4w9WgXcQ
Shortshttps://www.youtube.com/shorts/dQw4w9WgXcQ
Embed-Linkhttps://www.youtube.com/embed/dQw4w9WgXcQ
Livehttps://www.youtube.com/live/dQw4w9WgXcQ
Mobile Website und YouTube Musichttps://m.youtube.com/watch?v=dQw4w9WgXcQ, https://music.youtube.com/watch?v=dQw4w9WgXcQ

Zusätzliche Query-Parameter wie t, list und si haben keinen Einfluss. Unterschiedliche Links zum selben Video erkennt transcript1 als dasselbe Video. Gib immer die vollständige URL an; die 11 Zeichen lange Video-ID allein reicht nicht.

Für Kanalseiten, reine Playlist-Links und andere nicht unterstützte Links antwortet die API mit 422 invalid_url. Kennt sie den Wert von platform nicht, bekommst du 422 unsupported_platform samt der Liste supported_platforms.

Das Video muss öffentlich oder nicht gelistet sein. Bei privaten Videos bekommst du media_private, bei Altersbeschränkungen age_restricted und bei Livestreams live_stream. Gehört dir die Datei, kannst du sie stattdessen hochladen.

source

Mit source entscheidest du, ob transcript1 vorhandene Untertitel abruft oder den Ton transkribiert.

WertWas transcript1 macht
auto (Standard)Prüft auf YouTube, X, TikTok, Bluesky, Dailymotion und LinkedIn zuerst die Untertitel in der Originalsprache. Lässt sich keine Spur nutzen, übernimmt KI-Speech-to-Text.
captionsRuft ausschließlich Untertitel von Plattformen ab, die das unterstützen. transcript1 lädt dabei kein Audio herunter und nutzt kein KI-Speech-to-Text. Ohne passende Spur endet die Transkription mit no_captions und kostet nichts. Scheitert der Abruf des Untertiteltexts, lautet der Fehler fetch_failed. Für andere Link-Plattformen bekommst du 422 invalid_request.
sttNutzt immer KI-Speech-to-Text für die Audiospur.

Bei hochgeladenen Dateien läuft immer Speech-to-Text. Erlaubt sind dafür auto und stt. Mit captions bekommst du 422 invalid_request.

Die Untertitelspur muss zur gewählten Sprache passen. Steht language auf auto, zählt die Originalsprache des Videos. Auf YouTube kommen vom Creator hochgeladene Untertitel und von YouTube in dieser Sprache erzeugte Untertitel infrage. Automatisch übersetzte Spuren nutzt transcript1 nie.

Zuerst kommen vom Creator hochgeladene Untertitel, dann Spuren unbekannter Herkunft und zuletzt automatisch erzeugte Untertitel. Eine unbekannte Herkunft bedeutet nicht, dass die Spur vom Creator stammt. Auf X nutzt transcript1 verfügbare VTT-Spuren mit Zeitstempeln pro Segment. Wort-Zeitstempel gibt es dort auch bei automatisch erzeugten Untertiteln nicht.

Im Modus auto kann STT übernehmen, wenn der Untertiteltext fehlt oder sich nicht parsen lässt. Bei Routing-, Speicher- oder Programmierfehlern passiert das nicht. Mit stt überspringst du die Untertitel immer.

diarize

Aktiviere diarize, wenn du wissen willst, wer welchen Abschnitt spricht. Ohne Angabe gilt false.

  • Sprecherzuordnung funktioniert nur mit Speech-to-Text. Wenn source auf auto steht und du diarize: true setzt, nutzt transcript1 deshalb direkt Speech-to-Text, auch wenn Untertitel vorhanden sind.
  • source: "captions" lässt sich nicht mit diarize: true kombinieren. Die API antwortet dann mit 422 invalid_request.
  • Du bekommst Bezeichnungen wie Speaker 1 und Speaker 2. Sie stehen in transcript.speakers und im Feld speaker des jeweiligen Segments. Bei text und srt steht Speaker 1: vor dem Text; bei vtt kommt das Voice-Tag <v Speaker 1> zum Einsatz.
{ "platform": "youtube", "url": "https://youtu.be/dQw4w9WgXcQ", "source": "stt", "diarize": true }

language

Lass language auf dem Standardwert auto oder gib einen zweistelligen ISO-639-1-Code an, zum Beispiel en, de oder es.

  • Für Untertitel legst du damit fest, welche Sprachspur transcript1 abruft. auto wählt die Originalsprache des Videos.
  • Bei Speech-to-Text bekommt der Anbieter den Wert als Hinweis auf die Sprache der Aufnahme. Mit auto läuft die Sprachenerkennung automatisch. Jedes Segment hat sein eigenes Feld language.

Im Feld language des Transkriptionsobjekts steht die Sprache, die in der Aufnahme überwiegt.

Was im Transkript steht

An transcript_source erkennst du, woher der Text stammt. Mögliche Werte sind youtube_captions, x_captions, tiktok_captions, bluesky_captions, dailymotion_captions, linkedin_captions und speech_to_text.

Bei Untertiteln beschreibt caption_kind die Herkunft: manual, auto_generated oder null für eine unbekannte Herkunft. Stelle null in deiner Anwendung nicht als „vom Creator hochgeladen“ dar.

youtube_captions, caption_kind manualyoutube_captions, caption_kind auto_generatedspeech_to_text
SegmenteEin Segment pro UntertiteleintragEin Segment pro UntertiteleintragEin neues Segment bei Sprecherwechsel, Sprachwechsel oder Satzende, spätestens nach 15 Sekunden
Wort-Zeitstempel mit include=wordsKeine; words ist nullStartzeit je Wort. Als Ende gilt der Beginn des nächsten WortsAnfang und Ende jedes Worts sowie confidence
SprecherzuordnungNeinNeinJa, wenn diarize auf true steht
SpracheSprache der UntertitelspurSprache der UntertitelspurEigene Sprachangabe pro Segment

YouTube-Untertitel bleiben unverändert, auch mit Tags wie [Music]. Für Speech-to-Text darf die Aufnahme höchstens 5 Stunden lang sein. Dauert sie länger, bekommst du media_too_long.

Bei X-Untertiteln (x_captions) und Untertiteln von TikTok, Bluesky, Dailymotion und LinkedIn gibt es nur Zeitstempel pro Segment. Mit include=words bleibt words: null in jedem Segment, auch bei automatisch erzeugten Spuren. Diese Untertitel enthalten keine Sprecherzuordnung. Für Wort-Zeitstempel aus der KI-Transkription wählst du source: "stt". Für die Sprecherzuordnung setzt du diarize: true zusammen mit auto oder stt.

So wird abgerechnet

Jede angefangene Audiominute kostet einen Credit, egal ob transcript1 Untertitel abruft oder Speech-to-Text nutzt. Du wählst also nur die Quelle des Texts; der Preis bleibt gleich. Mehr dazu unter Abrechnung und Limits.

Zuletzt aktualisiert 20. Oktober 2026