Video translation API
A video translation API that dubs your recordings into 21 languages
Send a video or audio file and a target language. You get the recording back with the speech translated and read aloud by an AI voice, plus the translated text. The same API can also re-speak a recording in a different voice.
Get an API key · Read the API docs
Translate a video
Leave language_code out and the spoken language is detected for you. The finished job lists the translated recording and the translated text in outputs.
curl https://speakersplit.io/v1/jobs \
-H "Authorization: Bearer $SPEAKERSPLIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"tool": "translate",
"audio_url": "https://cdn.example.com/webinars/q3-update.mp4",
"target_language": "es",
"voice": "rachel"
}'21 languages
Pass one of these codes as target_language.
| Code | Language |
|---|---|
| en | English |
| es | Spanish |
| fr | French |
| de | German |
| pt | Portuguese |
| it | Italian |
| zh | Chinese |
| ja | Japanese |
| ko | Korean |
| hi | Hindi |
| ar | Arabic |
| ru | Russian |
| tr | Turkish |
| nl | Dutch |
| pl | Polish |
| vi | Vietnamese |
| th | Thai |
| id | Indonesian |
| sv | Swedish |
| el | Greek |
| tl | Tagalog |
Voices
- translate: "adam" (default) or "rachel".
- change_voice: "adam" (default), "rachel", "daniel" or "charlotte".
Change the voice, keep the words
change_voice re-speaks a recording in one of the AI voices above, in the same language. Use it when you need a different voice on narration you already have.
curl https://speakersplit.io/v1/jobs \
-H "Authorization: Bearer $SPEAKERSPLIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "tool": "change_voice", "audio_url": "https://cdn.example.com/raw/narration.wav", "voice": "charlotte" }'Length limits
Files can be up to 90 minutes long. A translation covers up to about 30 minutes of speech (30,000 characters of text).
Limits and safety
- 120 requests a minute per API key, and up to 5 jobs running at once per account.
- Upload local files up to 2 GB with POST /v1/uploads, or pass a public https link as audio_url.
- Send an Idempotency-Key header and a retried request never starts (or charges) a second job.
- Unknown parameters are rejected with a 400, so a typo never runs a job with the wrong settings.
- Result links work for 30 days.
What it costs
| File | Credits |
|---|---|
| Audio | 1 credit per started minute |
| Video | 2 credits per started minute |
The same price for translate and change_voice. A 10-minute video costs 20 credits. Credits are the same ones you use on the website. Plans and credit options are on the pricing page.
Common questions
Which languages can the video translation API translate into?
Twenty-one: English, Spanish, French, German, Portuguese, Italian, Chinese, Japanese, Korean, Hindi, Arabic, Russian, Turkish, Dutch, Polish, Vietnamese, Thai, Indonesian, Swedish, Greek and Tagalog.
Does the translation keep the original speaker’s voice?
No. The translation is read aloud by an AI voice you choose: "adam" or "rachel".
Do I get the translated text as well?
Yes. The finished job gives you the translated recording and the translated text.
How long can the recording be?
Up to 90 minutes. A translation covers up to about 30 minutes of speech (30,000 characters).
How much does video translation cost?
2 credits per started minute of video, or 1 credit per started minute of audio. The voice changer costs the same.