Communitygithub.com

eksinge/video-workbench

Remotion と HyperFrames を使ってローカル動画を作成・編集します。音声とタイムスタンプなしの MD/TXT 歌詞またはタイムスタンプ付きキャプションから、ユーザーの連続スクロール、グリフマスク進行スタイルを使用して検証済みのリリック MV を生成します。統合された汎用動画ワークフローも保持します。

video-workbench とは?

このスキルは、Remotion と HyperFrames の両エンジンを統合した統一エントリポイントを提供します。ユーザーが音声と歌詞(MD/TXT/SRT/LRC/VTT 形式)を提供すると、専用のリファレンスに従ってリリック MV を生成します。特に、タイムスタンプのない MD/TXT 歌詞を音声に合わせて自動アラインし、連続スクロールとグリフマスク進行スタイルを適用します。デフォルトの字幕スタイル(Barlow Black 42、米白 `#F0ECE5`、右揃え、行間 40px)と進行バー(`#E85D26`、50% オーバーレイ、下から上へ成長)が定義されています。また、既存プロジェクトの修正、3バージョンの保持、ローカルスクリプト(`align_lyrics.py`、`compile_lyrics.py`、`render_video.py`)による校時、コンパイル、レンダリングをサポートします。エンジン間のメディア相互運用性を重視し、Remotion と HyperFrames のソースを独立して保持しながら、MP4/WebM などのメディアを交換可能です。このスキルは Claude Code や Cursor などの AI エージェントが読み取り、ローカルツールを操作するために設計されており、Web ページが自動的に読み取り実行することはありません。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/eksinge/video-workbench/tree/HEAD/skills/video-workbench

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

ビデオワークベンチ

これは Remotion + HyperFrames の統一エントリポイントスキルです。公式エンジンと公式スキルを保持し、ローカルワークベンチ、素材、プレビュー、レンダリングを統合します。Web ボタンから直接ローカルプログラムを実行します。チャット内の AI が本スキルを読み取りツールを操作します。Web ページが自動的に読み取り実行することはありません。

オーディオとキャプションから直接制作

ユーザーが楽曲と MD/TXT/SRT/LRC/VTT を提供する場合、まず 歌詞 MV フロー と 現在の字幕スタイル仕様 を読んでください。オーディオのみで歌詞がない場合、歌詞を自作せず、映像/音声分析を続け、不足する歌詞をユーザーに要求します。

  • MD/TXT の 空でない物理的な改行が 1 行とみなされ、行単位でテキストと順序が保持されます。カンマで結合したり、勝手に分割したりしないでください。音符 ♪ もテキストの一部です。
  • MD にタイムスタンプがない場合、AI は実際のオーディオに基づいてアラインし検証します。同時に提供されたタイムスタンプ付きファイルやオーディオに埋め込まれた歌詞はタイミングの参考にのみ使用し、ユーザーが指定した分割ファイルをテキストの基準とします。文字数に基づいて歌唱時間を均等に割り振ることはできません。
  • 新しい MV の映像は、下記の Remotion / HyperFrames ルートに従って制作されます。字幕はデフォルトで現在の最終スタイルを厳密に使用します。初期の一行消失、二行結合、0.42 秒階段スクロール、可視のオレンジ色の大きな矩形はすべて置き換えられています。
  • デフォルト字幕: 1920×1080 座標系、Barlow Black 42、アイボリー #F0ECE5、右揃え x=1830、行間 40px、透明背景、影なし、縁取りなし。一般的な時間オフセットのデフォルトは 0 秒 で、実際のオーディオとユーザーフィードバックに基づいて調整し、1 回だけ適用します。以前の 0.6 秒先行は特定のリファレンス曲プロジェクトにのみ適用され、他の曲やユーザーには適用できません。
  • 歌詞全体が 1 つのリジッドなコンベヤーベルトとして継続的に上に移動します。速度は各ラインの実際の歌唱時間に応じて調整され、短いブレスは連続し、明らかな無詞間隔では停止します。古い行は保持され、オレンジラインの高さで徐々に表示され、ホワイトラインの高さで徐々に切り取られます。フェードアウトではなく空間クリッピングを使用します。
  • 元のオレンジ色の進行領域は、歌詞と音符のグリフ内部のみに表示されます。文字の穴、行間、文字外は透明です。#E85D26、50% オーバーレイ、下から上に成長する進行ロジックを保持します。6 つのリファレンスパターンと今後追加されるすべての映像は歌詞レイヤーの下に配置されます。
  • 新しい曲の内容、全長、リズム、映像は実際の素材によって決まります。前の曲の 62 行、130 秒のカットポイント、または 6 つのパターンをすべてのプロジェクトにハードコードしないでください。リファレンス曲の進行は正確に 240 秒です。新しい曲はデフォルトで実際の全長に合わせて埋められますが、明示的に 240 秒に固定することも可能です。

