Communitygithub.com

brand-promo

ブランドの動画、ロゴアニメーション、テキストから、約50秒のダークでキネティックなスタジオショーリール/プロモーションビデオを生成します。タイプライター調のイントロ、3Dカードのリング、グリッチタイトル、スポットライト演出、リキッドロゴリビールなどを含み、オリジナルのシンセサイズド楽曲とナレーションを備えた1080p60 MP4を出力します。

brand-promo とは?

**brand-promo** は、ブランドの既存動画、ロゴアニメーション、数行のテキストをもとに、約50秒のダークでキネティックなスタジオショーリール/プロモーションビデオを自動生成するAIエージェントスキルです。1つの設定ファイル `promo.json` を編集するだけで、ヘッドレスChromeで全フレームを描画し、テンプレートやストック映像を一切使わないピュアなモーションデザインビデオを作成できます。3〜5つの作品スポットライト、タイプライター調のイントロ、グリッチタイトル、3Dクリップラッシュ、リキッドロゴリビールといった固定構造を持ち、ブランドの規模を問わず利用可能です。ffmpeg、Node 22+、Google Chrome(またはChromium)、Python(numpy, scipy)を必要とし、VoxCPM2によるナレーション(英語またはクメール語)をローカル実行できます。プレビュー機能で30秒ほどでレイアウトを確認でき、初回レンダリングは約10分です。このスキルは、**Claude Code**、**Cursor**、**Codex** などのAIエージェントと連携し、ユーザーが「ショーリール」「スタジオリール」「ポートフォリオ動画」「エージェンシープロモ」「デモ動画」を依頼した際や、`/brand-promo` と入力した場合に自動的に起動します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/chydevit/Skill-create-videos/tree/HEAD/plugins/video-skills/skills/brand-promo

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

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

ドキュメント

ブランドプロモ(スタジオショーリール)

このスキルは、単一の設定ファイル promo.json から1本の完成されたプロモーションビデオを生成します。キャンバスシーンはヘッドレスChromeで全フレームを描画するため、テンプレートやストック映像を使用しない、ピュアなモーションデザインビデオです。

  • 映像: ブランド自身のクリップ、ロゴアニメーション、テキスト。
  • 楽曲: コードで生成されたオリジナルシンセトラック(128 bpm)。すべてのカット、ドロップ、インパクトが小節に合わせて配置されます。
  • ナレーション: VoxCPM2、ローカル実行。
  • サウンド: 各作品の独自のオーディオがそのスポットライトで再生されます。

構造は固定されており、あらゆるブランド規模で機能します。変更されるのはコンテンツのみです。

時間セクション
0-3.4 秒{ Every story } がタイプライター調で表示され、続けて「deserves to move.」
3.2-7.6 秒3Dカードのリング(全作品のスチル):「Here are five of ours.」
7.6 秒(小節4)ドロップ:アイブロウ、ブランド名(グリッチアクセントボックス内)、サブライン
9.5 秒 + 各5.6 秒作品ごとに1つのスポットライト:タイトルブロック+傾いたカード(16:9)またはスマートフォン(9:16)上の作品、「Full video · m:ss」チップ、ライブレベルバー付きの独自サウンド
ブレーク「Your story」、続いてナレーション行の最後の単語に合わせた大きな「next.」
ラッシュすべてのクリップが3Dで高速通過し、ナレーターのフレーズに合わせて3つの単語(Written · Voiced · Animated)が表示
エンドリキッドロゴが最後のビートで着地、左にスライド、名前がワイプイン、続いてチップとURLが表示

長さは5作品で51.5秒、4作品で45.9秒、3作品で40.2秒です。

必要条件:

  • ffmpeg、Node 22+、Google Chrome または Chromium(CHROME_PATH)。
  • numpy と scipy がインストールされたPython(PROMO_PY)。
  • ナレーション用の VoxCPM2(VOX_PY、scripts/voices.py を参照)。これがない場合、プロモにはナレーターが含まれないか、build/vox/<id>.wav に独自の録音を配置できます。

