はじめに
Vidu Q3 Turbo は Vidu の Q3 ラインの高速ティアで、画像→動画と video-extend のエンドポイントとして提供しています。このページでは画像→動画を扱います。image_url の開始フレームが被写体と出力の形を決め、必須の prompt が動き、カメラ、音を指示します。クリップは 1〜16 秒(整数秒)で、解像度は 540p か 720p、既定値は 720p です。音声は同じ生成で作られ、generate_audio を false にしない限りオンのままです。1 枚の静止画から多くの動きを試し、そのうえで納品用のテイクを決めるための設計です。
主な機能とハイライト
試作用の値と納品用の値
resolution は 540p と 720p を受け付け、720p がこのエンドポイントの既定値であり上限でもあります。2 つの値は対で使います。540p は動きをまだ詰めている段階の生成に、720p は納品するテイクに使います。解像度は 1 つのフィールドなので、切り替えてもプロンプト、フレーム、seed には影響しません。
1 枚のフレームから短いバリエーション
長さは 1〜16 秒(整数秒)で、バリエーションを作る段階では 1〜4 秒が実用的な範囲です。凝った指示を 1 つ書いてうまくいくことを期待するのではなく、同じ静止画から動きを 1 つずつ変えた短いテイクをまとめて生成し、うまく見えるものを残してください。
被写体と形は静止画で決まる
被写体、衣装、スタイリング、フレーミング、出力の形はプロンプトではなく画像で決まるため、同じフレームからの 2 回の生成は、画面に誰がいるかではなく動きだけが異なります。全体の動きの量は movement_amplitude で決まり、何が動くかはプロンプトで決まります。静止画と食い違うテキストを書くと、両者の間で折り合いをつけたようなクリップになるため、プロンプトはフレームに写っている内容と矛盾しないようにしてください。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
image_url | はい | 必須です。被写体、見た目、出力の形を固定します。 |
prompt | はい | 必須です。動き、カメラ、音だけを書いてください。 1 文字以上 |
movement_amplitude | いいえ | 画面内のものがどれだけ動くかです。 |
duration_seconds | いいえ | 1〜16 の整数秒。変化形を出す工程での実用域は 1〜4 秒です。 |
resolution | いいえ | 540p か 720p です。動きが固まるまでは 540p で試し、納品する一本だけ 720p に上げます。 |
generate_audio | いいえ | 既定でオン。既存のミックスの下に敷くカットでは false にしてください。 デフォルト値: |
bgm | いいえ | 場面の雰囲気に合う BGM を敷きます。既定ではオンです。 デフォルト値: |
seed | いいえ | 1 つの変数だけを変えたときに 2 回の実行を比較可能にします。フレーム単位の一致を保証するものではありません。 |
料金
| 仕様 | 料金 |
|---|---|
| $0.042 / 秒 |
| $0.066 / 秒 |
ユースケース
キャラクターのリアクションセット
衣装を着た 1 枚の静止画から、お辞儀、ウインク、手を振る、首をかしげるの 4 本を作れます。フレームは同じで、プロンプトだけが 4 通りです。画像が同一性を固定するため、セット全体がフィードでつなげて使えるだけの一貫性を保ちます。
正方形と縦型の SNS 向けカット
出力の形は静止画から来るため、9:16 の縦長と 1:1 の正方形は、動画の設定を 2 通り用意するのではなく、画像の段階で 2 回書き出すだけです。どちらも音が同期した 720p のクリップになります。
1 枚の静止画でカメラの動きを試す
プッシュインの例は、カメラの動きを 1 つだけ指示し、ほかは何も指定しません。フレームが少しずつ締まり、最後には肩だけが映ります。長い指示を書く前に、画角が狭まっても被写体が崩れないかを確かめたいときは、同じ形を使ってください。
手元の静止画から無検閲のループを
無検閲の元フレームも、そのまま動きます。1〜4 秒の範囲は、数枚の静止画から短いバリエーションをまとめて作るのに向いています。同じラインの Vidu Q3 Spicy は、LoRA で調整した無検閲の派生です。
プロンプトガイドと実践のヒント
納品物の形で静止画を書き出す
返してほしい形、つまり正方形のクリップなら正方形、縦型なら縦型に切り出し、比率は 1:4〜4:1 に収めてください。動画の段階では変わらないため、衣装、スタイリング、フレーミングはここで確定させます。
1 リクエストに 1 つの流れを書く
プロンプトは動き、カメラ、音にとどめ、フレームを描き直さないでください。公開しているカフェの例は、猫耳カチューシャを着けてトレイを持つキャラクターの正方形の静止画から、generate_audio をオンにして 5 秒・720p で生成したものです。
She walks two steps toward camera balancing the tray, does a small curtsy, winks and mouths a silent greeting, the cat-ear headband bobbing. Handheld follow that stays with her, bright café chatter and an espresso machine behind.
正方形の静止画 1 枚から 5 秒・720p。歩み寄り、お辞儀、ウインクは文章で指示し、衣装と 1:1 のフレームは画像から来ています。
タイミングと細部は言葉で指示する
スローモーションにはフィールドがないため、プロンプトに書きます。プールサイドの例では、彼女がプールの縁へ体を引き上げる場面にスローモーションとゆっくりしたプッシュインを指示しており、見るべきは両手でかき上げる濡れた髪です。髪の束がまとまり、正しく分かれるかどうかが、動く写真との違いになります。距離の変化も同じで、ベッドの端の例ではカメラは動かず彼女が 1 歩近づいてくるため、ピントが彼女に合わせて移る必要があります。
選んだテイクを 720p で仕上げる
540p の試作が納得できたら、プロンプト、フレーム、seed はそのままで resolution を 720p に変更します。seed は比較を公平にしますが、フレーム単位で同一の結果を保証するものではないため、納品テイクはそれ単体で確認してください。そのまま使えるクリップにしたいなら generate_audio はオンのまま、既存のミックスの下に入れるカットなら false にします。
API クイックスタート
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "vidu/q3-turbo/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"movement_amplitude": "auto",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
認証、完全なスキーマ、ポーリング、エラー処理は API リファレンスを参照してください。







