はじめに
必須の開始フレームとプロンプトを渡します。任意の終了フレームを使うと終わり方を指定でき、長さは 10 秒までになります。
| 項目 | 値 |
|---|---|
| 入力 | 画像 |
| 出力 | 動画 |
| 提供元 | |
| Gemini API の提供状況 | Google の発表では 2026 年 11 月 5 日から一般提供 |
| モデルコード | gemini-omni-1.2-flash |
| 生成する長さ | 3–15 秒を整数で指定。既定は 8 秒 |
| 終了フレーム指定時の長さ | 終了画像を渡す場合は 3–10 秒 |
| 編集時の長さ | 元動画の長さに従い、10 秒を超える部分はカット |
| 出力解像度 | Google の案内では 360p と 720p がネイティブ出力。1080p と 4K は Google によるアップスケール |
| 生成時のアスペクト比 | 16:9 または 9:16。既定は 16:9 |
| 映像と音声の形式 | AAC 音声トラックを含む 24 fps の MP4 |
| 参照素材 | 画像は最大 6 枚。動画は各 3 秒以内で最大 3 本 |
| 長い動画を生成する場合の参照 | Google は 11–15 秒の生成時に参照動画 1 本と案内 |
| 透かし | Google が不可視の SynthID 透かしを付与 |
| 生成動画の保存期間 | 14 日後に削除 |
主な機能とハイライト
音まで描く市場のひとこま
当社のテストでは、6 秒・720p の市場シーンで、料理人が炎の上の中華鍋で麺をあおり、指定したセリフを話しました。油のはぜる音、雨音、市場のざわめきも動きに重なりました。
船が桟橋を離れる瞬間を動かす
5 秒の桟橋の作例は、夜の静止画 1 枚から始まります。当社のテストでは、乗客が見送りに応える中、木製のスピードボートがホテルをゆっくり離れました。エンジン音と水音に、遠くのバンド演奏も加わりました。
動きの終着点を決める
開始時のスタジオ画像と終了時のポーズで、5 秒のアニメーションを導きます。当社のテストでは、カメラを固定したまま、ダンサーが穏やかなピアノに合わせて二つのポーズの間を動きました。
2 人を列車のシーンに登場させる
当社のテストでは、2 枚の人物写真から 6 秒の食堂車のシーンができました。旅行者の一人が折りたたんだメモをテーブル越しに渡し、もう一人が読んでほほえみました。列車の走行音と食器の音も流れました。
演技の舞台を湖畔へ移す
当社のテストでは、灰色のスタジオが、霧のかかる水辺の月明かりに照らされた舞台へ変わりました。ダンサーと動きは残り、背景が置き換わりました。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
prompt | はい | 動作の指示は必須です。開始画像の後の動作、カメラワーク、必要な音を説明してください。 1 文字以上 · 20000 文字以内 |
image_url | はい | 生成シーンの開始フレームに使う静止画の URL です。必須です。 1 文字以上 |
last_image_url | いいえ | 終了時の静止画の URL で、指定は任意です。渡す場合は長さを 3–10 秒にする必要があり、それより長いリクエストは課金前に拒否されます。 1 文字以上 |
aspect_ratio | いいえ | 横長は既定の 16:9、縦長は 9:16 を使います。自動設定の選択肢はなく、この設定による追加料金もありません。 |
resolution | いいえ | 360p、720p(既定)、1080p、4K を選べます。1080p と 4K はいずれも Google によるアップスケールで、単価が高くなります。 |
duration_seconds | いいえ | 3–15 秒の整数で、既定は 8 秒です。 |
料金
画像から動画の料金は、指定した秒数と選択した解像度の単価で計算します。開始・終了画像やアスペクト比による追加料金はありません。終了フレーム付きで 10 秒を超える場合を含め、失敗または拒否された送信は課金対象外です。
| 仕様 | 料金 |
|---|---|
| $0.0276 / 秒 |
| $0.084 / 秒 |
| $0.126 / 秒 |
| $0.252 / 秒 |
ユースケース
セリフのある市場の短いシーン
料理人、一つの動作、引用符で囲んだ短いセリフを書き、油のはぜる音や雨の市場の環境音も指定してください。
ホテルへの到着や出発
開始フレームに桟橋の画像を使って船の出発を描き、最後の構図が決まっている場合は終了画像も追加してください。
同じキャラクターの新たな場面
人物写真を参照し、設定済みの 2 人を夕暮れの食堂車などの新しい場所に登場させてください。
演技に別の舞台を用意
動画編集で、撮影済みの動きを残しながら、スタジオを湖畔の風景に変えるよう指示してください。
プロンプトガイドと実践のヒント
手元の素材に合うエンドポイントを選ぶ
新しいシーンなら文章、静止画を動かすなら開始フレーム、見た目を指定するなら参照素材、部分的な変更なら元動画から始めてください。
シーンの構成をはっきり伝える
Google によると、指定がなければ複数のショットが作られることがあります。ワンテイクにしたい場合は「no scene cuts」を加え、話してほしいセリフは引用符で囲んでください。
参照素材ごとの役割を指定する
「Image 2 の場所を使う」「Video 1 のように動く」と書き、アップロードした各素材の用途をプロンプトで伝えてください。
解像度を上げる前に小さい下書きを確認する
提供中で最も低い単価の 360p でアイデアを試してください。1080p と 4K は Google がアップスケールするため、料金が高くなります。
編集指示は変更点を絞る
Google は、単純な変更指示の後に「Keep everything else the same.」を加えることを推奨しています。編集では 10 秒でカットされるため、送信前に元動画の長さを確認してください。
概要
Gemini Omni 1.2 Flash の画像から動画では、開始時の静止画に動きを付けます。image_url と、その画像から先の動作を説明する prompt を渡してください。桟橋の作例では、夜の船の静止画を起点に、エンジン音と水音のある 5 秒の出発シーンを作っています。
終わり方が決まっているシーンには last_image_url を加えます。終了画像がある場合の長さは 3–10 秒、ない場合は 3–15 秒です。終了フレーム付きで 10 秒を超えるリクエストは、課金される前に拒否されます。当社のテストでは、スタジオの画像 2 枚によってダンサーが開始ポーズから終了ポーズへ動きました。
主な機能と特徴
- 渡した静止画をアニメーションの最初のフレームに使います。
- 任意の 2 枚目の画像で、最後の構図を導けます。
- 音声トラックをアップロードせず、動画を動かす際に音も生成します。
- シーンは横長の 16:9 または縦長の 9:16 を指定できます。
- 360p、既定の 720p と、より高い単価で Google がアップスケールする 1080p、4K を利用できます。
活用例
- 夜の静止画から、木製の船がホテルの桟橋を離れる様子を描けます。
- スタジオでの二つのポーズを、穏やかなピアノ付きの 5 秒の映像でつなげられます。
- 商品の静止画から、最後の構図を決めた短い動作の試作を作れます。
プロンプトの書き方とコツ
- 写っている細部をすべて繰り返さず、「船が桟橋からゆっくり離れる」など、開始後に変わる内容を書いてください。
- 画像を 2 枚使う場合は「終了ポーズへ滑らかに移る」など、間の動きを説明し、長さを 10 秒以内にしてください。
- シーン内の動きを見せたい場合は、「カメラを固定する」など、控えめなカメラワークを指定してください。
- 静止画には音がないため、「低いエンジン音と打ち寄せる水音」のように必要な環境音を伝えてください。
- ワンテイクについての Google の助言に従い、「no scene cuts」のような短い言葉で連続性を指定してください。
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": "google/gemini-omni-1.2-flash/image-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 8,
"image_url": "https://example.com/reference.png",
"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 リファレンスを参照してください。










