> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.empiriolabs.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.empiriolabs.ai/_mcp/server.

# Sonilo Video Translation

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

![Sonilo Video Translation](https://media.empiriolabs.ai/model-logos/sonilo-video-translation.png)

[Sonilo](/providers/sonilo) · Video Generation

`POST /v1/videos/generations`

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

## At a glance

| Field               | Value                                                                          |
| ------------------- | ------------------------------------------------------------------------------ |
| Model id            | `sonilo-video-translation`                                                     |
| Model release date  | -                                                                              |
| Input modalities    | Video                                                                          |
| Output modalities   | Video                                                                          |
| Context window      | -                                                                              |
| Weight precision    | -                                                                              |
| Features            | dubbing, translation, multilingual, lip_sync, video_to_video, commercial_ready |
| Native inference    | No                                                                             |
| New                 | Yes                                                                            |
| Supported endpoints | `POST /v1/videos/generations`                                                  |
| Alternate model ids | `sonilo-dubbing`, `sonilo/sonilo-video-translation`                            |

## Pricing

| Charge            | Spec                    | Rate      |
| ----------------- | ----------------------- | --------- |
| Video translation | per second per language | \$0.11634 |

## Example request

```bash
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": "sunrise over the ocean", "duration": 6}'
```

## Parameters

| Parameter    | Type    | Required | Default                 | Description                                                                                                                                                                                                                                        |
| ------------ | ------- | -------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `languages`  | string  | no       | `"["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, es_419, de, fr, it, ru, th, ar, tr, vi, id, ta, ml, kn, gu, pa_in, sd_in, hi. |
| `export_srt` | boolean | no       | false                   | Also return the re-timed subtitle track for each language alongside the dubbed video.                                                                                                                                                              |
| `video_url`  | string  | no       | -                       | Source video, as a publicly reachable URL. Up to 300MB and 5 minutes, and it must carry a speech audio track.                                                                                                                                      |

## Notes

**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.

---

*Machine-readable schema:* `GET https://api.empiriolabs.ai/v1/models/sonilo-video-translation`.