再利用可能なツール(パスは本スキルからの相対パス):

  1. scripts/align_lyrics.py: ローカルオーディオ + タイムスタンプなし歌詞 + オプションのタイムスタンプ参照 → 元のアライメント提案と検証マーク。提案を自動的に検証済み結果として偽装しません。
  2. scripts/compile_lyrics.py: 検証済みの行単位のタイムスタンプ JSON → 現在のスタイルの ASS、SRT、コンベヤーベルト状態、グリフ測定記録。
  3. scripts/render_video.py: ローカルエンジン映像 + オーディオトラック + コンパイル結果 → 検証済みの完成動画。登録可能で、そのプロジェクトの最新 3 バージョンのみ保持します。

パラメータとファイル形式については スクリプトインターフェース を参照してください。本機の FFmpeg に依存します。ローカルアライメントには別途 Faster Whisper と既存モデルが必要です。スキルにはモデル、FFmpeg、または Node エンジンのランタイムは含まれておらず、クラウド生成クレジットが利用可能であることを保証しません。

既存プロジェクトの変更と 3 バージョンの保持

まず、ユーザーが実際に再生しているファイルと最新バージョンを確認します。明示的に要求されたプロジェクトとパラメータのみを変更します。既存の映像、オーディオトラック、カットリズム、既存スタイルは、今回明示的に変更が要求されない限り保持します。字幕編集は、独立した字幕レイヤーを再合成し、検証済みのベース映像を再利用し、全アニメーションを再描画しないことを優先します。

ユーザーが「さらに 0.2 秒早く」と要求した場合、現在の累積オフセットに加算します。元のバージョンに戻したり、デフォルトオフセットを再適用したりしません。左右の境界には x を、上下の高さには y を使用します。ユーザーが軸を間違えて呼んでも幾何学的意図が明確な場合は、説明し実際の方向で実行します。テキストの y はスクロールに応じて変化するため、一意の固定 y があると主張しません。

各プロジェクトでは、最新版、前版、前々版の合計 3 つの完成動画エクスポートのみを保持します。 新しいバージョンの生成、デコード、内容チェックが完了したら、それより古い該当プロジェクトのエクスポートと対応する時代遅れのプレビューをクリーンアップします。元の素材、字幕ソース、プロジェクト、アライメント証拠は保持します。削除予定のエクスポートがまだプロジェクトに依存している場合は、まず素材として分類し参照を修正します。エクスポートの登録順に保持し、フォルダ全体の更新日時に基づいて他のプロジェクトを恣意的に削除しないでください。詳細は 歌詞 MV フロー を参照してください。

本会話に関連する要件と置き換えられたバージョンについては ユーザー要件記録 を参照し、継承関係を理解するために使用し、置き換えられたパラメータを再有効化しないでください。

最初に既存プロジェクトを解決する

