はじめに
MiniMax H3 Max 画像から動画 は、image_url で渡した開始フレームを、480p または 768p・5〜15 秒の整数長のクリップとして動かします。音声は同じ生成で作られます。任意の last_image_url で終了フレームも固定できます。出力の形は開始フレームで決まり、長さを指定しないリクエストは 8 秒になります。
開始素材に応じてモードを選ぶ
| 開始素材 | モード |
|---|---|
| 承認済みの開始画像 | MiniMax H3 Max 画像から動画 |
| 書いた場面やスクリプト | MiniMax H3 Max テキストから動画 |
主な機能とハイライト
被写体・衣装・画面の形はフレームが決める
このエンドポイントにはアスペクト比の項目がなく、渡した静止画がクリップの画面を決めます。laundromat-spin の例では、部屋も衣装も平板な蛍光灯の光も一切文章にしていません。開始フレームがすべてを決めているからです。プロンプトが描写しているのは、洗濯機が脱水に入る動きと、それに対する彼女の反応だけです。
ショットの両端を固定する
last_image_url は終了フレームを追加する項目で、image_url と一緒にしか送れません。frame-to-frame の例は 8 秒かけてある構図から別の構図へ着地するので、編集できれいにつなげられます。終了フレームが縛るのは終わりであって中盤ではありません。光や衣装が食い違う 2 枚を渡すと、その間で折り合いをつける動きがはっきり見えてしまいます。
最短 5 秒、解像度は 2 種類
長さは 5〜15 秒の整数で既定は 8 秒です。resolution は 480p と 768p から選べて既定は 768p、480p のほうが秒単価が安いので下書き向きです。最短のリクエストでもひとまとまりの動きになり、laundromat-spin のクリップは脱水、笑い、脚の揺れ、ドラムへの視線までを 5 秒に収めています。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
image_url | はい | 開始フレームです。被写体、衣装、構図を固定し、出力の形も決めます。 |
last_image_url | いいえ | 任意の終了フレーム。 |
prompt | はい | 開始フレームのあとに変わるもの——動作、カメラ、音——を書いてください。フレームそのものではなく。 1 文字以上 · 7000 文字以内 |
duration_seconds | いいえ | 5〜15 の整数秒。省略すると 8 秒になります。 |
resolution | いいえ | 480p または 768p(既定は 768p)。どちらもネイティブ解像度での生成で、480p のほうが秒単価が安くなります。 |
enable_prompt_expansion | いいえ | 既定はオフで、プロンプトは書いたとおりに使われます。オンにすると、MiniMax がまずプロンプトをショット、音、音楽を含むより詳しい構造化された記述へ展開し、それをもとに描画します。 デフォルト値: |
料金
| 仕様 | 料金 |
|---|---|
| $0.05 / 秒 |
| $0.08 / 秒 |
ユースケース
物から人物へティルトする
途切れない 1 つのカメラワークにすると、何をどの順に見せるかがブリーフのすべてになります。grimoire-to-bare-shoulder の例は開いた魔導書から始まり、背もたれの高い椅子に座る読み手へとティルトしていきます。ページから放たれる印章の光が肩の上を移ろう 8 秒です。開始構図は画像が固定しているので、プロンプトはカメラが何をいつ見つけるかに言葉を使えます。
決まった構図でクリップを終える
編集上、特定のフレームで終わる必要があるときは、両方のフレームを渡します。終了用の静止画は開始フレームの続きとして用意し、その間をつなぐ動作を書きます。frame-to-frame では、それが大理石の廊下をカメラへ向かって歩き、まっすぐレンズを見て止まる動作で、硬いリムライト、ウインドマシン、低いシンセのドローンが添えられています。
固定カメラの場面に動きを与える
据え置きのワイドショットでも、小さな動きを同時にいくつも運べます。laundromat-spin のプロンプトは、固定カメラ、ガラス越しに回るドラム、一度だけ瞬く蛍光灯、そして人物の反応を求め、音声には静かな機械音が入っています。
プロンプトガイドと実践のヒント
フレームではなく変化を書く
開始フレーム以降に起きることを書き、見た目は画像に任せます。「The washing machine under her shudders into its spin cycle and she bounces slightly with it」が指しているのは動きだけで、静止画にすでに写っているものは一つも繰り返していません。フレームに見えているものを説明している部分があれば削ってください。
大事な細部はすべて書く
プロンプト拡張は既定でオフなので、プロンプトは書いたとおりに使われます。enable_prompt_expansion をオンにすると MiniMax がまずショット、音、音楽を含むより詳しい記述へ展開するため、書いていない細部が加わることがあり、リクエストはプロンプト拡張料金で課金されます。カメラワーク(「slow tilt, no cut」)、光源、音をはっきり書き、1 回の実行で変えるのは 1 か所にして、それぞれの変更の効果を確かめてください。
アップロード前にトリミングし、2 枚をそろえる
出力は開始フレームの形に従うので、静止画を納品時の形にトリミングしておきます。終了フレームを加えるときは、被写体、衣装、光を 2 枚の間でつなげ、それをつなぐ動作に足りる長さを選びます。15 秒のクリップでは、両端を固定していても中盤がさまようことがあります。
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": "minimax/h3-max/image-to-video",
"input": {
"duration_seconds": 8,
"enable_prompt_expansion": false,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "768p"
}
}'
# 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 リファレンスを参照してください。

















