Any live channel,
dubbed as it airs.

Give Dubcast the link to a live stream. It dubs every speaker in their own voice, adds captions, and hands the programme to your playout less than 20 seconds behind live.

60 languages heard29 languages spoken< 20 s glass to glass
DubcastLIVE1Speaker 1
توافق با ایران به‌طور کامل امضا شده.
Speaker 1 · as spoken

One picture.
29 languages.

The picture never changes, and neither do the people in it. Only the language does: any of 60 on the way in, any of 29 on the way out.

DubcastLIVE4Speaker 4
توافق با ایران به‌طور کامل امضا شده.
Speaker 4 · 00:12:34 · Persian, as spoken

Same picture

Nothing is re-cut or re-timed. Your viewers see the frames that aired, held back 15 seconds by default so every sentence can finish.

Same voice

Every speaker keeps their own voice in the dub. It still sounds like them; only the words have changed.

29 languages

Each channel speaks one of 29, with captions, right to left where the language reads that way. Run several channels from one stream to go out in several at once.

The voice lands where the sentence began.

The picture is held back 15 seconds, so every sentence is finished before it is spoken again. Each dubbed turn starts on the frame where its speech began; one that runs long is sped up to fit, its pitch kept, never past 1.3×.

< 300 ms
median landing error, the pass mark of our sync test, measured in the output
15 s
hold-back by default, so each turn is whole before it airs
< 20 s
glass to glass, with the SRT leg to playout
1.3×
the most a turn is ever sped up to fit, with its pitch kept
TimelineIran International412 turns · hold-back 15 s
programme · 00:12:28 →
عصر بخیر، به اخبار خوش آمدید.خبر اول از تهران.توافق با ایران به‌طور کامل امضا شده.heard…
turn 410Good evening, and welcome to the news.turn 411The first story is from Tehran.turn 412The deal with Iran has been fully signed.turn 413 · translating…
Speaker 4Speaker 4
Speaker 1
CCGood evening, and welcome to the news.CCThe first story is from Tehran.CCThe deal with Iran has been fully signed.
landed +42 ms
turn 412 · landed +42 ms · fitted 1.06×the picture waits, never the voice

Built for the air path, not the demo.

Everything a channel needs to go out dubbed: the voice, the captions, loudness to EBU R128, an AI label on the picture, and a supervisor that restarts a channel when its dub goes quiet.

  • 1Speaker 12Speaker 23Speaker 34Speaker 4
    5Speaker 56Speaker 67Speaker 78Speaker 8

    speaker 8 heard · dubbed in their own voice

    Voice

    In their own voice

    Dubcast tells the speakers apart and speaks for each in their own voice, cloned from a few seconds of their speech. In the console, each one keeps a colour of their own.

  • ARمساء الخير، وأهلاً بكم في الأخبار.TRİyi akşamlar, haberlere hoş geldiniz.JAこんばんは、ニュースへようこそ。DEGuten Abend und willkommen zu den Nachrichten.
    1Speaker 1
    و این شبکه از امشب به زبان فارسی صحبت می‌کند
    …and from tonight this channel speaks Persian

    Captions

    Captions that land with the voice

    Timed to the delayed picture, right to left where the language reads that way, and ready as SRT or VTT: live, or for the whole day.

  • AI label

    Say it the broadcaster’s way

    Choose how the channel labels the dub: the mark, the lockup, or the mark with a line of your own, such as “Generated with AI”. Pick the corner; Dubcast sizes it to the picture, keeps it inside the safe area and burns it into every frame that goes out.

  • 14:02:09.120syncturn 412 1.2 s late · start cut, the rest in step
    14:02:10.480outputprogramme segment 00184 written (4.0 s)
    14:02:11.480sourcesource interrupted · reconnecting×12›
    14:02:12.010dubdub lost · original sound on air, retry in 90 s
    14:02:12.400captionturn 413 · 14 words · added to SRT and VTT
    14:02:13.120pacePersian at 1.14× the speech · rate → 1.30

    Console

    Warnings that say what happens next

    Repeats fold into one row with a count. Each line says what went wrong and what Dubcast is doing about it, the way an engineer would say it.

Hears 60. Speaks 29.

Dubcast picks up the source language on its own, from any of 60. You choose the one the channel speaks, from 29. Everything it hears is written down either way.