ワークフロー

1. プロモに必要なものを集める

  • 3〜5作品: ブランドの完成済み動画(任意の長さ)。縦型動画はスマートフォン、横型動画はカードで再生されます。以下の点に注意:

    • 各作品に適したサウンドモーメント(文の始まりやパンチラインなど)があること。その中の4秒間がスポットライトで再生されます。開始時間を sound として指定するか、省略すると動画の35%付近の静かなギャップの開始が使用されます。
    • サウンドを再生したくない作品には "mute": true を設定します。
  • ロゴアニメーション(透過あり)。最適なソースは /generate-logo をリキッドスタイルで使用することです:

    generate-logo/scripts/animate.sh logo.png --styles liquid --prores
    

    これにより <name>-5s-liquid-alpha.mov とその -sfx.wav が生成されます。透過 -alpha.webm または透過PNGも使用できます。

  • ブランド情報:

    • ブランド名(2つのカラー部分に分割、例:["KumNit", " Studio"])。
    • カラー:名前に2つのグラデーション、アクセントカラー、セカンドアクセント、ウォームアクセント。ロゴから読み取ります。
    • ウェブサイト。
    • ブランドが手掛けるもの:4つのチップ。
  • 言語: "lang": "en" または "km"。クメール語の場合、すべてのテキストとナレーション行を自然なクメール語で記述します。Kantumruy Pro と Koulen はバンドルされています。

2. プロジェクトを作成する

プロジェクト用のフォルダを作成し、examples/kumnit-showreel.json を promo.json としてその中にコピーし、編集します。すべてのキーは references/config.md に説明されています。テキストは短く保ちます:タイトルは1〜3語、行は最大6語にします。長い行は縮小表示されますが、読みにくくなります。

ナレーションは voice.lines に、各モーメントごとに1つの短い文として記述します:

  • next は大きく表示される単語で終わるようにします。例:「Your story could be next。」
  • rush は3つのフレーズをカンマで区切って記述します(ラッシュの3単語に対応、例:「We write it, voice it, and animate every frame。」)。

3. プレビュー(約30秒)

<skill>/scripts/promo.sh <project>/promo.json --preview

これにより、アセットがカットされ、タイミングが計画され、12枚のスチルが out/<name>-preview.png にレンダリングされます。これを確認し、以下をチェックします:

  • カードに適切なモーメントが表示されているか。
  • タイトルがつぶれていないか。
  • ロゴがフレーム内に収まっているか(マークはボックスの約60%を占めるべき)。
  • スポットライトが交互に表示されているか。

画像を修正するには、該当作品の sound 開始時間を変更します。その後、assets/clips/p<k>、assets/bites/p<k>.wav、assets/manifest.json を削除し、再度プレビューを実行します。

4. レンダリング(初回約10分)

<skill>/scripts/promo.sh <project>/promo.json        # バックグラウンドで実行

ステージは次の順序で実行されます:assets、voices、plan、music、mix、render、encode。

  • Voices: 初回実行はモデルのロードに約2分かかり、その後1行あたり10〜60秒かかります。既に存在する行は保持されるため、build/vox/<id>.wav を削除して再実行します。
  • Rendering: 2つのChromeプロセスで約4分。
  • Resuming: --from mix(または render、encode)でそのステージからのみ再実行します。

出力: out/<name>-1080p60.mp4 と out/<name>-contact.png(1秒あたり1フレーム)。

5. 引き渡し前の確認

  • コンタクトシートを確認します。
  • ffprobe で期待される長さ(5作品で51.5秒)が表示されることを確認します。
  • ミックスは -14 LUFS にノーマライズされています。
  • 結果を聴くことはできないので、確認した内容(タイミング、レベル、フレーム)をユーザーに伝え、聴いてもらうよう依頼します。特に、各作品のサウンドに対するナレーターのバランスに最も注意します。

