mcpField
S
showcase-video

showcase-video

github.com/rehan-remadeクリエイティブ・メディア9.2k1.5k 回インストール1 日前に更新
リポジトリ

showcase-video について

showcase-videoは、ゲームプレイを録画し、Modの紹介動画に編集するワークフロー用スキルです。Mod制作者向けに、再現可能な収録、映像確認、EDLによる編集を案内します。

主な機能

  1. 01ゲーム画面と音声の録画
  2. 02スクリプト化した操作による再現可能な収録
  3. 03タイムスタンプ付きコンタクトシートで映像を確認
  4. 04EDLでトランジション、音楽、透かしを追加

活用シーン

  1. 01Modの機能紹介を録画
  2. 02Mod修正後に映像を撮り直す
  3. 03短いゲームプレイ動画向けの場面選び
  4. 04まとめ動画に音楽と透かしを追加

インストール

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

$npx skills add https://github.com/rehan-remade/universal-modder --skill showcase-video

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

詳細

ショーケース動画

30 秒で見せられるようになるまでは、MOD は完成ではありません。ツールチェーンは um win record(キャプチャ)、 um video contact(確認)、um video compile(編集)で、すべて ffmpeg + Pillow を使用します。

1. テイクを再現可能にする

  • アクションをスクリプト化します。 MOD 側のタイムラインやコマンドシーケンス(敵をスポーンさせる、武器を発射する、ボスを登場させる)、トリガーとカメラ移動を設定したシナリオ、または WinDrive のコマンドリストを使います。最初のきれいなテイクを正確に再現できるようにしておけば、修正後に撮り直せます。
  • 各テイクの前にワールドを元に戻します。 爆発でワールドにクレーターができ、ユニットは倒されます。um backup で元の状態を保ったコピーを作成し、各テイクの前に復元します。
  • フレームを整えます。 デバッグテキストを非表示にし、カメラのズームを調整します(Terraria のショーケースでは 1.5x に設定し、1080p のフレームが 720p の映像のように見えるようにしました)。フォーカスが外れているときも全速力で動作させ、カーソルを非表示にします(キャプチャでは capture_cursor=0 を使用します)。

2. ウィンドウとゲーム本体の音声を録画する

um win record --exe Game.exe --out C:\caps\take1 --seconds 40      # -> take1.mkv, take1.audio.raw, take1.json
um video first-frame C:/caps/take1.mkv                              # where gameplay starts (skips loading screens)
um video mux C:/caps/take1.mkv C:/caps/take1.audio.raw C:/caps/take1.json take1.mp4 [--offset 0.25]
  • 動画: ffmpeg gfxcapture で、そのウィンドウだけを録画します(デスクトップではなく GPU フレームを使用)。利用可能な場合は NVENC、AMF、または QSV でエンコードします。NVENC H.264 の最大幅は 4096 px のため、それを超える場合、レコーダーが縮小します。32:9 の画面では、--crop を使って中央の 16:9 を切り出します。
  • 音声: ゲームの PID の WASAPI プロセスループバック(um/ps1/ProcLoopback.ps1)を使います。ゲームの音声だけが録音され、Spotify や通知音は入りません。タイムスタンプが付与されるため、ファイル内の位置は壁時計時刻に対応します。多重化には記録されたオフセットを使用します。閃光と爆発音など、映像と音声の同期イベントで微調整し、--offset を渡します。
  • MOD 内から録画する場合(任意): フレーム単位で正確なテイクを撮るには、MOD から録画を開始・停止します。ffmpeg の停止中にゲームのメインスレッドをブロックしないでください。q を送信してから、別スレッドで待機します。レコーダーが強制終了されても再生可能なファイルが残るよう、.mkv に書き込みます(examples/terraria-tmodloader/reference/InModRecorder.cs を参照)。

3. 編集前に確認する

um video probe clip.mp4
um video contact clip.mp4 sheet.png --every 1.5 --cols 6     # a timestamped grid; read it, pick in/out points
um video contact clip.mp4 zoom.png --start 20 --end 30 --every 0.5

見せ場を選びます。爆発、ボスの登場、隊形を組んだユニットなどです。EDL にイン点とアウト点を記入します。

4. EDL で編集する

um video compile edl.json out.mp4(--preview を指定すると、半分のサイズで高速にレンダリングします)。完全な形式は um video --help に記載されています。

{
  "size": [1920, 1080], "fps": 30,
  "theme": {"accent": "#B6FF3B"},
  "transition": {"type": "fade", "duration": 0.3},
  "clip_volume": 0.8,
  "music": {"path": "music.mp3", "volume": 0.5},
  "watermark": {"path": "logo.png", "height": 54, "corner": "br"},
  "segments": [
    {"clip": "take1.mp4", "in": 9.0, "dur": 3.0, "hook": "Terraria, but with a tactical nuke."},
    {"clip": "take1.mp4", "in": 24.2, "dur": 4.5, "title": "Tactical Nuke", "transition": {"type": "pixelize"}},
    {"clip": "take2.mp4", "in": 3.0, "dur": 5.0, "title": "Drone Mothership boss"},
    {"card": {"title": "Fal Arsenal", "sub": "a Terraria mod"}, "dur": 2.5}
  ]
}
  • トランジション: ffmpeg の xfade タイプ(fade、pixelize、slideleft、smoothleft、circleopen、zoomin、radial など)または cut を使います。
  • 余白処理: 16:9 以外のクリップでは、fill: blur(背景をぼかす)、crop、または pad を使います。
  • クリップごとの設定: speed と volume、UI より手前に寄る zoom、フレームを調整する crop [x, y, w, h] を指定できます。
  • 音楽: um fal music "..." --seconds 60 で音楽を作成できます。bpm を設定し、ビートに合わせてカットするには dur の代わりに beats を使います。um video beats music.mp3 でテンポと最初のビートを推定できます。

効果的なスタイル(実際のフィードバックより)

  • タイトル: 画面に映っているものを説明する 1 行のタイトルを付けます(「Wonder:トランスアメリカ・ピラミッド」、「ロボタクシーと配送ドローン」)。制作方法についての小さな説明字幕は付けません。それは投稿文に記載します。
  • テンポ: 2〜3 秒以内にゲームプレイを始めます。メニューやセットアップは 3 秒以内に収めます。各クリップは 3〜5 秒にします。最後に MOD 名または URL を表示して、フェードアウトします。
  • 音声: ゲームの音声は残します。衝撃音が映像の迫力を高めます。まとめ動画では音楽を下に流し、クリップの音量は 0.5〜0.8 程度にします。
  • 他の人のクリップをまとめる場合: 画面上(credit: "@handle")と投稿文の両方で、すべての制作者にクレジットを表示します。宣伝目的の場合は許可を求めます。クリップが自分のツールで作られたかのように示してはいけません。公開投稿のみをダウンロードし、使用するものだけを取得します。
  • 最後の手順: 共有する前に、完成した動画のコンタクトシートを確認します。

コメント