motion-video について
ビートに合わせたカット、発話に合わせた表示、測定に基づく音声品質を備えたモーショングラフィックス動画の制作スキルです。2種類のスタイルと、素材準備からレンダリングまでの手順を案内します。
主な機能
- 012種類のビジュアルスタイル参照
- 02スクリプト化された制作工程
- 03ビートグリッド調整と音楽編集
- 04音声アライメントとミックス測定
- 05Lint、スナップショット、レンダリング検査
活用シーン
- 01新しいモーショングラフィックス動画の制作
- 02既存動画を別プロジェクトとしてスタイル変更
- 03音楽のタイミングやミックスの再調整
- 04ソーシャル動画のレンダリングとエンコード
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bestagentkits/ motion-video-skill --skill motion-videoインストール後、Claude Code で/motion-videoを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/templates/hyperframes.jsonindex-skeleton.htmlassets/templates/data/cues.example.jsonmusic-arrangement.example.jsonmusic-plan.example.jsonoutro-plan.example.jsonscript.example.jsonsfx.example.jsonassets/templates/scripts/align-voiceover.mjsarrange-music.mjsbuild-timeline.mjsgenerate-audio-assets.mjsreferences/audio-and-beat-sync.mdcomposition-contract.mdproduction-pipeline.mdstyle-comic-spiderverse.mdstyle-glass-keynote.mdscripts/fit-beat-grid.pymeasure-mix-balance.pyverify-arrangement.pyscripts/tests/test_audio_tools.py詳細
モーション動画
シーンの切り替えが音楽のビートに合い、表示が話された言葉に合い、音声が放送品質に仕上がる、1920×1080、30 fpsのモーショングラフィックス動画を作成します。 ワークフローは完全にスクリプト化されています:事実 → スクリプト → multix オーディオ → 強制アライメント → ビートグリッド → 小節単位で分割した音楽 → タイムライン+ミックス → HTML コンポジション → lint/check/スナップショット → レンダリング → リマックス → ソーシャル向けエンコード。
完成済みの2つのエディションで、それぞれのスタイルの雰囲気を確認できます。作業プロジェクトは意図的に同梱していません。生成されたナレーション、音楽、SFXは容量が大きく、プロバイダーのライセンス対象だからです。公開デモを確認してから、すべての新しい動画を assets/templates/index-skeleton.html とスタイルリファレンスを基に作成してください。
| スタイル | スタイルリファレンス | 公開デモ | 雰囲気 |
|---|---|---|---|
| コミック・マルチバース | references/style-comic-spiderverse.md | Dewee v3.34 コミック版、151秒のソーシャル向けエンコード | 派手で、遊び心があり、手作り感がある |
| ガラスのキーノート | references/style-glass-keynote.md | 同じリリースの144秒版 | プレミアムで、落ち着きがあり、明快 |
対象範囲
このスキルで対応する内容:
- どちらかのスタイルでの新規動画作成、既存動画を別プロジェクトとして別スタイルに作り直すこと、および部分的な再制作(新しい音楽、ドロップのタイミング調整、再ミックス、再レンダリング、ソーシャル向けエンコード)。
multixCLI による音声処理:Gemini TTS の音声、ElevenLabs の SFX、ElevenLabs の音楽作曲プラン、ElevenLabs の強制アライメント。
このスキルで対応しない内容:
- 生成 AI によるテキストから動画への映像制作(
multixSeedance/Veo を直接使用してください)。 - React/Remotion のコンポジションや、一般的な HyperFrames に関する質問(hyperframes または remotion スキルを使用してください)。
- ソーシャルアカウントへの投稿:ファイルを作成し、ユーザーに投稿してもらいます。
作業手順
- ファイルに手を加える前に、成果物の要件を確定します:トピックと情報源、スタイル(2つのうちいずれか、またはそれらを基にした新しいスタイル)、尺、音声言語(デフォルトは英語のナレーション+ベトナム語の字幕)、エンディング、シグネチャー。スタイルまたは事実の情報源が不明な場合に限り、質問してください。
assets/videos/<slug>/を作成し(完成済みのエディションは決して上書きしないでください)、リポジトリの規約に従ってplans/の下にプランを作成します。このスキルのassets/templates/からテンプレートをコピーします:scripts/*.mjs、data/*.example.json(名前を.jsonに変更)、hyperframes.json、index-skeleton.html(index.htmlとして保存)、およびscripts/fit-beat-grid.py。references/production-pipeline.mdに従って、手順を順番に進めます。各手順で生成したファイルを次の手順で読み込むため、順序を入れ替えないでください。references/audio-and-beat-sync.mdに従って音楽を仕上げます:グリッドを合わせ、スクリプトに必要な位置にドロップが来るよう小節を分割し、分割を検証して、音声と音楽のバランスを測定します。references/composition-contract.mdと選択したスタイルリファレンスに従い、assets/templates/index-skeleton.htmlから始めてindex.htmlを作成します。同じシーンタイプ(統計、図、チャート、ターミナル、グラフ、アウトロ)が繰り返される場合は、新しい演出を考案せず、そのシーンのデモの演出を踏襲してください。- 「完了条件」のすべてのチェックに合格するまで、作業を完了としないでください。感想ではなく、測定値を報告してください。
認証情報は multix 独自の設定内に保持してください。API キーを表示したり、プロジェクトファイル、プラン、レポートにコピーしたりしないでください。
完了条件
hyperframes lintとcheckが成功し、すべてのシーンのスナップショットを確認済みであること。verify-arrangement.pyがすべてのセグメントを ±2 ms 以内と報告し、measure-mix-balance.pyが音楽の音量を音声より約4~6 dB低いと示すこと。- ffprobe:1920×1080、30 fps、想定尺、AAC 48 kHz ステレオであること;ebur128 が約 −14 LUFS、ピークが ≤ −1 dBFS であること;blackdetect がフェード以外に何も検出しないこと。
build-timelineでクリップ/重複/単語欠落の警告が表示されていないこと。- 画面上の事実が、手順1で収集した情報源にたどれること。
リソース
references/production-pipeline.md:スケルトン作成から SNS 用エンコードとスタジオプレビューまでのすべてのコマンド、および再ビルド用の表です。references/audio-and-beat-sync.md:音声、効果音のキュー、音楽プラン、小節単位のスプライス編集、アンカー、ミックスの数値、ダッキング時の注意点です。references/composition-contract.md:TIMING の形式、ヘルパー、決定性、シーンの時間範囲、字幕、マスコット、レンダラーの制限、シグネチャーです。references/style-glass-keynote.md/references/style-comic-spiderverse.md:スタイルごとのトークン、フォント、レイヤー、コンポーネント、トランジション、字幕の見た目です。scripts/fit-beat-grid.py <music> [--min-bpm N --max-bpm N]:BPM、BEAT0、各小節のキック/エネルギーの表を出力します。scripts/verify-arrangement.py <project> [--tolerance-ms 2]:セグメントごとのスプライスのずれを調べます。ずれがある場合は 1 で終了します。scripts/measure-mix-balance.py <project>:build-timeline.mjs --stemsを使って、発話中と無音区間の音楽の音量を測定します。scripts/tests/:python -m unittest discover -s scripts/tests(ffmpeg、numpy、scipy が必要です)。assets/templates/:プロジェクト用スクリプト(generate-audio-assets、align-voiceover、arrange-music、build-timeline)、サンプルデータファイル、コンポジションのスケルトンです。
コメント
Markdown 対応