チューニング

  • サウンドエフェクト: sfxDir をユーザーの独自サウンドエフェクトフォルダに設定すると、scripts/audio.py(SFX)にリストされたファイル名が最初に試されます。不足しているものは合成されるため、ライブラリがなくてもスキルは機能します。
  • タイミング: scripts/plan.py のナレーションから計測されます。各作品のサウンドは、そのナレーション行の後に開始し、次のスポットライトの前に停止します。ルールを変更するには、シーンではなく plan.py を編集します。
  • 見た目: カラーは brand から取得し、すべてのモーションは scripts/scene.mjs にあり、楽譜は scripts/music.py にあり、その小節レイアウトはファイルの先頭に記載されています。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

brand-loop

Make a seamless looping background video of glossy 3D liquid blobs in a brand's colours. Two colour families float slowly in zero gravity, each merging and pinching off like mercury, on a soft off-white studio backdrop with a warm gradient, faint ripple rings, soft drop shadows and shallow depth of field. It renders in Blender EEVEE at 4K 60 fps as H.264, HEVC 10-bit and 1080p, and the last frame flows into the first. Use it whenever the user wants a looping background, brand backdrop, abstract 3D or liquid loop, motion background for a website, stream, event screen or presentation, a "seamless loop", or a background for their logo or text, or types /brand-loop.

generate-logo

Turn any logo image (PNG, JPG, WebP or SVG) into finished 5-second animated logo reveals in five styles (liquid, neon, bounce, lens, rise). Each comes as a 1080p60 MP4 with synthesised sound effects, a transparent WebM (optional ProRes 4444 .mov) for video editors, and a keyframe sheet. It can add a two-tone wordmark, render square or vertical versions for social media, and build a bespoke style for a particular logo. Use it whenever the user wants a logo animation, animated logo, logo reveal, intro, outro or sting, motion logo, a brand intro for a video, or "make my logo move", or types /generate-logo, even if they only attach a logo and say "animate this".

portfolio-reel

Make a ~30-second creator / freelancer / developer portfolio intro reel (1080p60 MP4) in one fixed, friendly motion-design style (template "skill 2"). A mustard-yellow gradient asks a hook question ("Looking for a … Video editor?"), a white circle wipes to a profile hero (round avatar, badge pill, "Hello, I'm …", roles split by bars, a black "Here's my work ↑" button). The page then scrolls through 1-4 work sections on light grey with window-light shadows, each a title plus 1-3 rounded cards playing the user's own clips or showing their pictures. A yellow light wipe brings two closing lines, then a black social profile card pops up with counting stats, a cursor clicks Follow (it turns into Following) and the card flips in 3D to its back. Two UIs: "classic" (the template) and "app" (a search bar that types the hook and opens a results dropdown, a bento dashboard of glass tiles, a carousel of browser and phone mockups, a chat screen for the closing lines, and a profile card with a co...

saas-promo

Make a kinetic SaaS / startup / product / developer promo video (1080p60 MP4) in one fixed, fast motion-design style: an ~11-second teaser, or a ~50-second version with chapters (one per product or project) cut on the beat of the user's own song. It opens with glyph flashes and purple/lime neon shapes, then types a word with a cursor while a 3D swirl of your screenshots orbits it. Cards slide onto a painted meadow and build a bento wall with words typing inside them, and the camera zooms into a card. A glowing gradient orb then reveals the headline word by word, and a glitch drops into a long-exposure flower on a blue-to-orange sky with flying symbols and "From … / To …". Every frame is drawn in code, with typing, whoosh, riser and impact sound effects and a synthesised ambient bed or your own song (its tempo and drop are measured, so every cut lands on the beat), mixed to -14 LUFS. English or Khmer. Use it whenever the user wants a SaaS promo, product or app teaser, a developer or...

関連スキル