Dreamina is an **AI digital human (talking-photo)** service powered by ByteDance **OmniHuman 1.5**: upload one portrait photo plus an audio clip, and the person in the photo **speaks with lip movement synced to the audio**. No modeling, no green screen, no on-camera talent — one frontal portrait plus a voice track is enough to produce a natural digital-human narration video. Great for digital-human narration, memorial videos, virtual hosts, talking-head marketing, education and brand spokespeople. ## Key Features - **Audio-driven lip sync**: the character speaks the audio with synchronized lips, expression and head/shoulder motion — no fake "talking PPT" feel. - **Single image**: one clear frontal portrait + a driving audio is all you need — no multi-angle assets or training. - **Controllable emotion & style**: optional `prompt` steers expression, emotion, stability and style. - **Multi-person targeting**: use `mask_url` to drive a specific person in a group photo. - **HD output + CDN hosting**: ~1664×1248, automatically re-hosted on our CDN — ready to use and download. - **Sync / async modes**: get the result inline for short jobs; for long ones use `callback_url` or `async: true` + polling. ## Use Cases - **Digital-human narration / virtual hosts**: produce talking-head videos from a single photo instead of filming. - **Memorial videos**: let a person in an old photo "speak" for heartfelt, commemorative moments. - **Talking-head marketing**: quickly generate spokesperson content for products and brands. - **Education & training**: pair lecture audio with an instructor portrait to mass-produce course videos. - **Multilingual broadcasts**: drive the same portrait with audio in different languages. ## Input Requirements | Input | Requirement | |---|---| | `image_url` | Publicly reachable; a clear, well-lit **frontal portrait** works best — face unobstructed and reasonably large | | `audio_url` | Publicly reachable mp3/wav; keep under 60s (≤30s for 1080p, ≤60s for 720p) | ## API Overview | Endpoint | Description | Billing | |---|---|---| | `POST /dreamina/videos` | Generate a talking-photo video (sync; async via `callback_url` or `async:true`) | By video duration | | `POST /dreamina/tasks` | Retrieve a task result by `task_id` / `trace_id` | Free | ## Quickstart ```bash curl -X POST https://api.acedata.cloud/dreamina/videos \ -H "Authorization: Bearer $ACEDATACLOUD_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "omnihuman-1.5", "image_url": "https://cdn.acedata.cloud/4hfydw.jpg", "audio_url": "https://your.cdn/voice.mp3", "prompt": "gentle, calm, natural, subtle head movement" }' ``` `data.video_url` in the response is the generated video. In async mode (`async: true`), take the returned `task_id` and poll: ```bash curl -X POST https://api.acedata.cloud/dreamina/tasks \ -H "Authorization: Bearer $ACEDATACLOUD_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "action": "retrieve", "id": "" }' ``` ## Pricing Billed by **generated video duration** — about **¥1/second** at the largest package (e.g. a 10s video ≈ ¥10). The `/dreamina/tasks` retrieval endpoint is free. A single API Token works across every service on the platform, and new accounts receive free credits. ## FAQ - **What image works best?** A clear frontal portrait with even lighting and an unobstructed face; side profiles, blur or low light degrade lip-sync and expression quality. - **How long can the audio be?** Keep it under 60s; longer audio may be truncated or reduce stability. - **Can I target one person in a group photo?** Yes — pass a subject mask via `mask_url`. - **How long does generation take?** It depends on audio length; for long jobs use `callback_url` or `async:true` + `/dreamina/tasks` polling to avoid request timeouts. - **Are results stored?** The video is re-hosted on our CDN and returned via `video_url`; download and save it to your own storage promptly.