すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:LivePortrait video generation API reference

最終更新日:Dec 27, 2025

LivePortrait モデルは、LivePortrait-detect モデルで処理されたポートレート画像と人間の声の音声ファイルから、軽量でダイナミックなポートレート動画を迅速に生成します。このドキュメントでは、API を呼び出してこのモデルの動画生成機能を使用する方法について説明します。

重要

このドキュメントは、中国 (北京) リージョンにのみ適用されます。このモデルを使用するには、中国 (北京) リージョンの API キー を使用する必要があります。

モデルの概要

モデル

説明

liveportrait

Liveportrait はポートレート動画生成モデルです。ポートレート画像と人間の声の音声ファイルから、軽量でダイナミックなポートレート動画を生成します。

HTTP API

機能説明

ダイナミックなポートレート動画を生成します。

前提条件

入力制限

  • 画像フォーマット:JPEG、JPG、PNG、BMP、または WebP。

  • 画像解像度:画像ファイルのサイズは 10 MB 未満である必要があります。アスペクト比は 2 以下、最大辺長は 4096 ピクセル以下である必要があります。

  • 音声フォーマット:WAV または MP3。

  • 音声制限:音声ファイルのサイズは 15 MB 未満である必要があります。長さは 1 秒から 3 分の間である必要があります。

  • 音声コンテンツ:音声には、環境ノイズ、BGM、その他の音の干渉がなく、明瞭で十分な音量の人の声が含まれている必要があります。

  • 画像と音声ファイルは、HTTP または HTTPS の URL を使用してアップロードします。ローカルファイルパスはサポートされていません。

ジョブの送信

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis/
説明
  • これは時間のかかるアルゴリズム呼び出しであるため、ジョブは非同期呼び出しを使用して送信されます。

  • ジョブを送信すると、システムはジョブ ID を返します。「ジョブステータスのクエリと結果の取得」API を使用して、ジョブのステータスと結果を取得します。

リクエストパラメーター

フィールド

パラメーターの渡し方

必須

説明

Content-Type

String

ヘッダー

はい

リクエストの型。`application/json` に設定します。

application/json

Authorization

String

ヘッダー

はい

API キー。例:`Bearer d1**2a`。

Bearer d1**2a

X-DashScope-Async

String

ヘッダー

はい

ジョブを非同期で送信するために `enable` に設定します。

enable

model

String

本文

はい

呼び出すモデル。`liveportrait` に設定します。

liveportrait

input.image_url

String

本文

はい

アップロードされた画像の URL。画像は、まず LivePortrait 画像検出 API で処理される必要があります。

  • 画像ファイルのサイズは 10 MB 未満、アスペクト比は 2 以下、最大辺長は 4096 ピクセル以下である必要があります。

  • サポートされているフォーマット:JPEG、JPG、PNG、BMP、WebP。

説明

ファイルのアップロードは HTTP または HTTPS リンクのみをサポートし、ローカルファイルパスはサポートしていません。

"image_url": "http://a/a.jpg"

input.audio_url

String

本文

はい

アップロードされた音声ファイルの URL。

  • 音声ファイルのサイズは 15 MB 未満、長さは 1 秒から 3 分の間である必要があります。

  • サポートされているフォーマット:WAV、MP3。

説明

ファイルのアップロードは HTTP または HTTPS リンクのみをサポートし、ローカルファイルパスはサポートしていません。

http://aaa/bbb.wav

parameters.template_id

String

本文

いいえ

テンプレートに基づいて頭の動きの姿勢と範囲を制御します。サポートされているテンプレート:`normal`、`calm`、`active`。デフォルト値:`normal`。

"normal"

parameters.eye_move_freq

Float

本文

いいえ

1秒あたりのまばたきの回数。有効値:0~1。値が大きいほど、まばたきの頻度が高くなります。デフォルト値:0.5。

0.5

parameters.video_fps

Integer

本文

いいえ

出力動画のフレームレート。有効値:15~30。デフォルト値:24。

24

parameters.mouth_move_strength

Float

本文

いいえ

口の動きの大きさ。有効値:0~1.5。値が大きいほど、口の形が大きくなります。0 に設定すると、口は動きません。デフォルト値:1。

1

parameters.paste_back

Boolean

本文

いいえ

生成された顔を元の画像に貼り戻すかどうかを指定します。有効値:`true` または `false`。`false` に設定すると、生成された顔のみが返され、体は無視されます。デフォルト値:`true`。

true

parameters.head_move_strength

