Skip to content

Bytedance Omnihuman V2

Integrate

Model id bytedance/omnihuman/v2
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/bytedance/omnihuman/v2?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "image": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg",
    "audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Files like the example: $1.05 1,050 API credits your files are measured before the run Run it on this page

Get API key
ByteDance Lipsync & Avatars Lipsync #image-to-video

OmniHuman 2 handles longer audio of 4 to 300 seconds, with an optional multilingual scene prompt

ByteDance · Video

Your first result goes here

Build a request below and run it with your API key. Outputs are copied to our storage, kept forever or 7 days for free.

Build a request

Controls are generated from the model schema. The code and the price update as you change them.

Precise scene, movement, and camera control through an optional text prompt written in any supported language: Indonesian, Spanish (Mexican), Korean, Japanese, English, or Chinese.

•required image_url
Drop a file, or

URL pointing to the image from which the video is generated. The image must have both dimensions within 300–6000 pixels and a width/height ratio within 0.4–2.5. Files are limited to 30 MB and must use jpeg, png, webp, bmp, tiff, gif, heic or heif format.

•required audio_url
Drop a file, or

Provide the video's source audio through a URL pointing to a file lasting 4–300 seconds. The file must be wav or mp3 and no larger than 15 MB.

POST /run/bytedance/omnihuman/v2?wait=20 quote → $1.05
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/bytedance/omnihuman/v2?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "image": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg",
    "audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Run this request

Your key stays in this browser: it is sent only to the Doitong API and saved (localStorage) only if you tick Remember. Get an API key

About Bytedance Omnihuman V2

Turns a person image and an audio file into a talking video. Audio must be wav or mp3, up to 15 MB, between 4 and 300 seconds. The image can be up to 30 MB, with sides of 300 to 6000 pixels. An optional `prompt` steers scene, movement and camera in several supported languages.

Parameters

Send either the canonical name or the native name, not both. Canonical names

NameType DefaultAllowed Description
promptoptional
Typestring | null
Precise scene, movement, and camera control through an optional text prompt written in any supported language: Indonesian, Spanish (Mexican), Korean, Japanese, English, or Chinese.
image_urlrequired image
Typeurl · image
URL pointing to the image from which the video is generated. The image must have both dimensions within 300–6000 pixels and a width/height ratio within 0.4–2.5. Files are limited to 30 MB and must use jpeg, png, webp, bmp, tiff, gif, heic or heif format.
audio_urlrequired audio
Typeurl · audio
Provide the video's source audio through a URL pointing to a file lasting 4–300 seconds. The file must be wav or mp3 and no larger than 15 MB.
required Canonical name, also accepted

File parameters take a public https:// URL, a data: URI up to 10 MB, or the file_url of an upload. Files

Output

GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "bytedance/omnihuman/v2",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 1050,
    "usd": "1.05",
    "charged": 1050,
    "refunded": 0
  },
  "input": {
    "image_url": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg",
    "audio_url": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200
    },
    "duration": 5
  },
  "outputs": [
    {
      "type": "video",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_size": 1843200,
      "width": 1280,
      "height": 720,
      "duration": 5,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
Your files, your choiceEvery outputs[].url is a copy on our storage: kept forever (paid per GB-month) or 7 days for free, by your account setting or ?storage=.
Same shape on every modeltype, url, content_type, width, height and duration, for images, video and audio alike. output is the model’s own result object.
Fields of output
video
object {url, content_type, file_name, file_size}Resulting video file.
duration
number

More models: Lipsync & Avatars

For AI agents: this page as Markdown is at https://doitong.com/developers/models/bytedance/omnihuman/v2.md. All models and guides: https://doitong.com/developers/llms.txt