
omnihuman-2.0OmniHuman 2.0 is ByteDance's audio-driven human video model: give it one portrait image and one driving audio clip, and it returns an MP4 in which the person speaks or sings that audio, with lip sync, facial expressions and head, hand and body gestures that follow the sound. On APIMODELS it is one model id, omnihuman-2.0 (omnihuman-2-0, omnihuman-2 and omnihuman2 also work), on the unified video endpoint. Send the portrait as image_url (image, or image_urls with exactly one item, also work) and the audio as audio_url, each as a public URL or a base64 data URI. The image can be JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC or HEIF, under 30 MB, with each side between 300 and 6000 pixels and an aspect ratio (width / height) between 0.4 and 2.5; the audio must be WAV or MP3, 4 to 300 seconds long and under 15 MB. An optional prompt of up to 300 characters, in Chinese, English, Japanese, Korean, Mexican Spanish or Indonesian, guides gestures, emotion and camera, while the audio keeps the timing. enable_watermark defaults to false on APIMODELS, so videos come back without a watermark unless you ask for one. The video runs as long as the audio, keeps it as the soundtrack and follows the portrait's aspect ratio at roughly 720p: in our test on 29 October 2026, a 5.36-second English speech clip and a 1792×2390 portrait returned an 834×1112, 24 fps, 6.0-second MP4 in about two minutes. ByteDance also describes the model as handling singing, scenes with several people and prompt-guided motion. Billing is $0.091 per second of driving audio, rounded up to the whole second and measured when the task is created: the 5.36-second clip bills 6 seconds, $0.546; the minimum is 4 seconds ($0.364) and the maximum 300 seconds ($27.30). Audio whose length cannot be read, or that falls outside 4 to 300 seconds, is rejected with a 400 before anything is charged, and failed generations are not charged.
One face or a scene with people. JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC or HEIF; each side 300-6000 px; aspect ratio 0.4-2.5.
Speech or singing, WAV or MP3, 4-300 seconds. The video runs exactly as long as this audio.
Chinese, English, Japanese, Korean, Mexican Spanish or Indonesian.
Off by default: the video comes back without a watermark.
Billed per second of audio, rounded up to the whole second: 4 s minimum ($0.364), 300 s maximum ($27.30). Failed generations are not charged.
Calling it from code? See the API docs.
Your OmniHuman 2.0 video will appear here
One portrait image and one driving audio clip become an MP4 in which the person speaks or sings it, with lip sync, expressions and gestures
Driving audio from 4 to 300 seconds; the video runs exactly as long as the audio and keeps it as the soundtrack
An optional prompt of up to 300 characters, in six languages, steers gestures, emotion and camera while the audio keeps the timing
ByteDance describes lip sync for talking and singing, and portraits with more than one person in the frame
Failed generations are not charged, and audio we cannot measure or that falls outside 4-300 seconds is rejected with a 400 before a task is created
Rounded up to the whole second: 4 s minimum $0.364, 60 s $5.46, 300 s $27.30. No watermark by default, at no extra cost
OmniHuman 2.0 is ByteDance's audio-driven avatar model: it takes one portrait image and one voice or song, 4 to 300 seconds long, and returns an MP4 in which that person speaks or sings it, with lip sync, facial expressions and body gestures that follow the sound.
On APIMODELS the OmniHuman 2.0 API is a single model id, omnihuman-2.0, on POST /v1/video/generations, billed at $0.091 per second of driving audio, with no watermark by default; a failed OmniHuman 2.0 generation is not charged.
omnihuman-2.0An audio-driven avatar video model: the sound decides the performance, the photo decides who performs.
One photo, one voice
OmniHuman 2.0 animates a still portrait from the audio alone. You do not record video, mark keyframes or rig a face: the voice track drives the whole clip, which is why this works as a talking avatar API.
image_urlaudio_urlMouth shapes follow the sound
The mouth is generated to match each syllable, and ByteDance describes the same lip sync for songs as for speech. That makes OmniHuman 2.0 an AI lip sync API for voice-overs, replies and singing covers alike.
Head, hands and body move
Beyond the lips, OmniHuman 2.0 adds facial expressions, head turns and hand and body gestures timed to the audio, so a presenter looks like they are delivering the line rather than reading it.
4 to 300 seconds of audio
The video is exactly as long as the driving audio, from 4 seconds up to 300. A full lesson segment, a product walkthrough or a whole song fits in one OmniHuman 2.0 request without stitching.
More than one face in frame
ByteDance describes OmniHuman 2.0 as handling images with several people. One request carries one audio clip, so say in the prompt who speaks; for turn-taking dialogue, generate one clip per turn.
Up to 300 characters, six languages
An optional prompt steers gestures, emotion, posture and camera, in Chinese, English, Japanese, Korean, Mexican Spanish or Indonesian. The audio keeps the timing; the prompt shapes the rest of the OmniHuman 2.0 performance.
promptOne route, a handful of fields, and limits that are checked before a task is created.
Send one image and one audio clip to POST /v1/video/generations with model omnihuman-2.0. The task is asynchronous: poll it or receive the OmniHuman 2.0 result at your callback URL.
image_urlRequired. Exactly one portrait as a public URL or base64 data URI; image, or image_urls with a single item, also work.audio_urlRequired. The driving voice or song, WAV or MP3, 4–300 seconds, under 15 MB. Its length sets the video length and the price.promptOptional. Up to 300 characters on gestures, emotion and camera.enable_watermarkOptional boolean, false by default on APIMODELS, so the video has no watermark unless you set true.callback_urlOptional. We POST the finished task here; leave it out and poll the GET endpoint.| OmniHuman 2.0 input | Accepted | If it is out of range |
|---|---|---|
| Image format | JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC, HEIF | Rejected by the model; failed generations are not charged |
| Image size and sides | Under 30 MB; each side 300–6000 px | Same as above |
| Image aspect ratio | Width / height between 0.4 and 2.5 | Same as above |
| Number of images | Exactly one | 400 before a task is created |
| Audio format and size | WAV or MP3, under 15 MB | 400 if the length cannot be read |
| Audio length | 4–300 seconds | 400 before a task is created |
| Prompt | Optional, up to 300 characters | 400 before a task is created |
| Output | MP4 with your audio track, as long as the audio, ~720p in the image's aspect ratio | — |
There is no duration or resolution parameter: OmniHuman 2.0 takes the length from the audio and the frame from the portrait. Crop the image to the shape you want to publish (a 9:16 portrait is 0.5625, inside the 0.4–2.5 range) and trim the audio to the part you need before you send it.
One rate, counted on the driving audio and rounded up to the whole second.
$0.364
4 seconds of audio. The portrait, the prompt and the watermark setting do not change the price, and failed OmniHuman 2.0 generations are not charged.
| Driving audio | Billed seconds | OmniHuman 2.0 price |
|---|---|---|
| 4 s (minimum) | 4 | $0.364 |
| 5.36 s (our test clip) | 6 | $0.546 |
| 10 s | 10 | $0.91 |
| 30 s | 30 | $2.73 |
| 60 s | 60 | $5.46 |
| 120 s | 120 | $10.92 |
| 300 s (maximum) | 300 | $27.30 |
15-second spokesperson ad
$1.365
15 billed s × $0.091
20.2-second voice reply
$1.911
rounded up to 21 billed s × $0.091
45-second training intro
$4.095
45 billed s × $0.091
Podcast cut from four 12-second turns
$4.368
4 clips × 12 billed s × $0.091
3-minute song for a singing avatar
$16.38
180 billed s × $0.091
5-minute monologue
$27.30
300 billed s × $0.091
How the seconds are counted: we read the audio's length when the task is created and round it up to the next whole second, so 5.36 seconds bills as 6. If the length cannot be read (a login wall, an expired link, an unsupported file) or falls outside 4–300 seconds, the OmniHuman 2.0 request returns a 400 and nothing is charged. Because the clip and the bill both follow the audio, trimming silence at the start and end is the simplest way to keep the cost down.
One run through our own API on 29 October 2026. It is one example, not a promised size or speed.
1792×2390 portrait + 5.36 s of English speech
A single still portrait and a short spoken line, no prompt, enable_watermark left at its default.
834×1112, 24 fps, 6.0 s MP4
The frame kept the portrait's aspect ratio at roughly 720p, the speech came back as the soundtrack, and there was no watermark.
About two minutes, $0.546
The 5.36-second clip was billed as 6 seconds. Plan for a few minutes per OmniHuman 2.0 task and poll every 10 to 15 seconds.
Wherever a face has to deliver a voice: apps, ads, lessons, songs and shows.
Turn a user's photo and a reply from your text-to-speech step into a talking avatar. One API key covers OmniHuman 2.0 and the text-to-speech models on apimodels.app, so the whole pipeline bills to one balance.
Lip sync follows the vocals of a song, and the five-minute ceiling covers most full tracks, so a cover, a birthday song or a music teaser can come from one portrait and one audio file.
Keep one presenter photo and swap the script: each new voice-over becomes a new ad variant for testing. A 30-second spot costs $2.73 with OmniHuman 2.0.
For a show with several characters, use a multi-person image and say who speaks in the prompt, or generate each speaker's turn as its own clip and edit them together for clean back-and-forth.
Bring illustrated, 3D-rendered or AI-generated characters to life with a voice. Results are best when the face is clear and front-facing; use the prompt for attitude and movement.
A consistent on-screen instructor for lessons and onboarding: record or synthesize each segment, up to five minutes, and OmniHuman 2.0 turns it into a presenter video without a camera crew.
Pick OmniHuman 2.0 when a still photo has to speak or sing; pick another model for the cases below.
Up to 300 seconds of audio per request, with expressions and gestures, from nothing more than one portrait.
ByteDance describes lip sync for songs as well as speech, so singing avatars and covers are in scope.
A 300-character prompt shapes the performance around the audio, in six prompt languages.
Swap the audio to make the same face deliver another script; the portrait and the look stay the same.
Digital Human re-syncs the mouth on your own footage and keeps the original motion, at $0.01 per second of audio.
OmniHuman 2.0 returns roughly 720p in the portrait's aspect ratio; there is no resolution switch.
DreamActor V2 transfers movement from a driving video onto a character image, at $0.06/s.
A text-to-video model such as Kling 4.0 builds the whole shot from a prompt, with sound, from $0.157/s.
Small habits that keep results clean and bills predictable.
The video length and the bill both come from the audio. Cut silence and retakes before upload; every second you remove is $0.091 saved.
For spoken lines, a clear, close-miked voice gives the lip sync the strongest signal. Add music in your editor afterwards if the video needs it.
The video follows the image's aspect ratio. Keep the face visible and well lit, and crop to the format you will publish, within 0.4–2.5.
Describe gestures, mood and camera that suit the line. The audio still sets the timing, so a prompt that fights the voice will not win.
Each OmniHuman 2.0 task takes minutes. Poll every 10 to 15 seconds, or pass callback_url and let us POST the result to you.
callback_urlResult files are deleted after 30 days. Download the MP4 or copy it to your own storage as soon as the task completes, and only use faces and voices you have the rights to.
From API key to downloaded talking video in four steps.
Sign up at apimodels.app and create a key in the console. One key and one USD balance cover OmniHuman 2.0 and every other model; top-ups start at $10.
Pick one portrait (300–6000 px per side, aspect ratio 0.4–2.5) and a WAV or MP3 of 4 to 300 seconds. Host both at public URLs, or send small files as base64 data URIs.
POST /v1/video/generations with model omnihuman-2.0, image_url, audio_url and an optional prompt, using the key as a Bearer token. The response holds a taskId.
Poll GET /v1/video/generations?task_id= until the state is completed, or wait for the callback, then download the MP4 from resultUrls within 30 days.
curl -X POST https://api.apimodels.app/v1/video/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "omnihuman-2.0",
"image_url": "https://example.com/presenter.jpg",
"audio_url": "https://example.com/script-take-3.mp3",
"prompt": "She smiles, leans toward the camera and gestures with her right hand; slow push-in"
}'
# { "code": 200, "msg": "success", "data": { "taskId": "clxxx", "state": "pending", "model": "omnihuman-2.0" } }
curl "https://api.apimodels.app/v1/video/generations?task_id=TASK_ID" -H "Authorization: Bearer YOUR_API_KEY"
# { "code": 200, "data": { "state": "completed", "resultUrls": ["https://r2.apimodels.app/videos/clxxx.mp4"] } }What you can check for yourself, before the price.
If an OmniHuman 2.0 task ends in failed, the charge is returned automatically and the reason is in failMsg, so a retry costs nothing extra.
More than one image, a prompt over 300 characters, audio outside 4–300 seconds or audio we cannot measure all return a clear 400 before a task exists.
Create, then poll the task id or receive the result at callback_url. Long five-minute renders never hold a connection open.
The same key and balance call OmniHuman 2.0, text-to-speech, image, video and LLM models, so a full avatar pipeline needs one integration.
enable_watermark is false unless you turn it on, and the setting does not change the price.
$0.091 per second of audio, rounded up and measured from your file. Pay as you go, no subscription; the playground shows the price before you generate.
Both versions share the same idea: an image, an audio clip and an optional prompt become a lip-synced talking video. The published specs differ mainly in length and resolution, and exact limits can vary by provider. The OmniHuman 2.0 column shows what the apimodels.app API enforces; apimodels.app does not offer OmniHuman 1.5.
| OmniHuman 2.0 | OmniHuman 1.5 | |
|---|---|---|
| Inputs | One image + one audio + optional prompt | One image + one audio + optional prompt |
| Audio length | 4–300 s (up to 5 minutes) | Usually under 60 s |
| Output resolution | Roughly 720p, in the image's aspect ratio | Usually 720p or 1080p |
| Lip sync for speech and singing | Yes | Yes |
| Facial expressions and gestures | Yes | Yes |
| Multi-person scenes | Yes | Yes |
| Prompt control | Yes, up to 300 characters | Yes |
| On apimodels.app | omnihuman-2.0, $0.091 per audio second | Not offered |
OmniHuman 2.0 is a Video Generation API provided by ByteDance. OmniHuman 2.0 is ByteDance's audio-driven human video model: give it one portrait image and one driving audio clip, and it returns an MP4 in which the person speaks or sings that audio, with lip sync, facial expressions and head, hand and body gestures that follow the sound. On APIMODELS it is one model id, omnihuman-2.0 (omnihuman-2-0, omnihuman-2 and omnihuman2 also work), on the unified video endpoint. Send the portrait as image_url (image, or image_urls with exactly one item, also work) and the audio as audio_url, each as a public URL or a base64 data URI. The image can be JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC or HEIF, under 30 MB, with each side between 300 and 6000 pixels and an aspect ratio (width / height) between 0.4 and 2.5; the audio must be WAV or MP3, 4 to 300 seconds long and under 15 MB. An optional prompt of up to 300 characters, in Chinese, English, Japanese, Korean, Mexican Spanish or Indonesian, guides gestures, emotion and camera, while the audio keeps the timing. enable_watermark defaults to false on APIMODELS, so videos come back without a watermark unless you ask for one. The video runs as long as the audio, keeps it as the soundtrack and follows the portrait's aspect ratio at roughly 720p: in our test on 29 October 2026, a 5.36-second English speech clip and a 1792×2390 portrait returned an 834×1112, 24 fps, 6.0-second MP4 in about two minutes. ByteDance also describes the model as handling singing, scenes with several people and prompt-guided motion. Billing is $0.091 per second of driving audio, rounded up to the whole second and measured when the task is created: the 5.36-second clip bills 6 seconds, $0.546; the minimum is 4 seconds ($0.364) and the maximum 300 seconds ($27.30). Audio whose length cannot be read, or that falls outside 4 to 300 seconds, is rejected with a 400 before anything is charged, and failed generations are not charged. Through APIMODELS platform, you can access this model via a unified API with transparent pay-as-you-go pricing. Current pricing: per second of audio: $0.091, 4s audio (minimum): $0.364, 10s audio: $0.91, 30s audio: $2.73, 60s audio: $5.46, 300s audio (maximum): $27.3.
Related model: Digital Human — when you already have video of the person — re-syncs the mouth on your footage and keeps the original motion, $0.01 per audio second
Related model: AI Lip-Sync — a simpler portrait + audio talking-head model, billed $0.02 per second
Related model: DreamActor V2 — when the motion should come from a reference video instead of the audio — $0.06/s
Related model: Kling 4.0 — when there is no portrait and the whole scene, sound included, comes from a prompt — 3-30 seconds, from $0.157/s
Quickly generate brand promotion videos for ad campaigns and social media marketing.
Create compelling short-form video content for platforms like TikTok, Instagram, and YouTube.
Generate product feature demonstrations and tutorials to improve user conversion.
Produce course explanations, knowledge explainers, and training videos at an affordable price.
OmniHuman 2.0 is available through APIMODELS at: per second of audio: $0.091, 4s audio (minimum): $0.364, 10s audio: $0.91, 30s audio: $2.73, 60s audio: $5.46, 300s audio (maximum): $27.3. Billing is pay-as-you-go — you only pay for what you generate.
Sign up at APIMODELS, get your API key, and call our unified API endpoint. We provide detailed API documentation with code examples in cURL, Python, and Node.js.
APIMODELS offers the same OmniHuman 2.0 model through our aggregation platform. We provide a unified API interface so you do not need separate accounts for each provider - one API key to access all models.
OmniHuman 2.0 is ByteDance's audio-driven human video model, and the OmniHuman 2.0 API turns one portrait image and one driving audio clip into a video of that person talking or singing. The lips follow the audio, and the face, head, hands and body move with it; ByteDance also describes support for scenes with several people and for guiding motion and camera with a text prompt. On apimodels.app it is one model id, omnihuman-2.0, on POST /v1/video/generations, billed at $0.091 per second of driving audio, and failed generations are not charged.
You send a portrait as image_url and a voice or song as audio_url, plus an optional prompt. The audio drives the performance: mouth shapes, expressions, head turns and gestures are generated to match the speech or singing, while the image fixes who appears and how the frame looks. The video runs as long as the audio and keeps it as the soundtrack, so there is no duration parameter. The call is asynchronous: the response holds a taskId, you poll GET /v1/video/generations?task_id= or pass callback_url, and the finished MP4 is in resultUrls. In our test on 29 October 2026, a 5.36-second clip took about two minutes.
The portrait can be JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC or HEIF, under 30 MB, with each side between 300 and 6000 pixels and a width-to-height ratio between 0.4 and 2.5, so very tall or very wide crops are rejected. Send exactly one image as image_url (image, or image_urls with a single item, also work). The driving audio must be WAV or MP3, 4 to 300 seconds long and under 15 MB. Both fields take a public URL or a base64 data URI; for larger files a URL is the safer choice.
Five minutes. The video is as long as the driving audio, which can run from 4 to 300 seconds, so one request covers anything from a short reply to a full five-minute monologue or song without stitching clips together. Audio shorter than 4 seconds or longer than 300 seconds is rejected with a 400 before a task is created. A 300-second request costs $27.30.
An MP4 that carries your audio track, runs as long as the audio and is framed like your portrait at roughly 720p. In our test, a 1792×2390 portrait and a 5.36-second English speech clip came back as an 834×1112, 24 fps, 6.0-second video. That is one measured example, not a fixed size: the exact dimensions follow the input image's aspect ratio. On apimodels.app enable_watermark defaults to false, so the video has no watermark unless you send enable_watermark: true.
ByteDance describes OmniHuman 2.0 as handling scenes with several people, so a portrait with two or more characters is accepted. Each request takes one driving audio clip, so use the prompt to say who is speaking and how the others react. For an AI podcast or interview in which speakers take turns, a dependable approach is to generate each turn as its own clip with its own audio and cut the clips together; each clip is billed only on its own audio length.
Add a prompt of up to 300 characters that describes gestures, emotion, posture or camera, for example "she smiles, leans toward the camera and gestures with her right hand; slow push-in". The audio still sets the timing and the lip sync; the prompt shapes everything around it. Prompts can be written in Chinese, English, Japanese, Korean, Mexican Spanish or Indonesian. A longer prompt is rejected with a 400 before anything is charged, and the prompt can be left out entirely.
Both take an image, an audio clip and an optional prompt, and both offer lip sync, facial expressions, gestures, multi-person scenes and prompt control. The main published difference is length: OmniHuman 1.5 is usually offered for audio under 60 seconds at 720p or 1080p, while OmniHuman 2.0 accepts up to 300 seconds and returns roughly 720p. Exact limits can vary by provider. apimodels.app offers OmniHuman 2.0, and the limits on this page are the ones our API enforces.
$0.091 per second of driving audio, billed on the audio length rounded up to the whole second and measured by us when the task is created. A 5.36-second clip bills as 6 seconds, $0.546; 10 seconds is $0.91, 60 seconds $5.46, and the 300-second maximum $27.30. The minimum is 4 seconds, $0.364. The image, the prompt and the watermark setting do not change the price, and failed generations are not charged.
Create an account at apimodels.app and generate an API key in the console; one key and one USD balance cover every model. Then send: curl -X POST https://api.apimodels.app/v1/video/generations -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "omnihuman-2.0", "image_url": "https://example.com/portrait.jpg", "audio_url": "https://example.com/voice.mp3", "prompt": "talks warmly to the camera"}'. The response holds a taskId: poll GET /v1/video/generations?task_id= every 10 to 15 seconds until the state is completed, or pass callback_url, then download the MP4 from resultUrls within 30 days.
Not entirely. Eligible new accounts get $0.10 of trial credit, but the shortest OmniHuman 2.0 request, 4 seconds of audio, costs $0.364, so a first test needs a top-up; top-ups start at $10. Billing is pay-as-you-go with no subscription. The playground on this page reads your audio's length and shows the price before you click Generate, and failed generations are not charged.
On APIMODELS, OmniHuman 2.0 runs alongside 60+ models on one API key and one balance, so choosing is about fit, not lock-in. It supports Image + Audio to Video, Lip Sync for Speech & Singing, Expressions & Gestures, Multi-Person Scenes, Prompt-Guided Motion, Up to 300s, No Watermark by Default, $0.091/s of Audio, and you can weigh it on price and capability against other Video Generation models, then switch by changing a single model-name string — no new account or integration. Browse every Video Generation option with live pricing at apimodels.app/models.
OmniHuman 2.0 supports: Image + Audio to Video, Lip Sync for Speech & Singing, Expressions & Gestures, Multi-Person Scenes, Prompt-Guided Motion, Up to 300s, No Watermark by Default, $0.091/s of Audio. See the APIMODELS docs for full parameters and call examples.
Yes. APIMODELS exposes OmniHuman 2.0 through a single unified API and one key — no separate provider accounts, and no need to handle each provider's regional network access yourself.
We support Stripe (Visa, Mastercard, and other international cards) and Alipay. Credits are available instantly after payment.