インストールされているワークスペースとコマンドについては local-workspace.md を読んでください。編集前にユーザーの現在のソースを開いてください。Studio や他のセッションが独立して変更を保存する可能性があるためです。

  • 既存の Remotion/React ソース: Remotion を保持し、../remotion-best-practices/SKILL.md と該当するドメインスキルを読んでください。
  • 既存の HyperFrames HTML ソース: HyperFrames を保持し、../hyperframes/SKILL.md と該当するドメインスキルを読んでください。
  • 新規の音楽/歌詞/ビート同期動画: ユーザーが Remotion を選択しない限り、../music-to-video/SKILL.md を使用した HyperFrames を優先してください。
  • 新規の React 駆動データアニメーション、再利用可能な React 動画コンポーネント、または Remotion アプリケーション: Remotion を使用してください。
  • その他の新規作業については、capabilities.md を使用して要求された出力に基づいて選択してください。明示的なエンジン選択に従ってください。
  • ソースの移行はメディアの再利用とは別のものです。明示的なソース移植リクエストがある場合にのみ remotion-to-hyperframes を使用してください。ソース形式間の自動ラウンドトリップを約束しないでください。

メディアを介してエンジンを接続する

共有ブリーフ、ストーリーボード、ビート/フレーズタイミング、キャプションタイムスタンプ、ローカルメディアを使用してください。ソースファイルはネイティブフレームワークで編集可能な状態を保ってください。適切に MP4/WebM/MOV、イメージシーケンス、WAV、画像、キャプション JSON/SRT を交換してください。ソースメディアをコピーまたはステージングし、ユーザーのオリジナルを置き換えないでください。

ローカル検証済みデモンストレーションは、Remotion プロジェクトを MP4 にレンダリングし、そのファイルを SHA-256 とともに bridge-manifest.json にステージングし、HyperFrames タイムラインに配置します。これはメディア相互運用性の例であり、ソースコードコンバーターではありません。

クロックは別々に保ってください: Remotion は useCurrentFrame() とその決定論的な React API を使用します。HyperFrames は hyperframes-core で説明されるシーク可能なランタイムとタイムラインを使用します。作成前にアクティブなエンジンのルールを読み、エンジン固有の制限や構文を盲目的に転送しないでください。

スキルライブラリを段階的に完全に使用する

リポジトリのセットアップにより、33 の固定された公式スキルとそのサポートファイルがすべてインストールされます。それらが準備できていると主張する前に、その存在を確認してください。ケイパビリティマップを参照し、選択したスキルとその関連リファレンスをすべて読んでください。インデックスはワークフローの詳細な手順の代わりにはなりません。狭い編集に無関係なワークフローをロードしないでください。

MV 制作では、音楽ソースと希望するビジュアルスタイルを確立してください。カットを選択する前に実際のトラックを分析してください。穏やかな音楽ではフレーズとエネルギーを優先し、真にリズミカルな音楽ではビートアンカーを優先してください。歌詞を同期済みとして提示する前に、ボーカルのタイミングを確認してください。スタイルが未決定の場合は、短い代表的な抜粋を提供してください。

実際の成果物を検証する

選択したエンジンのチェックを実行し、インポートされたビデオを含むフレームを検査し、エクスポートされたファイル内のオーディオを確認してください。正常に動作するスキルインストール、合格したドクターレポート、成功したレンダリング、ユーザー承認のビジュアル結果はそれぞれ異なる主張です。実際に検証された状態のみを報告してください。

インストールされたスキルは、認証情報、クレジット、ビデオ生成モデル、ソースアセットを提供しません。必要な場合は、ユーザーの認可されたサービスを使用してください。これらのスキルをインストールしても、公開、クラウドアップロード、外部フィードバック、メッセージ、有料生成は許可されません。ユーザーの指示とホストの認可ルールに従ってください。ラッパーを使用する場合は、ローカル統合のテレメトリ無効化環境を維持してください。

関連スキル