Dubbing is supported natively on POST /v2/generate. Pass the dubParams object alongside your normal generation request and Sync Labs will extract audio from the video input, dub it into the target language, and run lipsync on the dubbed result — all as one job.
A video with audio is sufficient for dubbing to work — video input alone (with an embedded audio track) is acceptable. You do not need to supply a separate audio input; any audio inputs in the input array are ignored when dubParams is present. You must pass the dub parameters (dubParams) to enable dubbing.
dubParams flow (this page): single API call, recommended for standard translation-plus-lipsync workflows.Ensure your source file is a video whose audio track you want translated. No separate audio input is required.
Choose one of the supported targetLang codes (see the DubLanguage enum in the API Reference for the full list).
See the full API reference for dubParams.
providerName (DubProviderName, required): dubbing provider to use. Currently elevenlabs is the only supported value.targetLang (DubLanguage, required): target language code for dubbing, e.g. es, fr, ja.sourceLang (DubSourceLanguage, optional, default auto): source language code, or auto to let the engine detect it.numSpeakers (integer, optional, default 0): number of speakers in the source video. 0 enables auto-detection; otherwise set a value between 1 and 50.dubParams is provided, audio is extracted from the video input, dubbed via ElevenLabs into the target language, and lipsync is run against the dubbed audio.input array are ignored when dubbing is enabled — pass only the video input.