Overview
The Dubbing API allows you to automatically dub audio and video content into different languages while preserving the original voice characteristics, emotion, and timing.Methods
create()
Create a new dubbing project from an audio or video file.The audio or video file to dub. Either
file or source_url must be provided.URL of the source video/audio file. Either
file or source_url must be provided.Name of the dubbing project for identification purposes.
Source language. Expects a valid ISO 639-1 or ISO 639-3 language code (e.g., “en”, “es”, “fr”, “de”).
The target language to dub the content into. Expects a valid ISO 639-1 or ISO 639-3 language code.
[Experimental] An accent to apply when selecting voices from the library and to inform translation dialect preferences.
Number of speakers to use for dubbing. Set to 0 to automatically detect the number of speakers. If specified, helps the model identify distinct speakers.
Whether to apply a watermark to the output video.
Start time of the source video/audio file in seconds. Use to dub only a portion of the content.
End time of the source video/audio file in seconds. Use to dub only a portion of the content.
Whether to use the highest resolution available for video output.
Advanced setting. Whether to drop background audio from the final dub. Can improve dub quality for content that shouldn’t have background tracks, such as speeches or monologues.
[BETA] Whether transcripts should have profanities censored with the word
[censored].Whether to prepare the dub for edits in dubbing studio or as a dubbing resource.
Instead of using voice cloning, use a similar voice from the ElevenLabs Voice Library. Voices used from the library count towards workspace custom voice limits. Using this feature requires the
add_voice_from_voice_library permission.The mode for running the dubbing job:
automatic(default) - Automatic processingmanual- Manual mode with CSV transcript (experimental, not recommended for production)
CSV file containing manual transcript for dubbing. Only used when
mode="manual".Frames per second to use when parsing a CSV file. If not provided, FPS will be inferred from timecodes.
Custom foreground audio file to use in the dub.
Custom background audio file to use in the dub.
Request-specific configuration.
Response containing:
dubbing_id(str) - Unique identifier for the dubbing projectstatus(str) - Current status of the dubbing jobexpected_duration_sec(int) - Expected processing time in seconds
get()
Get metadata about a dubbing project, including its current status.ID of the dubbing project to retrieve.
Request-specific configuration.
Metadata containing:
dubbing_id(str) - Project IDstatus(str) - Current status (dubbing, dubbed, completed, failed)progress(float) - Completion progress percentagetarget_video_url(str) - URL to download the dubbed video (when completed)source_lang(str) - Source language codetarget_lang(str) - Target language codecreated_at(datetime) - Project creation timestamp
list()
List all dubbing projects you have access to.Cursor for pagination. Used to fetch the next page of results. Returned in the response.
Maximum number of dubs to return. Cannot exceed 200, defaults to 100.
Filter by dubbing status:
dubbing- Currently processingdubbed- Dubbing complete, awaiting finalizationcompleted- Fully completedfailed- Failed processing
Filter by creator:
personal- Only dubs created by youshared- Only dubs shared with you
Field to order results by. Currently supports
created_at.Order direction:
ASCENDING- Oldest firstDESCENDING- Newest first (default)
Request-specific configuration.
Paginated response containing:
items(List[DubbingMetadata]) - List of dubbing projectsnext_cursor(str) - Cursor for next page (if available)has_more(bool) - Whether more results exist
delete()
Delete a dubbing project.ID of the dubbing project to delete.
Request-specific configuration.
Response containing:
success(bool) - Whether deletion was successful
Async Methods
All methods have async equivalents:Use Cases
- Content localization: Dub videos for international audiences
- E-learning: Translate educational content while preserving instructor’s voice characteristics
- Marketing: Adapt promotional videos for different markets
- Entertainment: Localize movies, TV shows, and podcasts
- Accessibility: Make content available in multiple languages