Sonilo Video Translation API

Dubs a video into 24 languages with lip-sync matched voices, returning one finished video per language plus optional subtitle tracks.

SoniloVideo GenerationProprietary EndpointNew

About Sonilo Video Translation

Dubs a video into 24 languages with lip-sync matched voices, returning one finished video per language plus optional subtitle tracks.

dubbingtranslationmultilinguallip syncvideo to videocommercial ready

Sonilo Video Translation specs

Model ID
sonilo-video-translation
Author
Sonilo
Category
Video Generation
Released
-
Input
Video
Output
Video
Endpoints
POST/v1/videos/generations
Alternate model IDs
sonilo-dubbingsonilo/sonilo-video-translation

Sonilo Video Translation API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Video translation
per second per language
$0.11634
Compare on the full pricing page

How to call the Sonilo Video Translation API

Sonilo Video Translation runs through POST /v1/videos/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Get an API key from the EmpirioLabs dashboard.

cURL: submit the job
curl https://api.empiriolabs.ai/v1/videos/generations \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sonilo-video-translation",
    "prompt": "Describe what you want Sonilo Video Translation to generate."
  }'
cURL: poll for the result
curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/videos/generations",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={
        "model": "sonilo-video-translation",
        "prompt": "Describe what you want Sonilo Video Translation to generate.",
    },
)
job = response.json()

# Generation runs as an async job. Poll until it completes.
import time
while True:
    status = requests.get(
        f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
        headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    ).json()
    if status.get("status") in ("completed", "failed"):
        print(status)
        break
    time.sleep(5)
Full Sonilo Video Translation API reference

Sonilo Video Translation API parameters

Request parameters supported by the Sonilo Video Translation API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
languagesstring["zh_cn","es","fr"]-JSON array of target language codes. One dubbed video is returned per language, and the request is billed per language. Supported: en, zh_cn, ja, ko, pt, pt_br, es,...
export_srtbooleanfalse-Also return the re-timed subtitle track for each language alongside the dubbed video.
video_urlstring--Source video, as a publicly reachable URL. Up to 300MB and 5 minutes, and it must carry a speech audio track.

Good to know

Languages

en, zh_cn, ja, ko, pt, pt_br, es, es_419, de, fr, it, ru, th, ar, tr, vi, id, ta, ml, kn, gu, pa_in, sd_in, hi

Controls

Supports source video, a list of target languages, and an option to return the re-timed subtitle track for each language.

Limits

  • Source video up to 300MB and 5 minutes
  • The video must carry a speech audio track
  • One dubbed video is returned per requested language

Billing

  • Charged per second of source video multiplied by the number of target languages, with a 10 second minimum. Three languages on a 30 second video bill 90 seconds.
  • A request rejected before generation is not billed.

Sonilo Video Translation API: common questions

How much does the Sonilo Video Translation API cost?

On EmpirioLabs, Sonilo Video Translation is billed pay as you go: Video translation $0.11634 per second per language. The live rate card on this page always matches what the API charges.

Which endpoint does Sonilo Video Translation use?

Sonilo Video Translation is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Sonilo Video Translation in the browser before integrating?

Yes. The EmpirioLabs playground runs Sonilo Video Translation in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Sonilo Video Translation API key?

Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.

Ready to use better endpoints?

Check out our pricing or reach out if you want your own model deployed on our stack.