match-cut について
match-cutは、形や動作をつなぎながら場面を切り替える商品モンタージュ映像の制作スキルです。Renoiseと後処理スクリプトを使い、企画、キーフレーム、映像・音声生成、レビュー、編集、納品まで進めます。
主な機能
- 01コンセプト、コピー、ショット表の作成
- 02キーフレームとアニマティックの制作
- 03Renoiseによる映像・音楽・ナレーション・効果音の生成
- 04スクリプトによる編集、ミックス、品質確認
- 05予算とレビュー段階に沿った制作管理
活用シーン
- 01マッチカットを軸にした商品映像の制作
- 02映像生成前のアニマティック確認
- 03ナレーション、音楽、動作に合わせた効果音の追加
- 04予算とレビュー計画に沿った映像納品
MCP 対応
映像、音楽、ナレーション、効果音、アップロード、納品にはRenoise MCPサーバーが必要で、セットアップ時にアカウントツールを呼び出します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sac-y/ match-cut --skill match-cutインストール後、Claude Code で/match-cutを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreREADME.en.mdLICENSEREADME.mdexamples/template.jsonexamples/big-mac/README.mdmontage.jsonexamples/iphone-duo/README.mdmontage.jsonreferences/generation.mdreview.mdalmakan.mdstills-codex.mdpost.mdplanning.mdscripts/assemble.pyalign.pyrequirements.txtmusic.pyqc.pymix.pyrender.pycommon.pyundot.py詳細
マッチカット・モンタージュ
カットごとに周囲の世界が変わるなか、同じ形や動きが途切れず続く短いプロダクトフィルムです。このスタイルは references/almakan.md に文章で記載されています(フィルム自体は含まれていません)。このスキルで制作した完成フィルムと、その設定、制作過程でうまくいかなかったこと:examples/iphone-duo/、examples/big-mac/。
ユーザーの言語で話してください。コピーは英語をデフォルトとします。認証情報を入力したり、API キーを求めたりしないでください。各プロジェクトはそれぞれ別のフォルダーに置いてください。
0. セットアップ(最初に行うこと)
-
すべてのホストで Renoise が必要です。 動画、音楽、VO、フォーリー、アップロード、納品には Renoise MCP サーバーを使用します。
get_accountを呼び出してください。ツールが見つからない場合、またはサインインが必要な場合は、ユーザーを案内し、応答があるまで待ってください。ホスト Renoise の接続方法 Claude Code claude mcp add --transport http renoise https://renoise.ai/api/public/mcpを実行し、Claude Code を再起動してから、/mcp→renoise→ ブラウザーでサインインCodex codex mcp add renoise --url https://renoise.ai/api/public/mcpを実行し、続けてcodex mcp login renoise(ブラウザーでサインイン)を実行してから、Codex を再起動Claude Desktop / claude.ai Settings → Connectors → https://renoise.ai/api/public/mcpを追加その他のエージェント https://renoise.ai/api/public/mcpの MCP サーバー(ストリーミング可能な HTTP、OAuth サインイン)シェルを使える場合は、追加コマンドをこちらで実行するか提案してください。ブラウザーでのサインインはユーザーが行います。Renoise 独自の
renoise-setupスキルがインストールされている場合は、この表ではなく、そのスキルに従ってください。 -
ホストに応じて静止画ツールを選び、それぞれのツールで何を作成でき、どの料金が発生するかをユーザーに伝えてください。
ホスト キーフレーム用の静止画 動画、音楽、VO、フォーリー Codex(組み込みの image_genツールを利用可能)image_gen(GPT Image)。Renoise クレジットではなく、ユーザーの ChatGPT / Codex プランに課金されます:references/stills-codex.mdRenoise Claude およびその他のエージェント Renoise、Seedream 5.0 Pro: references/generation.mdRenoise Codex では、ユーザーが静止画にも Renoise を選ぶことができます。ユーザーが指定したモデルがある場合は、常にそのモデルを優先します。
-
ポストプロダクションのセットアップは自分で行い、ユーザーに手動でインストールさせないでください。 スクリプトには、
scripts/requirements.txtに記載された Python 3.11 と ffmpeg が必要です。~/.cache/match-cut/venvの仮想環境を使ってください。存在しない場合は作成し(python3.11 -m venv、または python3.11 がない場合はuv venv --python 3.11)、依存パッケージをインストールしてください(約 500 MB、初回のみ)。そのパスに書き込めない場合(サンドボックス内など)は、プロジェクトフォルダー内の.venvを使ってください。ffmpeg が PATH にない場合は、インストールする前にユーザーに確認してください(macOS の場合はbrew install ffmpeg)。ステージ 2 の前、ユーザーがプランを確認している間に実行してください。
作業モード(基本プランと一緒に一度だけ確認)
ユーザーから製品とその事実情報を受け取ったら、基本プラン(切り口、構成、世界観、コピー、モデル、予算)を検討してください。プランを提示してから、残りの作業をどのように進めるかを一度だけ尋ねてください。
- 通しで進行。 ユーザーは基本プランと作品全体の予算上限を一度だけ承認します。その後、静止画、アニマティック、動画、ポストプロダクションを追加の確認なしで進め、次にユーザーが目にするのは完成したフィルムです。予算上限を超える場合、必須の素材(公式画像、ロゴ)が不足している場合、またはショットの再試行が失敗し、修正によって承認済みのプランを変更する必要がある場合に限り、早めに停止してください。
- 段階ごとに確認。 ユーザーは、①プラン、②アニマティック、音楽、動画の見積もり、③フィルムの各段階で承認します。
作業モードを plan.md に記録してください。どちらのモードでも、references/review.md に記載されたすべてのレビューを実施してください。通しで進行するモードでは、確認を求めずに、予算上限内で不合格となった箇所を修正します。
ワークフロー:4 つのステージ
1. 計画(クレジット不要)
references/almakan.mdを読み、2つの例を見たり読んだりしてから、references/planning.mdを確認します。
- 製品、主要な事実、尺(デフォルトは20秒)、言語(デフォルトは英語)を集めます。製品が新しいもの、またはなじみのないものであれば、オンラインで調査し、計画書に出典を記載して、未確認事項は仮定として明記します。
- 公式製品画像(映像で見せる状態ごとに1枚)とロゴが提供されていれば使用します。提供されていない場合は、ステージ2の前に必要な素材として列挙します。計画の作成は、素材が揃うまで待ちません。
- 製品に最も合う切り口を選び、その理由を1~2文で述べます。
- コンセプト、コピー、各世界とその照明、各ショットの物理的な動作(誰が、何を、どの持ち方で、どちらへ、どの状態からどの状態へ動かすか)を含むカット表を作成します。すべてのカットをチェック項目に沿って確認します。
get_accountを実行し、ステージ2の費用(スチル、音楽候補)と、両方の動画ティアでの映像全体の費用(references/generation.md)を提示します。残高に基づいてデフォルトのティアを選びます。plan.mdと、最初のmontage.json(ソースはスチル)を保存します。
チェックポイント ①:ユーザーが計画、モデル、作業モード、費用を承認します(ステージ2の上限額。最初から最後まで一括で進めるモードでは映像全体の上限額)。
2. スチルとアニマティック
ホストのツール(ステップ0)を使い、references/generation.mdのステージ2(Codexではreferences/stills-codex.mdも)に従ってスチルを作成します。
- キーフレーム用スチル(各ショットの最初のフレームを1枚、ショットを特定の状態で終える必要がある場合は最後のフレームも1枚。共通のフレーミングはマスターとなるスチル1枚を編集して作成)と、音楽候補を3つ用意します。
- 次の波で編集を行う前に、
references/review.mdに従ってすべてのスチルを確認します。qc.py onionとqc.py matchでカットの組み合わせを揃え、フレーミングは再生成ではなくalign.pyで修正します。 - 各トラックで
music.py analyzeを実行し、それぞれをタイムラインに合わせてカットします。アニマティックをレンダリングします(render.py --draft、assemble.py --draft)。
チェックポイント ②(チェックポイントモードのみ):ユーザーがアニマティックを見て、音楽を選び、動画/VO/フォーリーの見積もりを承認します。
3. 生成(主な費用)
references/generation.mdのステージ3に従い、承認済みのスチルを使ってフレームモードで動画を生成します(音声なし、カメラの動きはポスト処理に回します)。計画に含まれていればVOを生成し、動作ごとにフォーリーを付けます。references/review.mdに従ってすべてのクリップを確認します。タスクごとの再試行は1回とし、上限額を超えないようにします。すべてのタスクをtask-map.jsonに記録します。
4. 編集、ミックス、納品(クレジット不要)
references/post.mdに従います。
- ショットごとに
picks、geo、roll、pull、whipを設定します。 render.py→qc.py cuts→music.py cut→mix.py→assemble.pyの順に実行します。- 映像を確認し(
references/review.mdの映像セクション)、バージョンREADMEを作成して、mp4をアップロードし、show_resultを実行します。
チェックポイント ③:ユーザーが映像を確認します。 各修正ラウンドは、変更ログを含む新しいバージョンフォルダーとして保存します。
レビューでは数値だけでなく、リアリティも確認します
スクリプトで測定できるのは、位置合わせ、サイズ、明るさです。物体を持てない手、押すものがないのに動くカバー、電話が下がるのに上がるふた、製品が目標の状態に達する前に止まる動きは検出できません。references/review.mdには、すべてのスチル、クリップ、映像をフルサイズで確認する際の項目が記載されています。製品や手の不具合は納品前に修正し、「既知の逸脱」として記載してはいけません。
デフォルトモデル
| 用途 | モデル |
|---|---|
| スチル | Codex:組み込みのimage_gen。その他のホスト:Renoise上のSeedream 5.0 Pro、2k |
| 動画 | 残高がSeedanceの見積もり(計画全体)の2倍以上であれば、1080pのSeedance 2.5。それ以外は1080pのWan 3.0(ヒーローショットは、合計費用が残高の40%以内に収まる場合はSeedanceを使用)。どちらも予算に合わない場合は、720pにTopazでアップスケール。どのモデルが動作に適しているか判断できない場合は、まず両方で1ショットずつ試します |
| 音楽/VO/フォーリー | Renoise上のLyria 3 Pro ×3/Seed Audio/ElevenLabs SFX |
これらのデフォルトは、一般的なルーティングの推奨や「依頼された場合のみWanを使う」といったlist_modelsのヒントより優先されます。ただし、現在の制限は引き続き適用されます。ユーザーがモデルを指定した場合は、常にそのモデルを優先します。
スクリプト
scripts/(ステップ 0 の仮想環境から実行します):
| スクリプト | 内容 |
|---|---|
render.py CONFIG OUTDIR [--draft] [ids] | 映像:ピック、ジオメトリ、ロール、プル、ウィップ、カラーグレーディング、フィルムテクスチャ、スーパー、エンドカード → ショットごとに ProRes と QC フレームを出力 |
music.py analyze TRACK / cut CONFIG | 小節グリッド、小節ごとのラウドネスとキーの解析/キューをカットし、すべてのつなぎ目を確認 |
mix.py CONFIG | VO、フォーリー、ダッキング、スウェル、マスタリング、ステム、ラウドネスレポート |
qc.py sheet / onion / cuts / match / look | 任意のクリップのコンタクトシート、カットペアのオーバーレイ、輝度ステップ付きカットシート、製品の位置合わせ、リアリズムレビュー用のフルサイズクロップ |
align.py IN OUT L T Z | 静止画をクロップおよびズームし、被写体をカット相手と同じ位置に配置します(生成された編集ではフレームを再構成します) |
undot.py IN OUT BOX / --fixed CX,CY,R,FROM | 画面上のモデルが生成したカメラドットを除去します。BOX 内でフレームごとに検出するか、静止画の画面上の固定位置で検出します |
assemble.py CONFIG RENDERDIR [--draft] | ProRes マスター、H.264 mp4、ステム(またはアニマティック) |
設定形式と各フィールドについては、references/post.md を参照してください。出発点は examples/template.json です(20 秒、27 ショット:
オープナーの連鎖、リレー、ブレス、ラインナップ、ウィップ、ヒーロー、エンドカード)。これは 1 つのレイアウトであり、規則ではありません。