Claude Opus 5.5 が SeedRouter で利用できます

Video

Gemini Omni 1.2 Flash

View Markdown

テキスト、画像、最初と最後のフレーム、参照画像から、音声を同時に生成した 3〜15 秒の Gemini Omni 1.2 Flash 動画を 360p〜4K で作成。動画の編集・延長にも対応します。

Gemini Omni 1.2 Flash は、高速生成、対話形式の編集、映画のような映像表現の制御に対応する Google のマルチモーダル動画モデルです(2026 年 11 月更新)。ひとつのモデル ID で、テキストから動画、画像から動画、最初と最後のフレーム間の補間、最大 10 枚の画像による被写体の参照、動画の編集・延長に対応します。すべてのクリップは音声を同時に生成し、長さは 3〜15 秒、解像度は 360p、720p、1080p、4K です。リクエストを送信し、返されたタスク ID を保持して、完成した動画をタスクから読み取ってください。メディアは URL で渡します。

モデル ID

モデル IDモード解像度長さ
gemini-omni-1.2-flashテキスト、画像、フレーム、参照、編集、延長360p、720p、1080p、4k3〜15 秒

現在の料金はモデルページをご覧ください。

クイックサンプル

curl https://api.seedrouter.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-1.2-flash",
    "prompt": "A glass marble rolls fast along a wooden chain-reaction track through a sunlit workshop, one continuous smooth tracking shot. No text, no logos.",
    "resolution": "720p",
    "duration": 10,
    "aspect_ratio": "16:9"
  }'

エンドポイント

POST https://api.seedrouter.ai/v1/videos/generations
ヘッダー値
AuthorizationBearer YOUR_API_KEY
Content-Typeapplication/json

レスポンスはタスク({"id": "task_...", "status": "processing"})であり、完成した動画ではありません。結果は GET /v1/tasks/{task_id} をポーリングして取得してください。API キーはサーバー側のコードで保持してください。

パラメータ

フィールド型デフォルト説明
model文字列必須gemini-omni-1.2-flash
prompt文字列必須すべてのモードで必須です。新規動画はショットの内容、編集は変更点、延長はその後に起こることを記述します。音も説明し、入れたくないものもここに記述してください。
duration整数103〜15 秒。最初と最後のフレームの指定時と延長時(追加部分)は最大 10 秒です。編集時は無視され、元の動画の長さを保ちます。
resolution列挙型720p360p、720p、1080p、4k(2160p は 4k と同じ)。大文字と小文字は区別しません。1080p と 4k は低い解像度から拡大したものです。
aspect_ratio列挙型16:916:9 または 9:16。
image_urlsURL の配列なし画像が一枚なら最初のフレーム、複数なら被写体の参照画像になります。フレームとロール付き画像を含めて合計最大 10 枚です。
first_frame_imageURLなしクリップはこの画像から始まります。last_frame_image と併用すると、その間の動きを補間します。
last_frame_imageURLなしクリップはこの画像で終わります。最初のフレームが必要です。
image_with_rolesオブジェクトの配列なし{"url", "role"} で、ロールは first_frame、last_frame、または参照用のその他のロールです。フレームはこの方法か、ふたつのフレームフィールドで指定し、併用しないでください。
video_urlsURL の配列なし編集・延長する、最大 15 秒のクリップ一本。
omni_reference_task_type列挙型autoauto、edit、extend、reference、text_to_video、image_to_video、reference_to_video。
extend_from_task_id文字列なし完了したご自身の gemini-omni-1.2-flash タスクの ID。アップロードせずに、その動画を編集・延長できます。

すべてのクリップには音声が付き、音声スイッチはありません。negative_prompt、seed、音声入力、callback_url はありません。スキーマは厳格です。未知のフィールドは無視されず、拒否されます。

モード

モード選択方法
テキストから動画画像も動画も指定しません。
画像から動画image_urls に画像一枚、または最初のフレームを指定します。
最初と最後のフレームfirst_frame_image と last_frame_image、またはそれぞれのロールを指定します。最大 10 秒です。
参照image_urls に複数の画像、または参照用のロールを指定します。明示する場合は omni_reference_task_type: "reference" を指定します。
編集video_urls または extend_from_task_id で動画を指定し、auto または edit を使います。
延長上記と同じ方法で動画を指定し、omni_reference_task_type: "extend" を設定します。最大 10 秒を追加します。

動画を入力すると、extend を指定しない限り編集になります。動画を含む場合、reference、text_to_video、image_to_video、reference_to_video は拒否されます。

