コラージュBロール解説動画 は何をしますか?
約5秒のナレーションラインを、1つのシャープなビジュアルアイデアに圧縮し、プレミアムなエディトリアルペーパーコラージュの組み立てアニメーションに変換します。
デフォルトのパイプライン:
- ビジュアルメタファーのみをデザインし、ユーザーの確認を待つ
- 最終スチルフレームのみを生成し、ユーザーの確認を待つ
- 最初/最後のフレーム参照を使用して自動的に動画を生成し、QAを実行する
- オプションでフィットしたナレーションを生成し、ミックスする
2つの確認ゲートはワークフローの一部であり、オーバーヘッドではありません。ユーザーが美学と方向性に注意を集中できるようにし、間違ったメタファーや間違ったスチルが動画生成コストを浪費するのを防ぎます。
ランタイム要件
- MaxFusion MCP が接続および認証されていること (
https://mcp.maxfusion.ai/mcp)。すべての画像、動画、音声生成はこれを介して実行されます。接続されていない場合は、停止して、ユーザーに何かを行う前に接続方法を説明してください。 - ローカルファイルアクセスとffmpeg (例: Claude Code): フレーム準備、動画QA、サイレント配信、ナレーションフィッティングは、アセットをダウンロードしてローカルで処理します。サンドボックス化されたエージェント(ローカルダウンロード不可)でも3つのゲートすべてを実行し、MaxFusionウィジェットに結果を表示できますが、フレーム準備はプロンプトのみの色合わせにフォールバックし、フレームごとの自己QA、オーディオストリッピング、ナレーションフィッティングはスキップされたことをユーザーに伝える必要があります。ユーザーはクリップを目視で判断し、エディターでミュートする必要があります。
必須承認プロトコル
ゲート1: メタファー確認
スクリプトラインを受け取ったら、最初にビジュアルメタファーを提案します。画像は生成せず、動画も生成せず、いかなる生成ツールも呼び出さないでください。
各行に対して、以下を提示します:
- 核となる意味
- 感情
- 一文のビジュアル提案
- 3~6個の主要なオブジェクト
- 推奨される背景色とローカルアクセントカラー
- 意図された組み立て順序
その後、明示的に停止し、ユーザーが「承認」、「すべて承認」、または項目ごとの修正ノートを返信するのを待ちます。
ユーザーが番号付きアイテムの一部のみを承認した場合、承認されたアイテムのみがゲート2に進みます。残りのメタファーについては繰り返し改善を続けます。
ゲート2: スチルフレーム確認
メタファーが確認された後にのみ、ビジュアルスペックと画像プロンプトを作成し、maxfusion_generate_image で最終スチルを生成します。
オリジナルをプロジェクトディレクトリに保存し、番号付きスチル連絡シートを作成し、すべてのスチルをユーザーに表示します(maxfusion_display_generation、画像ごとに1回の呼び出し、さらに番号付きマッピング)。そして再度停止します。この段階ではまだ動画は生成しません。
ユーザーが一部のスチルのみを承認した場合、承認されたアイテムのみがゲート3に進みます。拒否されたスチルを再生成し、最初に再確認します。
ゲート3: 動画生成
スチルが確認されたら、すぐに生成します。動画モデルは固定されています:
video_model: gemini-omni-flash
他の動画モデルは決して使用されません。モデルの選択肢を提供したり、どのモデルを使用するかユーザーに尋ねたり、障害時に他のモデルにフォールバックしたりしないでください。修復プレイブックを適用し、gemini-omni-flash で再実行してください。
成功基準
- 1行は正確に1つの明確なメタファーを表現する
- バッチは1つのデザイン言語を共有するが、単一の青い背景に強制されない
- 背景は強く、フラットで、均一な色のフィールドであり、意味によって変化する
- 被写体は白黒のハーフトーン写真の切り抜きから構築される
- キーカード、ボタン、フィルムストリップ、ルールブックなどは、赤、黄、青緑、オレンジ、紫、またはクリーム色のカードストックを使用してもよい
- すべての紙片は、くっきりとしたカットエッジ、クリーム色のキーライン、柔らかく低不透明度の影、そして紙の質感を持つ
- モーションは「空から組み立てる」スタイルであり、ゆるやかなドリフト、ぐらつき、スローズームではない
- 字幕、スクリプト全文、ロゴ、透かし、UIはなし
- デフォルトの納品: 9:16、5秒、720p、サイレントMP4(オーディオトラック除去済み)— またはユーザーがナレーションを希望する場合は音声付きバージョン
このスキルを使用すべきでない場合
- レイヤー、オクルージョン、カメラフライスルー、編集可能なタイムラインの正確な制御が必要な場合: 代わりにレイヤーアニメーションツール(例:HTMLレンダリングレイヤードビデオアプローチ)を使用する
- ユーザーが完成したクリップではなく、動画プロンプトのみを希望する場合: プロンプトを書くだけで、このフローはスキップする
- ユーザーに実在の人物の商品広告やカメラ出演のプレゼンターが必要な場合: このコラージュフローは使用しない
- ユーザーがレイヤーごとに編集可能な透明アセットを明示的に必要とする場合: このスキルは分離された透明レイヤーを提供しません
デフォルトプロジェクトディレクトリ
ローカル作業フォルダー。名前はユーザーのローカル日付を使用します:
~/collage-broll-projects/YYYY-MM-DD-<タイトル>/
バッチプロジェクトの推奨構造:
<プロジェクト>/
├── brief.md
├── visual-spec.json
├── imagegen-prompts.md
├── omni-jobs.json
├── gate2-qa.md
├── gate3-qa.md
├── still-contact-sheet.jpg
├── omni-contact-sheet-all.jpg
├── video-first-frame-all.jpg
├── end-frame-comparison-all.jpg
├── 01-<コンセプト名>/
│ ├── omni-prompt.txt
│ ├── voiceover-raw.mp3 (オプションのナレーション段階)
│ ├── voiceover-trim.mp3
│ ├── frames/
│ │ ├── last-frame-original.png
│ │ ├── first-frame.png
│ │ └── last-frame.png
│ └── omni/run-v01/
│ ├── final-5s.mp4
│ ├── final-5s-noaudio.mp4
│ ├── final-5s-voiced.mp4 (オプションのナレーション段階)
│ ├── contact-sheet.jpg
│ ├── video-last-frame.jpg
│ └── end-frame-comparison.jpg
└── 02-<コンセプト名>/...
また、maxfusion_create_project を介してMaxFusionプロジェクト(同じ名前)を作成し、その id をバッチ内のすべての生成で project_id / project_group_id として渡し、すべてのアセットがワークスペースにグループ化されるようにします。項目ごとに追跡するもの: 確認済みメタファーテキスト、画像ジョブID + 確認済みスチルの画像ID、アップロードされた最初/最後のフレームの file_id、動画ジョブID + 動画ID、およびQA判定。これらのIDを各ゲートでユーザーに報告し、どのアイテムも個別に参照または再実行できるようにします。
フェーズ1: ビジュアルメタファーのデザイン
最初にスクリプトラインを単一のビジュアル提案に圧縮します。
抽出するもの:
- 核となる意味: 視聴者が最終的に理解しなければならないこと
- 感情: 落ち着き、驚き、緊急性、突然の明晰さ、不条理、皮肉
- アクション動詞: 開く、接続する、漏れる、縛る、アーカイブする、照らす、圧縮する、分岐する、組み立てる
- ビジュアルメタファーの候補: 機械、時計、フィルムストリップ、ファイルキャビネット、コンソール、ルールブック、漏斗、線路、チェスの駒
スクリプトテキストをそのままフレームに入れないでください。デフォルトは1行に1つのメタファーであり、3~6個の主要なオブジェクトに抑えます。要素が多すぎると意味が薄れ、Omniの組み立てが不安定になります。
視聴者が日常生活で認識できるメタファー(やかん、雪玉、写真ブースなど)を抽象的なものよりも優先します。ナレーションラインがユーザーの実際のトピックへの橋渡しをするため、ビジュアルは不明瞭にならずにワイルドなままでいられます。
バッチの場合、前後のナラティブを形成するメタファーを優先します。例えば、最初の手作業による労苦と経験の喪失、次に体系化されたプロセスと人間と機械の分業。
ゲート1の出力例
1. 核となる意味: 専門知識が毎回ゼロから消費される
ビジュアルメタファー: 熟練した編集者が巨大なフィルムストリップ時計の周りを回り、フレームごとに切断している。時計は完全に一回転するが、完成したフィルムの短いストリップしか生成されない
主要オブジェクト: フィルムストリップ時計、編集者の人物、はさみ、短い出力ストリップ
カラー: バーントオレンジのフィールド、クリームとライトティールのアクセント
組み立て順序: 時計 → はさみを持った人物 → フィルムストリップ → 最終的な短い出力
これを出力して停止し、確認を待ちます。
フェーズ2: カラーコラージュスチルの生成
メタファーが確認された後、最初に自己完結型の visual-spec.json を作成し、次に画像プロンプトを作成します。
ビジュアルスペック
{
"script_meaning": "",
"visual_metaphor": "",
"style_signature": "フラットで大胆なカラーフィールド、白黒ハーフトーン切り抜きと色付きカードストックアクセントの混在、くっきりとしたカットエッジ、クリーム色のキーライン、柔らかな紙の影、エディトリアルペーパーコラージュ",
"aspect_ratio": "9:16",
"color_field": {
"background_hex": "",
"accent_colors": [],
"paper_grain": "微細な無塗工紙繊維"
},
"elements": [
{
"what": "",
"role": "",
"motion": "",
"placement": ""
}
],
"composition": {
"layout": "",
"negative_space": "",
"final_frame": ""
},
"motion_plan": "構造が最初、次に被写体またはキーカード、最後にアクションと結果",
"avoid": "タイポグラフィ、読める文字、数字、ロゴ、透かし、UI、字幕、光沢のある3D、フォトリアルな環境"
}
カラールール
コバルトブルーを唯一のデフォルトとして扱わないでください。意味から強力なカラーフィールドを選択し、バッチ全体で「同じデザイン言語、異なるフィールドカラー」を維持します:
- バーントオレンジ / 赤: 時間消費、労働、緊急性
- マスタードイエロー: ツール、警告、経験の喪失
- インクグリーン: 認知、味覚、システムリセット
- ディープパープル: ルール、体系化、長期記憶
- ティール: 判断、コラボレーション、自律実行
被写体はほとんど白黒ハーフトーンのままですが、すべての色付きカードストックアクセントは情報階層に役立たなければなりません。色のためだけに色を使ってはいけません。
画像プロンプトテンプレート
maxfusion_generate_image (デフォルトモデル、aspect_ratio: "9_16"、quality: "high") で生成:
Use case: ads-marketing
Asset type: 9:16画像から動画へのBロールクリップ用の最終スチルフレーム
Primary request: [一文のビジュアル提案]を表現する、完成されたエディトリアルペーパーコラージュ画像を作成してください。
Scene/backdrop: 微妙な無塗工紙繊維を持つ、完全にフラットな[色名]ペーパーフィールド[ヘックス]。
Style/medium: プレミアムエディトリアルストップモーションペーパーコラージュ; 選択的な[アクセントカラー]の色付きカードストックと混在する白黒ハーフトーン写真の切り抜き。
Composition/framing: 縦9:16固定ポスターフレーム; 中央70パーセント内の中心被写体; 豊富でクリーンなカラーフィールドのネガティブスペース; 後で空からの組み立てアニメーションのための3~6個の大きな分離可能なペーパーグループ。
Materials/textures: 目に見える印刷されたハーフトーンドット、くっきりとした機械カットエッジ、薄くて暖かいクリーム色のペッパーキーライン、柔らかく低不透明度の物理的なドロップシャドウ。
Constraints: [このメタファーが一目で伝えなければならない1つの関係]。
Avoid: タイポグラフィなし、読める文字なし、数字なし、ロゴなし、透かしなし、UIなし、字幕なし、光沢のある3Dなし、フォトリアルな環境なし、乱雑さなし。
シーンにダイヤル、時計の文字盤、ゲージ、カウンターが含まれている場合は、その上のすべてのマークがプレーンなティック線であるという明示的な制約を追加します。ローマ数字や桁は絶対に禁止です。シーンに眠っている人物が含まれている場合は、「Zzz」マークを明示的に禁止します。動画モデルはこれらをこっそりと挿入するのが大好きです。
maxfusion_get_job (wait: 60) でジョブをポーリングし、各スチルをアセットURLから <item>/frames/last-frame-original.png にダウンロードし、画像ジョブIDと画像IDを記録します。
スチルQA
- メタファーが一目で読めるか
- 被写体が集中しているか
- 偽の文字、ロゴ、透かし、UIがないか
- 空のフレームから組み立てるのに十分な純粋なカラーフィールドが残っているか
- 3~6個の明確な大きなグループがあり、紙吹雪で画面がいっぱいになっていないか
- バッチ全体で: 統一されたテクスチャ、変化するフィールドカラー
合格したオリジナルをプロジェクトディレクトリにコピーし、番号付きスチル連絡シートを作成し、ユーザーに表示し(さらに画像ごとに maxfusion_display_generation)、ゲート2の確認のために停止します。スチルQA判定を <プロジェクト>/gate2-qa.md に書き込みます。
ユーザーが一部のスチルの再生成を要求した場合、それらのみを再生成し、still-contact-sheet-v2.jpg(以降のラウンドではv3、v4…)を作成します。古い連絡シートは上書きせず、比較用に保持します。拒否されたスチルをダウンストリームで再利用しないでください。
フェーズ3: Omniで動画を生成
1. 最初と最後のフレームを準備
画像生成のオリジナルを保持し、最後のフレームを正規化します:
ffmpeg -y -i <item>/frames/last-frame-original.png \
-vf "scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920" \
<item>/frames/last-frame.png
最初のフレームはデフォルトで、最後のフレームと同じ背景色の純粋な空のペーパーフィールドです:
ffmpeg -y -f lavfi -i color=c=0x<HEX>:s=1080x1920 \
-frames:v 1 <item>/frames/first-frame.png
(<HEX> はビジュアルスペックの background_hex であり、画像プロンプトに書き込まれたのと同じ16進数です。これにより、2つのフレームが同じ色に保たれます。)
ユーザーが完全に空白のフィールドから開始しないことを明示的に要求した場合にのみ、最初のフレームは1つのベース構造オブジェクトを保持できます。
両方のフレームを maxfusion_upload_asset (purpose: "image_reference"、content_type: "image/png"、正確な size_bytes、filename) でMaxFusionにアップロードします。ツールはアップロードセッションを返します。upload.fields のすべてのキー/値をそのまま使用し、ファイルバイトを file という名前の最後の部分として追加して、upload.url にマルチパートフォームをPOSTします(任意の2xx =成功)。次に、返された各 file_id を使用します。項目ごとに2つの file_id を記録します。
2. Omniアニメーションプロンプトを作成
デフォルトのアクション順序:
ベース構造 → 人物またはキーカード → コネクター → アクション → 最終結果
プロンプトテンプレート(項目ごとに <item>/omni-prompt.txt として保存):
Image 1を正確な空の最初のフレーム、Image 2を正確な完成した最後のフレームとして使用した、ペーパーコラージュストップモーションアセンブリ。1つの連続したロックされた縦長ショットで、空のフラットな[色]ペーパーフィールドで開く。
くっきりとした物理的なストップモーションタイミングで、シーンをピースごとに組み立てます: [3~6個の要素がどのようにスライドインし、所定の位置にはまり込み、接続し、アクションを完了するかを順に説明]。提供された完成した構図を保持して終了します。
正確な9:16フレーミング、[16進数]カラーフィールド、色付きカードストックアクセント、無塗工紙の質感、ハーフトーンドット、クリーム色のキーライン、くっきりとしたカットエッジ、柔らかな影を維持します。控えめな触覚的な2Dペーパークラフトのみ。
シーンカットなし、カメラ移動なし、ズームなし、モーフィングなし、新しいオブジェクトなし、テキストなし、文字なし、数字なし、ロゴなし、透かしなし、UIなし、音なし。
すべてのプロンプトは、Image 1が空の最初のフレームであり、Image 2が確認済みの完成した最後のフレームであることを明記しなければなりません。最終構図はImage 2に着地しなければなりません。モデルが再設計することを許可しないでください。