FilmCraft — Claudeによる映像編集
このPCへのインストール
| 要素 | 場所 |
|---|---|
| アプリ + CLI(ポータブル版 0.13.0) | %LOCALAPPDATA%\Programs\FilmCraft\(filmcraft.exe, filmcraft-cli.exe, データは data\) |
| ランチャー(制御チャンネル 127.0.0.1:9876 + トークン) | {{DEPOT}}\filmcraft-mcp\launcher\FilmCraftClaude.exe(デスクトップショートカット「FilmCraft」) |
| 制御チャンネルトークン | %LOCALAPPDATA%\FilmCraft-Claude\control.token(絶対に表示したりコピーしたりしないでください) |
| MCPコンパニオン(Python, uv) | {{DEPOT}}\filmcraft-mcp\server\ |
| FilmCraftソース(ドキュメント) | {{DEPOT}}\filmcraft\docs\(agents.md, control-protocol.md, captions.md, graphics.md) |
起動(必ずこの順番で)
filmcraft_status(MCP filmcraft-assist)を実行。running=falseの場合はfilmcraft_launchを実行(filesに.fcprojプロジェクトファイルや必要なメディアを指定)。- MCPツールが遅延読み込みされている場合は、ToolSearch
+filmcraft(両方のサーバー)で読み込む。 - ユーザーの作業をデモプロジェクト内で行わないでください:
command_run file.newProject {name}を実行し、file.saveAs {path}でプロジェクトフォルダに保存するか、file.open {path}で既存プロジェクトを開く。
2つのMCP
| 要件 | ツール |
|---|---|
| 状態確認 / アプリ起動 | filmcraft_status, filmcraft_launch(assist) |
| プロジェクト情報の読み取り、ID取得 | doc_inspect, project_inspect, sequence_inspect(filmcraft) |
| 操作の実行 | command_run {id, params}, command_batch {steps, stop_on_error}, media_import(filmcraft) |
| コマンドの検索 | command_list {filter} または references/commands.md をgrep |
| 結果の確認 | render_frame {seconds}, ui_screenshot {panel?}(filmcraft); contact_sheet(assist) → 画像をRead |
| 編集前のラッシュ分析 | media_probe → media_conform(VFRの場合)(assist) |
| 文字起こし(フランス語、単語単位) | transcribe_media(assist) — 決して transcript.generate を使ってはいけません(whisper-baseはフランス語に弱い) |
| 音楽に合わせる | music_beats {add_markers, every, offset_seconds}(assist) |
| 最終品質チェック | export_qc {path, platform}(assist) |
MCP以外にも、CLIをBashで(ヘッドレス、ウィンドウなしで)使用できます:filmcraft-cli --project p.fcproj --save exec <id> key=value、filmcraft-cli --project p.fcproj export out.mp4 --preset "YouTube 1080p Full HD"。
作業ループ
- 検査(
sequence_inspect) → クリップ/要素のIDを取得。IDはrazor(カット)後に変わるため、再度検査が必要。 - 明示的なターゲット(
clips: [id],item: id)で操作(選択ではなく)。 - 結果を確認:キーポイントで
render_frame、カラーグレーディングはscopes.read、リズムはcontact_sheet。 - 間違っていたら:
command_run edit.undo。こまめに保存:file.save。
エラーを防ぐルール
- 時間:ティック(254,016,000,000 / 秒)。ほとんどのコマンドは
seconds、frame、timecodeを受け付けます →secondsを優先。markers.addとsequence.addEditはtimeをティックで指定。 - シーケンス = 出力フォーマット:
file.newSequence {name, width, height, fps, sampleRate: 48000}を放送用に設定(16:9 1920×1080、9:16 1080×1920、1:1 1080×1080)、フレームレートはコンフォームされたラッシュに合わせる。 - 言語フィラー用:
transcript.removeFillersのデフォルトリストは英語のため、常にfillers(transcribe_mediaが返すもの)を指定する。 - 長時間書き出し:
file.exportMedia {…, wait: true}。常に最後にexport_qcを実行し、書き出されたファイルに対してcontact_sheetを実行する。 - PATH内のffmpegは2013年版のため、assistツール(ffmpeg 8 WinGet)か
%LOCALAPPDATA%\Microsoft\WinGet\Links\ffmpeg.exeを使用する。 - 「not available right now」と拒否されたコマンド:条件が不足している(シーケンスが開いていない、適切なタイプのクリップがない、ターゲットが正しくない)。
command_list {filter: "<id>"}を読んでenabledフィールドを確認。
レシピ
詳細なレシピ(正確なパラメータ付き)は references/recipes.md を参照。
- A. チュートリアル / 正面カメラ:プローブ → コンフォーム → 文字起こし → フィラーと無音カット → クリアな音声 → 字幕 → カラーグレーディング → -14 LUFS書き出し → QC。
- B. ショート縦型 9:16:1080×1920のシーケンス、トリミング、大きく短い字幕、「Social Vertical 1080×1920」プリセット。
- C. 音楽に合わせた編集:
music_beats→ 小節マーカー → マーカーでカット → ダッキング。 - D. カラーグレーディング:Lumetri(実際のパラメータは
references/effects.md、エフェクトlumetri)、ショットマッチlumetri.applyMatch、確認scopes.read。 - E. ミキシング:Essential Sound(ダイアログ/音楽)、ダッキング、MixにTrue Peakリミッター。
- F. 書き出し + QC:プリセットは
references/export-presets.md、loudnessLufs、captionSidecar、burnCaptions。
リファレンス
references/recipes.md— レシピA~FのステップバイステップとJSONペイロード。references/commands.md— 710のコマンドをカテゴリ別に分類(grep:`timeline.`,`captions.`,`lumetri.`,`essentialSound.`,`export.`,`transcript.`)。references/effects.md— 303のエフェクト/トランジションと、パラメータID、範囲、選択肢(grep:`lumetri`,`hard_limiter`,`cross_dissolve`)。references/export-presets.md— 39の書き出しプリセット。scripts/gen_reference.py— FilmCraftアップデート後に3つのリファレンスを再生成:python -I scripts/gen_reference.py。
FilmCraftのアップデート
filmcraft-<ver>-windows-x64-portable.zip を github.com/storytold/filmcraft/releases からダウンロードし(SHA256SUMS.txt を確認)、FilmCraftを閉じ、%LOCALAPPDATA%\Programs\FilmCraft\ 内の filmcraft.exe と filmcraft-cli.exe を置き換え(data\ と portable.txt は保持)、その後 scripts/gen_reference.py を実行する。