Float

本文

いいえ

頭の動きの大きさ。有効値:0~1。値が大きいほど、頭の動きの範囲が広くなります。デフォルト値:0.7。

0.7

レスポンスパラメーター

フィールド

説明

output.task_id

String

送信された非同期ジョブの ID。実際のジョブ結果は、非同期ジョブクエリ API を使用して取得する必要があります。

a8532587-fa8c-4ef8-82be-0c46b17950d1

output.task_status

String

非同期ジョブが送信された後のジョブのステータス。

"PENDING"

request_id

String

リクエストの一意の ID。

7574ee8f-38a3-4b1e-9280-11c33ab46e51

アクションテンプレート

template_id

効果の説明

normal

デフォルトのアクションテンプレートです。頭を動かす範囲は中程度で、様々なシナリオに適しています。

calm

キャラクターの動きが落ち着き、頭を動かす範囲が狭くなります。このテンプレートは、ブロードキャストなどのシナリオに推奨されます。

active

キャラクターの動きが活発になり、頭を動かす範囲が広くなります。このテンプレートは、歌唱などのシナリオに推奨されます。

リクエストの例

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis/' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "liveportrait",
    "input": {
        "image_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250911/ynhjrg/p874909.png",
        "audio_url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20251226/fwnqyq/liveportrait_boy.mp3"
    },
      "parameters": {
         "template_id": "normal",
         "eye_move_freq": 0.5,
         "video_fps":30,
         "mouth_move_strength":1,
         "paste_back": true,
         "head_move_strength":0.7
    }
  }'

レスポンスの例

{
    "output": {
	"task_id": "a8532587-fa8c-4ef8-82be-0c46b17950d1", 
    	"task_status": "PENDING"
    },
    "request_id": "7574ee8f-38a3-4b1e-9280-11c33ab46e51"
}

ジョブステータスのクエリと結果の取得

GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}

リクエストパラメーター

フィールド

パラメーターの渡し方

必須

説明

Authorization

String

ヘッダー

はい

API キー。例:`Bearer d1**2a`。

Bearer d1**2a

task_id

String

Url Path

はい

クエリするジョブの ID。

a8532587-fa8c-4ef8-82be-0c46b17950d1

レスポンスパラメーター

フィールド

説明

output.task_id

String

クエリされたジョブの ID。

a8532587-fa8c-4ef8-82be-0c46b17950d1

output.task_status

String

クエリされたジョブのステータス。

ジョブステータス:

PENDING:ジョブはキューに入っています。

RUNNING:ジョブは実行中です。

SUCCEEDED:ジョブは成功しました。

失敗

UNKNOWN:ジョブが存在しないか、ステータスが不明です。

output.results.video_url

String

ジョブが成功した場合、このパラメーターにはモデルによって生成された結果オブジェクトが含まれます。各オブジェクトには、生成された結果の URL が含まれます。`video_url` はジョブ完了後 24 時間有効です。

https://xxx/1.mp4

usage.video_duration

Float

このリクエストで生成された動画の長さ (秒単位)。

10.23

usage.video_ratio

String

このリクエストで生成された動画のフレームタイプ。値は `standard` です。

"video_ratio": "standard"

request_id

String

リクエストの一意の ID。

7574ee8f-38a3-4b1e-9280-11c33ab46e51

リクエストの例

86ecf553-d340-4e21-xxxxxxxxx を実際のタスク ID に置き換えてください。

curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/86ecf553-d340-4e21-xxxxxxxxx \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

レスポンスの例 (成功)

{
    "request_id": "b64e9c68-3923-462d-b25a-xxxxxx",
    "output": {
        "task_id": "a1c69ca5-810b-49ae-8b20-xxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2025-12-26 11:33:03.146",
        "scheduled_time": "2025-12-26 11:33:13.312",
        "end_time": "2025-12-26 11:33:22.455",
        "results": {
            "video_url": "http://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.mp4?Expires=xxx"
        }
    },
    "usage": {
        "video_duration": 2.79,
        "video_ratio": "standard"
    }
}

レスポンスの例 (失敗)

{
    "request_id": "7574ee8f-38a3-4b1e-9280-xxxxxx",
    "output": {
        "task_id": "a8532587-fa8c-4ef8-82be-xxxxxx", 
    	"task_status": "FAILED",
    	"code": "xxx", 
    	"message": "xxxxxx"
    }  
}

ステータスコード

一般的なステータスコードについては、「エラーメッセージ」をご参照ください。