A2E
  1. AI Dubbing
A2E
  • AI Avatar API
  • Get Tokens
    • Getting API Tokens (2025 version)
  • TTS and Voice Clone
    • List Public TTS Options
      GET
    • List Voice Clone Options
      GET
    • Train TTS Model of The User's Voice (Voice Clone)
      POST
    • List Ongoing Voice Clone Tasks
      GET
    • Generate TTS Audio (Text-to-Speech)
      POST
    • Get Details of a Voice
      GET
    • Delete a User Voice
      DELETE
  • Generate Avatar Videos
    • Generate AI Avatar Videos
      POST
    • List of Result Videos
      GET
    • List One or All Avatars
      GET
    • Obtain the Status of One Avatar Video Task
      POST
    • Delete or Cancel a Video
      DELETE
    • Auto Language Detect
      POST
    • Auto Swith to Public Computing Pool
      POST
  • Create Avatars and Train Lip-sync Models
    • Create A Custom Avatar by a Video or an Image
      POST
    • Train a Personalized Lip-sync Model (Optional) a.k.a. Continue Training 💠
      POST
    • Remove A Customized Avatar
      POST
    • Get Status of All Tasks
      GET
    • Get All Ongoing "Training" Tasks
      GET
    • Status of One Task
      GET
    • Clone Voice from a Video
      POST
  • Background Matting and Replacement
    • Obtain the List of Background Images
    • Add Custom Background Image
    • Delete Custom Image
  • Face Swap
    • Manage Face Swap Resource
      • Add Face Swap Image
      • Get Records of Face Swap Images
      • Delete User Face Swap Image
    • Quickly Preview Face Swap
      • Add User Face Swap Preview
      • Get Status of Face Swap Preview Process
    • Start and Manage Face Swap Tasks
      • Start a Face Swap Task
      • Get Status of Face Swap Task
      • Get Face Swap Task Records
      • Get Details of Face Swap
      • Delete Record
  • AI Dubbing
    • Start dubbing
      POST
    • List Dubbing Tasks
      GET
    • List All Processing Dubbing Tasks
      GET
    • Get Details
      GET
    • Delete Record
      DELETE
  • Image to Video
    • Start Image-to-Video
    • Check Status of One Task
    • List Status of All Tasks
    • Delete Record
  • Caption Removal
    • Start Caption Removal
    • Get Records of All Tasks
    • Get Status of All Tasks in Processing
    • Get Details of One Task
    • Delete a Task
  • Streaming Avatar
    • Get All avatars
    • Get a Streaming Avatar Token
    • Set QA Context
    • Get QA Context
    • Ask a Question to the Avatar
    • Let the Avatar Speak Directly
    • Leave the Room
  • Miscellaneous
    • Add a User
    • Get User Remaining Credits
    • List Available Languages
    • Save URL to A2E's storage
    • Add Watermark to Video or Image
    • Get R2 Upload Presigned URL
  • Text to Image
    • Start Text-to-Image
    • List Tasks of Text-to-Image Tasks
    • Get Details of One Task
    • Delete Record
    • Quick Add Avarar
  • Talking Photo
    • Start a Task
    • List Tasks
    • Get Task Detail
    • Delete Task
  • Virtual Try-On
    • Start Virtual Try-On
    • List Tasks of Virtual Try-On
    • Get Details of One Task
    • Delete Record
  • Video to Video
    • Start Video to Video
    • List Tasks of Video to Video
    • Get Details of One Task
    • Delete Record
  • Product Avatar
    • Start Product Avatar
  1. AI Dubbing

Start dubbing

Global Server
https://video.a2e.ai
Global Server
https://video.a2e.ai
POST
/api/v1/userDubbing/startDubbing
Convert the audio in one language to another. The input audio is provided as an audio URL, or a video URL (the audio will then be extracted from the video file).
This API automatically clone the voice from the input audio, and create new audio using the same voice.
Make sure to properly select source_lang, target_lang, and num_speakers.
If you want to further change the lip motion of your input video, you will need to use api/v1/video/generate by providing the audio from the dubbing result.
ReturnDescriptionFormatExample
_idthe ID of the dubbing record.string66ea4dd87db10c73fa29b570

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json

Example
{
    "source_url": "https://dh24as48lv9ce.cloudfront.net/adam2eve/stable/user_voice_clone/b89f5b2e-2c7a-4de5-89b4-17ffee2799b6/audio.WAV",
    "name": "test",
    "target_lang": "en",
    "source_lang": "zh",
    "num_speakers": 1,
    "drop_background_audio": false
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://video.a2e.ai/api/v1/userDubbing/startDubbing' \
--header 'Content-Type: application/json' \
--data-raw '{
    "source_url": "https://dh24as48lv9ce.cloudfront.net/adam2eve/stable/user_voice_clone/b89f5b2e-2c7a-4de5-89b4-17ffee2799b6/audio.WAV",
    "name": "test",
    "target_lang": "en",
    "source_lang": "zh",
    "num_speakers": 1,
    "drop_background_audio": false
}'

Responses

🟢200Start dubbing
application/json
Body

Example
{
    "code": 0,
    "data": {
        "name": "test",
        "source_url": "https://dh24as48lv9ce.cloudfront.net/adam2eve/stable/user_voice_clone/b89f5b2e-2c7a-4de5-89b4-17ffee2799b6/audio.WAV",
        "current_status": "sent",
        "source_lang": "auto",
        "target_lang": "en",
        "num_speakers": 1,
        "drop_background_audio": false,
        "duration": 51,
        "result_url": "",
        "faild_message": "",
        "_id": "66ea4dd87db10c73fa29b570",
        "user_id": "665da3d7bcf6ab778bad0f6a",
        "createdAt": "2024-09-18T03:49:44.704Z",
        "updatedAt": "2024-09-18T03:49:44.704Z"
    }
}
Modified at 2025-02-25 07:52:34
Previous
Delete Record
Next
List Dubbing Tasks
Built with