最初と最後のフレーム

{
  "model": "gemini-omni-1.2-flash",
  "prompt": "Smooth transition, the camera slowly pushes in.",
  "first_frame_image": "https://example.com/start.jpg",
  "last_frame_image": "https://example.com/end.jpg",
  "duration": 8
}

編集

{
  "model": "gemini-omni-1.2-flash",
  "prompt": "Make the violin invisible. Keep everything else the same.",
  "video_urls": ["https://example.com/clip.mp4"]
}

編集は元の動画の長さを保ち、duration は影響しません。短く具体的な指示が最も効果的です。一部だけを変更する場合は「ほかはすべてそのままにする」と加えてください。

以前のタスクを延長

{
  "model": "gemini-omni-1.2-flash",
  "prompt": "The camera keeps panning across the mountains.",
  "extend_from_task_id": "task_...",
  "omni_reference_task_type": "extend",
  "duration": 8
}

結果には元の動画に続いて新しい部分が含まれます。追加した秒数と、元の長さの 8 分の 1 が課金対象です。ご自身のクリップを延長する場合は、extend_from_task_id の代わりに video_urls で送ってください。

メディア入力

画像と動画は公開されている HTTP(S) URL で渡します。Base64 の data URI は受け付けません。ファイルを自分のストレージにアップロードし、その URL を渡してください。編集・延長する動画は最大 15 秒である必要があります。リクエスト受理時に長さを読み取り、長さを読み取れない動画は課金前に拒否されます。

料金の要素

現在のレートはモデルの料金セクションをご覧ください。Gemini Omni 1.2 Flash は、解像度ごとのレートで動画の秒数に応じて課金されます:

text, image, frames, references:  cost = duration × rate
edit:                             cost = (source + source / 8) × rate
extend:                           cost = (added seconds + source / 8) × rate

source は、入力動画の映像の長さを秒単位で切り上げた値です。リクエスト受理時に測定されるため、確保される金額がそのまま課金額になります。8 分の 1 の加算分は入力動画の読み取りに対応します。720p の例:6.2 秒のクリップを編集すると 7 + 7/8 = 7.875 秒が課金対象です。8 秒のクリップを 4 秒延長すると 4 + 1 = 5 秒が課金対象です。失敗したタスクは課金されません。

出力スキーマ

送信するとタスクが返されます:

{"id": "task_...", "model": "gemini-omni-1.2-flash", "status": "processing", "created_at": 1789689600}

タスクを取得する

GET https://api.seedrouter.ai/v1/tasks/{task_id}

status が completed または failed になるまで、10〜20 秒ごとにポーリングしてください。ポーリング中のネットワークタイムアウトは生成の失敗を意味しません。タスク ID を保持して確認を再開してください。進捗確認のために別のタスクを作成しないでください。

完了したタスク

{
  "id": "task_...",
  "model": "gemini-omni-1.2-flash",
  "status": "completed",
  "created_at": 1789689600,
  "finished_at": 1789689800,
  "output": {
    "video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"
  }
}

すべての動画に Google の目に見えない SynthID 透かしが入ります。当社のテストでは、5〜8 秒の 720p クリップが、送信から 66〜86 秒後に、1280 × 720 の MP4(H.264)とステレオ AAC トラックで返されました。3 秒のクリップを編集した結果は 3 秒でした。

エラー

タスク作成前に拒否されたリクエストは、HTTP エラーと error オブジェクトを返し、課金されません。受理後に失敗したタスクは、照会時に HTTP 200 と status: "failed"、そして error オブジェクトを返します。

コード・HTTP ステータス・リトライの指針は共通エラーカタログを参照してください。

{
  "id": "task_...",
  "model": "gemini-omni-1.2-flash",
  "status": "failed",
  "error": {
    "code": 60001,
    "message": "The request was rejected by the content policy. Please revise the prompt or input images."
  }
}

送信自体がタイムアウトした場合は、再送信の前にタスクを確認してください。最初のリクエストが受理されている可能性があります。

ヒント

  • 被写体、場所、カメラの動き、光と音を記述してください。クリップの音声はプロンプトに従います。
  • 360p で下書きし、採用するショットを同じリクエストで 1080p または 4k でレンダリングしてください。
  • 編集では一度にひとつだけ変更し、そのまま保つ必要があるものも指定してください。
  • 勝手なマークが入らないよう、no text, no logos を加えてください。

関連情報