gemini-omni-flash-api について
gemini-omni-flash-apiは、Gemini Omni 1.1 Flashで動画を生成・編集するスキルです。テキストや画像からの生成、参照素材、動画延長、ローカル出力処理に対応します。
主な機能
- 01テキスト・画像からの動画生成
- 02開始・終了フレーム間の遷移生成
- 03動画を合計40秒まで延長
- 04スタイル変更や動画の修復
- 05画像・動画を参照素材として利用
- 06バッチ処理とローカル動画の準備
活用シーン
- 01プロンプトや開始画像からクリップを作成
- 02指定した2フレーム間の遷移を生成
- 03生成動画の延長やスタイル変更
- 04ローカル動画素材の処理と確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ google-gemini/ gemini-skills --skill gemini-omni-flash-apiインストール後、Claude Code で/gemini-omni-flash-apiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
scripts/upload_file.pyscripts/video/generate_video.pyinspect_video.pyprep_video.py詳細
Gemini Omni Flash スキル
このスキルでは、Gemini Omni 1.1 Flash モデル(gemini-omni-1.1-flash)を使用して、テキストからの動画生成、画像からの動画生成(最初のフレームと最後のフレーム間のトランジション)、動画の延長(最大 40 秒)、動画編集を行います。
警告
重要な地域制限:動画編集または延長に使用する動画のアップロードは、EEA、スイス、英国、および米国の一部の州では利用できません。動画から動画への編集がすぐに完了し、出力が空(
total_output_tokens: 0または動画コンテンツなし)になる場合は、この制限が原因である可能性があります。
主な機能
- テキストから動画を生成:テキストプロンプトから動画を生成します。
- 最初のフレームから動画を生成:開始画像から動画を生成します(
--first-frame)。 - 最初と最後のフレーム間のトランジション:開始画像と最終画像の間を補間した動画を生成します(
--first-frameと--last-frame。注:--last-frameは--first-frameと併用する必要があります)。 - 動画の延長:既存の動画を1回につき最大10秒、合計最大40秒まで延長します(
--extendまたは--previous-interaction-id)。 - 動画の編集と調整:既存の動画(最大時間10秒)を編集し、スタイルの変更を適用したり、インペインティング/アウトペインティングを行ったりします。
- 画像や動画を参照した生成:画像や動画のスタイル、キャラクター、オブジェクトを参照して動画生成をガイドします。
ワークフロー
-
リクエストを分析:対象タスク(例:最初のフレームからの動画生成、最初と最後のフレーム間のトランジション、動画の延長、参照情報に基づく編集)を特定し、入力メディアのアセットを確認します。
-
SDK スクリプトを実行:
- 適切なユーティリティ(
scripts/video/generate_video.pyまたはscripts/upload_file.py)を直接実行します。 --aspect-ratio(例:16:9、9:16)、--resolution(360p、720p、1080p、4k。デフォルト:720p)、--duration(3~10秒の整数。例:3、5、10)などの設定を行います。注:4kを指定したリクエストは生成に時間がかかります。
- 適切なユーティリティ(
-
出力を取得して処理:出力はローカルファイルシステム(例:
media/)に保存されます。完了したメディアのパスをユーザーに報告します。
リファレンスドキュメント
- Interactions API:Gemini Omni 1.1 Flash モデル(
gemini-omni-1.1-flash)のすべての操作と状態管理は、Interactions API を通じて処理されます。 - Files API:参照画像や動画などの入力メディアファイルは、生成で参照する前に Files API を通じてアップロードする必要があります。アップロードしたファイルの URI と MIME タイプは、
interactions.createの入力パーツ配列に含めます。 - Gemini API スキルリファレンス:Gemini API のプラットフォーム全体に適用されるガイドライン、最新のモデル仕様、SDK の使用ルール。
依存関係と前提条件
- Python SDK(
google-genai):interactionsクライアントと動画出力解像度の完全な設定(360p、720p、1080p、4k)をサポートするには、google-genai >= 2.19.0(Python)が必要です。次のコマンドでインストールまたはアップグレードします。pip install -U google-genai - Python ランタイム:最新の
google-genaiSDK の型とメソッドとの互換性のため、Python >= 3.10 が必要です。 - ffmpeg と ffprobe:
prep_video.py、inspect_video.py、および(--strip-audioで音声を除去する場合の)generate_video.pyでは、ffmpegとffprobeのバイナリをインストールし、システムのPATHから利用できるようにする必要があります。 - API キー:
GEMINI_API_KEY環境変数を設定します。export GEMINI_API_KEY="your-api-key"
利用可能なスクリプト
次の Python スクリプトを使用して、Files API でメディアをアップロードし、ffmpeg で入力動画を準備して、Interactions API で動画を生成します。
-
upload_file.py:ローカルメディア(画像と動画)を Files API にアップロードし、
ACTIVEになるまでポーリングします。25MB を超える動画をアップロードする場合は、Gemini Omni Flash が 720p/24fps の 10 秒動画の編集に最適化されていることを示す情報付きの警告/ヒントを表示し、アップロードを速めるために、まずprep_video.pyで前処理することを推奨します。./scripts/upload_file.py path/to/image.png -
generate_video.py:動画の生成から出力動画のダウンロードまでを一貫して実行します。Interactions API を呼び出す前に、ローカルのメディア参照(画像または動画)を検出してアップロードします。25MB を超える大きな動画アセットがある場合は、アップロードを妨げることなく、前処理に関する情報付きの推奨事項を表示します。
-
テキストから動画を生成する:
./scripts/video/generate_video.py "A close-up of a cat drinking tea" --output media/cat_tea.mp4 -
出力解像度のオプション(
--resolution):Gemini Omni 1.1 Flash は、横向き(
16:9)と縦向き(9:16)の両方のアスペクト比で、4 種類の出力解像度をネイティブにサポートしています。360p:640x360(16:9)または360x640(9:16)720p:1280x720(16:9)または720x1280(9:16)—(デフォルト)1080p:1920x1080(16:9)または1080x1920(9:16)4k:3840x2160(16:9)または2160x3840(9:16)
# 高解像度(1080p) ./scripts/video/generate_video.py "A cinematic drone shot over misty mountains at sunrise" --resolution 1080p --output media/mountains_1080p.mp4 # 超高解像度 4K(注:4K のリクエストは生成に時間がかかります。必要に応じて --timeout を指定してください) ./scripts/video/generate_video.py "A macro shot of a dewdrop on a flower petal in golden sunlight" --resolution 4k --timeout 900 --output media/flower_4k.mp4 -
リクエストタイムアウトの設定(
--timeout):HTTP タイムアウトのデフォルトは
600秒(10 分)です。30 秒の動画を 4K で 10 秒延長する場合(動画の合計時間は最大 40 秒)など、計算負荷の高いリクエストでは、生成に数分かかることがあります。実行時間の上限を延長するには、--timeout 900(または1200)を使用してください。 -
最初のフレームから動画を生成する:
./scripts/video/generate_video.py "The waves crash against the shore." --first-frame start.png --output media/waves.mp4 -
最初と最後のフレーム間のトランジション:
開始フレームと終了フレームを指定して、その間の滑らかなトランジションを生成します(注:
--last-frameは 必ず--first-frameと併用してください)。./scripts/video/generate_video.py "A smooth timelapse from sunrise to sunset" --first-frame start.png --last-frame end.png --output media/interpolation.mp4 -
ループ動画(開始フレームと終了フレームが同一):
./scripts/video/generate_video.py "A crystal orb spinning continuously in place" --first-frame orb.png --last-frame orb.png --output media/loop.mp4 -
画像を参照した動画生成:
./scripts/video/generate_video.py "A cybernetic warrior in the style of <IMAGE_REF_0>" --image reference.png --output media/warrior.mp4 -
動画を参照した動画生成:
キャラクター、オブジェクト、または動きのスタイルの参考として、1 つ以上の参照動画(
--video-reference/-vr)を指定します(理想的な長さは約 3 秒で、参照動画は最大 3 本を推奨します)。./scripts/video/generate_video.py "A musician playing cello in the style of <VIDEO_REF_0>" --video-reference ref_dance.mp4 --output media/cello.mp4 -
動画の延長(既存の動画を延長する):
既存の動画を最大 10 秒延長します(合計時間は最大 40 秒)。
./scripts/video/generate_video.py "The scene continues as the sun sets over the horizon" --extend media/sunset.mp4 --output media/sunset_extended.mp4 -
参照画像と参照動画を使った動画の延長: プロンプトベースの拡張では、参照画像と参照動画を同時に渡すことができます:
./scripts/video/generate_video.py "Extend this video. The character in <IMAGE_REF_0> enters dancing like the dancer in <VIDEO_REF_0>." --extend media/sunset.mp4 --image character.png --video-reference dance_ref.mp4 --output media/sunset_extended_with_refs.mp4 -
動画編集(元の音声を維持):
./scripts/video/generate_video.py "Transform the style to Japanese anime" --video input.mp4 --output media/anime_style.mp4 -
動画編集(すべての音声を最初から再生成):
./scripts/video/generate_video.py "Transform the style to Japanese anime" --video input.mp4 --strip-audio --output media/anime_style_new_audio.mp4 -
ターンごとの動画編集(前のインタラクションを編集):
インタラクション ID を渡すことで、アセットを再アップロードせずに以前の動画生成を編集できます:
./scripts/video/generate_video.py "Change the setting to a snowy winter wonderland." --previous-interaction-id "v1_..." --output media/winter_wonderland.mp4 -
ターンごとの動画拡張(前のインタラクションを拡張):
前のインタラクション ID を渡すことで、以前の動画生成を拡張できます:
./scripts/video/generate_video.py "Extend this video. The character turns around and begins to run." --previous-interaction-id "v1_..." --output media/extended_turn.mp4 -
並列バッチ実行(プロンプトファイル): 1 行ずつ記述されたテキストファイルから複数のプロンプトを同時に実行します:
./scripts/video/generate_video.py --prompts-file prompts.txt --concurrency 3 -
並列バッチ実行(JSON 設定): 完全に設定された、それぞれ異なる生成ジョブと編集ジョブを並列で実行します:
./scripts/video/generate_video.py --batch jobs.json --concurrency 3jobs.jsonの例:[ { "prompt": "A smooth timelapse from sunrise to sunset.", "first_frame": "start.png", "last_frame": "end.png", "resolution": "1080p", "output": "media/interpolation.mp4" }, { "prompt": "Extend this video. The scene continues with the character in <IMAGE_REF_0> dancing like <VIDEO_REF_0>.", "extend": "media/sunset.mp4", "image": "character.png", "video_reference": "dance_ref.mp4", "output": "media/extended_with_refs.mp4" }, { "prompt": "A macro shot of a crystal orb refracting cosmic nebula colors.", "resolution": "4k", "output": "media/nebula_orb_4k.mp4" }, { "prompt": "A musician playing cello in the style of <VIDEO_REF_0>.", "video_reference": "cello_ref.mp4", "output": "media/cello.mp4" }, { "prompt": "Transform the style to Japanese anime.", "video": "input.mp4", "output": "media/anime_style.mp4", "strip_audio": false, "aspect_ratio": "16:9" } ]
-
-
inspect_video.py: ローカルの動画ファイルを(
ffprobeを使用して)検査し、その再生時間、解像度、フレームレート(FPS)、音声ストリームの有無、およびフォーマットの詳細を確認します。./scripts/video/inspect_video.py media/output.mp4-
事前に解析された構造化 JSON サマリーを取得するには:
./scripts/video/inspect_video.py media/output.mp4 --json -
完全な、未加工の
ffprobe生 JSON ダンプを取得するには:./scripts/video/inspect_video.py media/output.mp4 --raw
-
-
prep_video.py:あらゆる動画ファイルを標準的な Gemini Omni Flash の生成・編集制限に合わせて正規化、トリミング、フォーマットします。タイムコードに基づくトリミング、任意のフレームレート変換、大きな動画を縦横比を保ったまま比例縮小する処理(横向きは最大 1280x720、縦向きは最大 720x1280)に対応し、アップロード時間を短縮します。動画が 10 秒を超え、スクリプトが対話形式(TTY)で実行される場合は、最初の 10 秒、最後の 10 秒、またはカスタムタイムコードを選ぶように促します(デフォルトは最初の 10 秒です)。
- 最初の 10 秒をトリミング(デフォルト):
./scripts/video/prep_video.py path/to/source.mp4または開始位置と長さを明示的に指定します:
./scripts/video/prep_video.py path/to/source.mp4 --start 0 --duration 10-
最後の 10 秒をトリミング(ソースの長さに基づいて開始位置を自動計算します):
./scripts/video/prep_video.py path/to/source.mp4 --start last -
指定したタイムコード(MM:SS または HH:MM:SS)から 10 秒をトリミング:
./scripts/video/prep_video.py path/to/source.mp4 --start 00:03 --output media/custom.mp4 -
フレームレートと解像度をカスタム設定:
./scripts/video/prep_video.py path/to/source.mp4 --fps 30 --resolution 1920x1080 -
音声を除去して音声を再生成:
./scripts/video/prep_video.py path/to/source.mp4 --strip-audio --output media/video_with_no_audio.mp4
動画編集での音声の処理
音声を含むソース動画を編集する場合は、元の音声を保持するか、すべての音声を一から再生成するかを選ぶ必要があります。
-
元の音声を保持:デフォルトでは、Gemini Omni Flash は既存の音声レイヤーを保持します(生成中に多少変更または調整する場合があります)。元のバックグラウンドミュージック、会話、効果音を残したい場合に使用します。
-
すべての音声を一から再生成:Gemini Omni Flash に新しいビジュアルスタイルやプロンプトに合わせたまったく新しい音声レイヤーを作成させるには、音声ストリームを除去した動画を必ずアップロードする必要があります。音声ストリームが含まれていると、Gemini Omni Flash は一から再生成するのではなく、既存の音声を保持または変更しようとします。
scripts/video/prep_video.pyによる前処理時、またはscripts/video/generate_video.pyの実行時に--strip-audio(または-a)を使用します。- これにより、Gemini Omni Flash は音声を完全に生成します。
Gemini Omni Flash へのプロンプト
単一のシーン
デフォルトでは、Gemini Omni Flash はいくつかの異なるショットを含む動画を作成しようとします。プロンプトに基づいて、興味を引く物語を組み立てようとします。
出力動画を単一のシーンにする必要がある場合は、次のように指定してください:
- 切れ目のない単一のシーンで
- 連続した単一のショットで
- シーンの切り替えなし
たとえば:
Continuous, unbroken handheld shot of a fluffy tabby cat sitting on a sunny windowsill, looking out into a leafy garden. The cat's tail twitches slowly, and its ears rotate slightly toward ambient noises. Sunbeams illuminate dust motes in the air. Sound design: Gentle breeze, distant bird chirps. No dialogue.
不要な要素の削除
生成された動画に不要なものが含まれている場合は、避ける要素を簡潔なネガティブプロンプトで指定してください:
- 会話なし
- 装飾なし
- 余分な効果音なし
編集用プロンプト
動画編集には、シンプルなプロンプトが最適です。説明が過剰なプロンプトは、意図しない変更につながることがあります。
シンプルな編集用プロンプトの例を以下に示します。
- この動画をアニメにしてください
- この人におしゃれな帽子をかぶせてください
- 照明をよりドラマチックにしてください
- 看板の文字を「Omni Flash」に変更してください
動画の特定の要素を編集する場合は、視覚的な一貫性を保つために "Keep everything else the same" を含めてください。
この手法の適用例を以下に示します。
- 避ける例:
ソファに座っている男性の動画で、画面の右側から走ってきて男性の膝に飛び乗る小さな黒猫を追加し、その後、男性が下を見ながら猫の頭をなで始めるようにしてください。- 簡潔な例:
膝に飛び乗る猫を追加し、男性が猫をなで始めるようにしてください。それ以外はすべて同じにしてください。
- 簡潔な例:
- 避ける例:
人物が手に持っている携帯電話を取り除き、何も持たずに手を空にしているように見えるよう、背景を補完してください。- 簡潔な例:
携帯電話を見えなくしてください。それ以外はすべて同じにしてください。
- 簡潔な例:
音声のプロンプト
デフォルトでは、モデルは動画に適した音声トラックを生成しようとします。これは、必ずしも望んでいるものとは限りません。プロンプトを使って、希望する音声の種類を指定できます。動画に音楽を入れたい場合は、特に重要です。
- 穏やかなバックグラウンドミュージックを含めてください
- 動画にエネルギッシュなテクノビートを入れてください
- 背景で曲が流れる、音がこもった低音質のラジオ放送
イベントのタイミング
動画内で特定のタイミングに何かを起こすようにプロンプトで指定できます。厳密な構文は必要なく、自然言語を使えます。自分でシーンの切り替えやリズム、連続的な展開を作成する際に特に便利です。例を以下に示します。
- 3秒後に女性がシーンに入ってくる。
- 5秒の時点で、背景音声のコーラスが始まる。
- 2秒ごとに新しいフレームに切り替える。
- 連続的な展開の中で、0.5秒ごと(24fpsで12フレームごと)にシーンを新しい場所に切り替える。
タイムコード構文を使うこともできます。
[0-3s] A person is walking
[3-6s] They stop and turn around
[6-10s] They start running
メタプロンプト
Gemini Omni Flash に、動画生成の一般的な品質や原則に注意を払うよう指示できます。
- マイクロディテール、表情、タイミングを考慮し、非常に豊かで詳細ながら、自然なシーンを作成してください。
- 登場人物や環境を非常に詳細に描写してください。登場人物には衣装デザインの原則を適用してください。シーン内の人物やアイテム、物体を具体的に指定してください。
- 背景要素に適切なディテールを豊富に加え、シーンをリアルで自然に感じさせてください。
- 1秒ごとに異なる珍しい
[thing]を見せる、テンポの速い動画を作成してください。アップビートな音楽を入れ、それぞれに名前を示すテキストを付けてください。
動画内のテキスト
動画にテキストを含めるようプロンプトで指定できます。Gemini Omni は、正確で読みやすい形でテキストを描画します。動画内に自然に現れるテキストがある場合は、背景の要素も含め、何と表示するかを指定すると役立ちます。
- 画面には一度に1語だけ表示します。「did, you, know, that, Omni, can, do, awesome, text?」の各単語を、異なるアニメーションスタイルで1秒ずつ表示してください。セリフはありません。
- 「This is an AI generation by Omni」と書かれた道路標識があり、「All you need AI」と書かれた店舗があり、ナンバープレートに「OMNI1.1」と書かれた車があります。
動画を延長するためのプロンプト
Gemini Omni 1.1 Flash では、"Extend this video" や "The scene continues" のようなプロンプトを使って動画を延長できます。動画は10秒ずつ延長でき、合計の長さは最大40秒です。
Omni は、元の動画の最後の10秒をコンテキストとして使用し、動画、動き、キャラクター、音声の一貫性を保った延長動画を生成します。シームレスにつなげるため、入力動画の最後のフレームの一部が編集される場合があります。
ヒント
参照を使った延長:動画の延長は、API の
task="extend"パラメーターを設定せずに、プロンプト(例:"Extend this video"、"The scene continues")で行えます。taskパラメーターを省略すると、動画の延長中に参照画像(--image)と参照動画(--video-reference)を渡して、新しいキャラクター、オブジェクト、スタイルを延長シーンにシームレスに取り入れられます。task="extend"を明示的に設定した場合、マルチモーダル参照は渡せません。
動画を延長する場合、このガイドの Omni 向けプロンプトのヒントはすべて引き続き適用されます。
- 延長後のシーンの音声について説明します。特に、音声を変える必要がある場合は明記してください。
"The music continues into the chorus" - シーンが続くのか、新しいシーンに切り替わるのか(同じキャラクターが登場する場合もあります)を説明します。
"Show the same characters in the next scene" - 出力の正確さを保ったり、新しいキャラクターを登場させたりするため、延長時の参照として画像や動画を含めます。
"The person shown in the reference image enters the scene"、"The dog in the reference video <VIDEO_REF_0> jumps onto the sofa" - タイムスタンプやタイムコード構文を使う場合、0s は動画の延長部分の開始を指します。10s の動画を延長する場合、このプロンプトのシーン切り替えは12s後に起こります。
"After 2s cut to a new scene with the same characters"
動画延長の制約とガイドライン
- 長さの上限:マルチターンを使用しない限り、アップロードする延長対象の動画は10秒以下である必要があります。
- アップロードした動画内のセリフ:現在、人物が話しているアップロード動画を延長し、セリフを追加することはできません(キャラクターが無言のままの場合や、プロンプトでセリフを追加しない場合は対応しています)。
- マルチターンでの音声の延長:マルチターン(
previous_interaction_id)を使って、以前に生成した動画を延長する場合、セリフや音声の生成に対応しています。 - タスクパラメーターの推奨:まずはプロンプトを使用し、プロンプトだけではうまくいかず、モデルが使用すべきモードを理解できるようにする必要がある場合に限り、
task="extend"パラメーターを使うことを推奨します。taskフィールドを設定すると、マルチモーダル参照入力が無効になるなどの制約が加わるためです。
プロンプト内のタグで画像と動画の役割を指定する
タグを使うと、アップロードしたメディアを特定の生成上の役割に割り当てられます。各画像や動画が開始フレーム、最終フレーム、参照のいずれであるかを指定できます。
シンプルなタグ(推奨)
プロンプトからメディアの役割が明確なシンプルなケースでは、画像や動画を役割に直接割り当てることができます。
<FIRST_FRAME>:画像を動画の開始フレームとして使用します。例:<FIRST_FRAME> a woman is walking<LAST_FRAME>:画像を動画の最終フレームとして使用します。<FIRST_FRAME>と一緒に使用する必要があります。例:<FIRST_FRAME> <LAST_FRAME> a woman is walking<IMAGE_REF_N>:画像を参照として使用します。例:in the style of <IMAGE_REF_0> a woman <IMAGE_REF_1> is walking(最初の画像からスタイルの参照を、2番目の画像から被写体の参照を組み合わせます)。画像参照の番号は0から始まります。<VIDEO_REF_N>:動画をキャラクターやオブジェクトの参照として使用します。例:the person in <VIDEO_REF_0> is playing the violin。動画参照の番号も0から始まります。
メモ
参照動画に関するガイドライン:
- 長さ:参照動画は約3秒が理想的ですが、より長い動画でも問題ありません。長いソースファイルを参照用の長さにトリミングする場合は、
prep_video.py --duration 3を使用します。- 本数:参照動画は3本までが理想的ですが、それ以上使用することもできます。
以下は、参照画像を6枚使用する例です。
[0-3s] A studio fashion sequence. Starting with woman <IMAGE_REF_0>, she is holding <IMAGE_REF_1>
[3-6s] Then we see the man <IMAGE_REF_2> holding <IMAGE_REF_3>
[6-10s] And finally another woman <IMAGE_REF_4> who is holding <IMAGE_REF_5> while walking.
ソースと参照の宣言
複数のメディア入力と複数の役割がある複雑なケースでは、明示的なプレフィックスタグと自然言語の指示を組み合わせて使用できます。これらのソースと参照は、プロンプトの冒頭で宣言してください。
[# Sources <FIRST_FRAME>@Image1]は、最初の画像を開始フレームとして使用します。[# Sources <FIRST_FRAME>@Image1 <LAST_FRAME>@Image2]は、最初の画像を開始フレームとして、2番目の画像を最終フレームとして使用します。[# Sources <FIRST_FRAME>@Image1 <LAST_FRAME>@Image1]は、最初の画像を開始フレームと最終フレームの両方として使用し、ループする動画を作成します。[# Sources <FIRST_FRAME>@Image1] [# References <IMAGE_REF_0>@Image2]は、最初の画像を開始フレームとして、2番目の画像を参照として使用します。[# Sources <VIDEO_0>@Video1]は、編集または変更する動画のメインソースとして使用します。[# Sources <PREVIOUS_VIDEO>@Video1]は、前のターンの動画を使用して続きを作成します。[# References <IMAGE_REF_0>@Image1]は、最初の画像を参照として使用します。[# References <IMAGE_REF_1>@Image2]は、2番目の画像を参照として使用します。[# References <IMAGE_REF_0>@Image1 <IMAGE_REF_1>@Image2]は、両方の画像を参照として使用します。[# References <VIDEO_REF_0>@Video1]は、最初の動画を参照として使用します。[# References <IMAGE_REF_0>@Image1 <VIDEO_REF_0>@Video1]は、画像と動画の両方を参照として使用します。
プロンプトの最後に、次の指示を追加してください。
- 開始フレームの場合:"この画像を開始フレームとして使用してください。"
- 開始フレームと終了フレームを指定して動画をループさせる場合:"この画像を最初のフレームと最後のフレームとして使用してください。"
- 参照画像の場合:"動画生成の参照として、指定された画像を使用してください。画像をそのまま初期フレームとして使用しないでください。"
- 参照動画の場合:"指定された動画を参照として使用してください。動画編集のソースとして使用しないでください。"
ソースと参照の宣言を含むプロンプトの例をいくつか紹介します。
[# Sources <FIRST_FRAME>@Image1] [# References <IMAGE_REF_0>@Image2] a woman <IMAGE_REF_0> is walking. Use Image1 as the starting frame. Use Image2 as a reference for the video generation.
[# References <IMAGE_REF_0>@Image1 <VIDEO_REF_0>@Video1] The woman in <VIDEO_REF_0> is playing the violin shown in <IMAGE_REF_0>. Use Video1 as a character reference and Image1 as an object reference.