Heard and spoken · 29 Heard and written down · 31
  • TurkishTürkçe
  • Urduاردو
  • Hebrewעברית
  • Persianفارسی
  • English
  • Arabicالعربية
  • Frenchfrançais
  • GermanDeutsch
  • Spanishespañol
  • Portugueseportuguês
  • Italianitaliano
  • Russianрусский
  • Chinese中文
  • Japanese日本語
  • Korean한국어
  • Hindiहिन्दी
  • IndonesianBahasa Indonesia
  • MalayBahasa Melayu
  • Thaiไทย
  • VietnameseTiếng Việt
  • DutchNederlands
  • Polishpolski
  • Swedishsvenska
  • Danishdansk
  • Norwegiannorsk bokmål
  • Finnishsuomi
  • Czechčeština
  • Icelandicíslenska
  • Filipino
  • TurkishTürkçe
  • Urduاردو
  • Hebrewעברית
  • Persianفارسی
  • English
  • Arabicالعربية
  • Frenchfrançais
  • GermanDeutsch
  • Spanishespañol
  • Portugueseportuguês
  • Italianitaliano
  • Russianрусский
  • Chinese中文
  • Japanese日本語
  • Korean한국어
  • Hindiहिन्दी
  • IndonesianBahasa Indonesia
  • MalayBahasa Melayu
  • Thaiไทย
  • VietnameseTiếng Việt
  • DutchNederlands
  • Polishpolski
  • Swedishsvenska
  • Danishdansk
  • Norwegiannorsk bokmål
  • Finnishsuomi
  • Czechčeština
  • Icelandicíslenska
  • Filipino
  • Afrikaans
  • Asturianasturianu
  • Azerbaijaniazərbaycanca
  • Belarusianбеларуская
  • Bengaliবাংলা
  • Bosnianbosanski
  • Bulgarianбългарски
  • Cantonese粵語
  • Catalancatalà
  • Cebuano
  • Croatianhrvatski
  • Estonianeesti
  • Galiciangalego
  • Gujaratiગુજરાતી
  • GreekΕλληνικά
  • Hungarianmagyar
  • JavaneseBasa Jawa
  • Kannadaಕನ್ನಡ
  • Kazakhқазақша
  • Kyrgyzкыргызча
  • Latvianlatviešu
  • Macedonianмакедонски
  • Malayalamമലയാളം
  • Marathiमराठी
  • Punjabiਪੰਜਾਬੀ
  • Romanianromână
  • Slovakslovenčina
  • Slovenianslovenščina
  • SwahiliKiswahili
  • Tajikтоҷикӣ
  • Ukrainianукраїнська
  • Afrikaans
  • Asturianasturianu
  • Azerbaijaniazərbaycanca
  • Belarusianбеларуская
  • Bengaliবাংলা
  • Bosnianbosanski
  • Bulgarianбългарски
  • Cantonese粵語
  • Catalancatalà
  • Cebuano
  • Croatianhrvatski
  • Estonianeesti
  • Galiciangalego
  • Gujaratiગુજરાતી
  • GreekΕλληνικά
  • Hungarianmagyar
  • JavaneseBasa Jawa
  • Kannadaಕನ್ನಡ
  • Kazakhқазақша
  • Kyrgyzкыргызча
  • Latvianlatviešu
  • Macedonianмакедонски
  • Malayalamമലയാളം
  • Marathiमराठी
  • Punjabiਪੰਜਾਬੀ
  • Romanianromână
  • Slovakslovenčina
  • Slovenianslovenščina
  • SwahiliKiswahili
  • Tajikтоҷикӣ
  • Ukrainianукраїнська

The source language is picked up on its own · the output language is set per channel

Everything the console does, your systems can do too.

Create channels, follow every turn as it is spoken and read each channel’s sync and health as JSON, over plain HTTP and one live socket.

  • Create, stop and restart channels over HTTP
  • Follow every turn live over a WebSocket: who spoke, when, what they said and the translation
  • Take the programme as HLS, or send it to your playout over SRT, UDP or RIST
  • Sync, pace and output health as JSON, and a health check that answers 503 when a programme stalls
api.dubcast.ai
POST /v1/channelsAuthorization: Bearer …Content-Type: application/json { "url": "https://…/index.m3u8", "targetLanguage": "fa", "output": { "tsUrl": "srt://playout:9000" }}
Response201 Created84 ms
{ "id": "3f9a", "state": "starting", "hls": "https://stream.dubcast.ai/live/3f9a.m3u8", "tsUrl": "srt://playout:9000"}
Dubcast

From any source, on air in 29 languages.

Read the docs and put your own stream on air, or write to us and we will set a channel up with you.

Runs on your own servers · hello@dubcast.ai