mcpField
V
video-edit-compare

video-edit-compare

github.com/whitetoweraiクリエイティブ・メディア1755 回インストール3 週間前に更新
リポジトリ

video-edit-compare について

元映像と実際の最終納品映像を、元映像の時間軸に沿って並べて比較する動画編集ワークフロースキルです。フレーム対応、削除区間、長さ、元音声の連続性を検証します。

主な機能

  1. 01元映像と最終映像の分割比較
  2. 02最終フレームを元の時間に対応
  3. 03削除区間を黒で表示
  4. 04元音声の時間を維持
  5. 05出力動画を自動検証

活用シーン

  1. 01元映像と編集結果の照合
  2. 02元の時間軸で最終映像を確認
  3. 03編集で削除された区間の確認
  4. 04比較動画の音声連続性の検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/whitetowerai/cut-as-code --skill video-edit-compare

インストール後、Claude Code で/video-edit-compareを入力して読み込まれたか確認します。

同梱ファイルscripts/make_compare.pytests/test_make_compare.py

詳細

動画編集比較

単一の V1 比較モード original-vs-final-source-time をレンダリングします。

左パネルではオリジナルを連続再生します。右パネルでは、実際の最終納品映像のピクセルをオリジナルのソースタイムラインに投影します。削除された範囲は黒になり、残された最終映像の範囲はソース上の長さに引き伸ばされ、音声はオリジナルからコピーされます。

依存関係

ffmpeg/ffprobe が PATH 上にあり、Python と Pillow がインストールされている必要があります。メディアの処理前に確認してください。

入力

  • work/timeline.json:ソースからプログラムへの正準な時系列マッピング
  • input/original-video.mp4:オリジナルソース
  • final/final-video.mp4:選択した編集をすべて適用した実際の納品映像

カットプランや中間レンダリングとは比較しないでください。グレーディングとカードもレビューに含めるには、最終映像のピクセルが必要です。

レンダリング

python scripts/make_compare.py TIMELINE.json SOURCE.mp4 FINAL.mp4 OUT.mp4 [--filter-only]

プロジェクトの例:

python skills/video-edit-compare/scripts/make_compare.py `
  work/timeline.json `
  input/original-video.mp4 `
  final/final-video.mp4 `
  review/04-edit-compare/original-vs-final-source-time.mp4

スクリプトは常に、永続ファイル work/edit-compare/compare-plan.json を書き出します。PIL のラベル画像と生成されたフィルターグラフは、一時的な work/cache/ の下に書き出されます。 --filter-only を指定すると、動画をレンダリングせずにプランと確認可能なキャッシュファイルを作成します。

マッピングルール

  • ソースクリップは時系列順で、重複がなく、単一ソースにしてください。
  • 各クリップの program_range を最終映像からトリミングします。
  • クリップの速度に応じて引き伸ばし、source_range の長さに戻します。
  • ソースタイム上のすべての空白に黒を挿入します。
  • オリジナルの音声は、タイミングを変更せずにマッピングします。
  • 各パートの開始フレームと終了フレームは、絶対ソースタイムの境界から算出します。その後、フレーム数に合わせてトリミングし、タイムラインの有理数 FPS で PTS を再構築します。各パートの長さを個別に丸めないでください。連結時の累積的な丸め誤差により、ソースタイムにずれが生じます。

並べ替え、重複、オーバーラップ、非線形速度、複数ソースのタイムラインは V1 ではサポートされておらず、検証時にエラーにする必要があります。

検証

レンダリング後、スクリプトは出力全体を自動的に確認します。

  • 長さが source_duration_s と 1 フレーム以内の誤差で一致すること。
  • 出力幅がソース幅の 2 倍であること。
  • 削除範囲のすべてのサンプルで、右側が黒であること。
  • 残された範囲のサンプルが、対応する最終プログラムフレームと一致すること。
  • オリジナル音声が途切れず、ソースタイムに沿っていること。

成功すると、スクリプトは検証に合格した結果を記載した review/04-edit-compare/comparison-summary.md を書き出します。work/project.json がある場合は、original-vs-final-source-time のレビューノードも追加または更新し、正確な有効な操作リビジョンを based_on に記録して、START-HERE.md を更新します。別個のチェックマニフェストは作成しないでください。

この比較はレビュー用の納品物であり、デフォルトのプレビューではありません。最終レンダリングの完了後に生成してください。

コメント