Skip to content

Live Portrait

Integrate

Model id live-portrait
# 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/live-portrait?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
    "image": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg"
  }'

# 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"

Up to $4.50 per run charged by actual usage, the rest is refunded Run it on this page

Get API key
Kuaishou Lipsync & Avatars Lipsync #expression#animation

Animates a portrait image with expressions taken from a driving video, with fine face controls

Kuaishou · 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.

•required video_url
Drop a file, or

Video URL used to drive lip synchronization.

•required image_url
Drop a file, or

Image URL for animation.

Advanced blink · eyebrow · wink · pupil_x · pupil_y · aaa · eee · woo · smile · rotate_pitch · rotate_yaw · rotate_roll · dsize · scale · vx_ratio · vy_ratio · batch_size · flag_lip_zero · flag_eye_retargeting · flag_lip_retargeting · flag_stitching · flag_relative · flag_pasteback · flag_do_crop · flag_do_rot · enable_safety_checker
default 0
default 0

Degree of eyebrow raising or lowering.

default 0

Degree of winking.

default 0

Horizontal pupil movement amount.

default 0

Vertical pupil movement amount.

default 0

Degree of mouth opening into the 'aaa' shape.

default 0

Degree of mouth shaping into the 'eee' position.

default 0

Degree of mouth shaping into the 'woo' position.

default 0

Degree of smiling.

default 0

Face rotation amount along the pitch axis.

default 0

Face rotation amount along the yaw axis.

default 0

Face rotation amount along the roll axis.

default 512

Dimensions of the resulting image.

default 2.3

Scale multiplier applied to the face crop.

default 0

Ratio controlling the face crop's horizontal offset.

default -0.125

Face-crop vertical positioning ratio: the sign determines direction, upward for positive values and downward for negative values.

default 32

Model batch size, with a speed–memory trade-off: increasing it uses more memory in exchange for faster execution.

POST /run/live-portrait?wait=20 quote → $4.50
# 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/live-portrait?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
    "image": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg"
  }'

# 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 Live Portrait

Transfers facial motion from a driving video onto a still portrait, producing a video. Besides `video_url` and `image_url`, it offers numeric controls for blink, eyebrow, wink, pupils, mouth shapes (aaa, eee, woo), smile and head rotation in pitch, yaw and roll. Crop and stitching options such as `flag_do_crop` and `flag_pasteback` are available, and `dsize` sets the output size (default 512).

Parameters

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

NameType DefaultAllowed Description
video_urlrequired video
Typeurl · video
Video URL used to drive lip synchronization.
image_urlrequired image
Typeurl · image
Image URL for animation.
eyebrowoptional
Typenumber
Default0
-30 – 30
Degree of eyebrow raising or lowering.
winkoptional
Typenumber
Default0
0 – 25
Degree of winking.
pupil_xoptional
Typenumber
Default0
-45 – 45
Horizontal pupil movement amount.
pupil_yoptional
Typenumber
Default0
-45 – 45
Vertical pupil movement amount.
aaaoptional
Typenumber
Default0
-200 – 200
Degree of mouth opening into the 'aaa' shape.
eeeoptional
Typenumber
Default0
-40 – 40
Degree of mouth shaping into the 'eee' position.
woooptional
Typenumber
Default0
-100 – 100
Degree of mouth shaping into the 'woo' position.
smileoptional
Typenumber
Default0
-2 – 2
Degree of smiling.
flag_lip_zerooptional
Typeboolean
Defaulttrue
Pre-animation lip closure, applicable only with both flag_eye_retargeting and flag_lip_retargeting set to False.
rotate_pitchoptional
Typenumber
Default0
-45 – 45
Face rotation amount along the pitch axis.
rotate_yawoptional
Typenumber
Default0
-45 – 45
Face rotation amount along the yaw axis.
rotate_rolloptional
Typenumber
Default0
-45 – 45
Face rotation amount along the roll axis.
flag_eye_retargetingoptional
Typeboolean
Defaultfalse
Eye retargeting toggle.
flag_lip_retargetingoptional
Typeboolean
Defaultfalse
Lip retargeting toggle.
flag_stitchingoptional
Typeboolean
Defaulttrue
Stitching toggle; enabling it is recommended.
flag_relativeoptional
Typeboolean
Defaulttrue
Relative motion toggle.
flag_pastebackoptional
Typeboolean
Defaulttrue
Paste-back/stitching option that places the animated face crop into the original image, mapping it out of face-crop coordinates.
flag_do_cropoptional
Typeboolean
Defaulttrue
Controls whether the source portrait is cropped into the face-crop coordinate space.
flag_do_rotoptional
Typeboolean
Defaulttrue
Controls whether rotation is performed when flag_do_crop is true.
dsizeoptional
Typeinteger
Default512
Dimensions of the resulting image.
scaleoptional
Typenumber
Default2.3
Scale multiplier applied to the face crop.
vx_ratiooptional
Typenumber
Default0
Ratio controlling the face crop's horizontal offset.
vy_ratiooptional
Typenumber
Default-0.125
Face-crop vertical positioning ratio: the sign determines direction, upward for positive values and downward for negative values.
batch_sizeoptional
Typeinteger
Default32
Model batch size, with a speed–memory trade-off: increasing it uses more memory in exchange for faster execution.
enable_safety_checkeroptional
Typeboolean
Defaultfalse
Controls whether safety checking is enabled. When active, the checker processes the input image to verify that it contains a face before model processing.
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": "live-portrait",
  "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": 4500,
    "usd": "4.50",
    "charged": 4500,
    "refunded": 0
  },
  "input": {
    "video_url": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
    "image_url": "https://content.doitong.com/images/showcase/v3/avatar/talking_avatar.jpg"
  },
  "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
    }
  },
  "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}Video file produced by generation.

More models: Lipsync & Avatars

For AI agents: this page as Markdown is at https://doitong.com/en-US/developers/models/live-portrait.md. All models and guides: https://doitong.com/developers/llms.txt