Communitygithub.com

carousel-mp4

Instagramカルーセルを、文字ごとのアニメーション、ワイプ、スライド間のカメラ移動、ケン・バーンズ効果、Openverseからのバラエティ豊かな効果音とロイヤリティフリーの音楽を備えたAfter Effects風のMP4アニメーションとして作成します。

carousel-mp4 とは?

このスキルは、`instagram-carousel`スキルを基盤として、通常のPNG画像の代わりに、動きのあるMP4アニメーションを生成します。ユーザーが「ビデオとして」「アニメーションで」「MP4で」「リール用に」「After Effects風に」とリクエストした場合に使用します。ワークフローは、まず通常のカルーセルデザイン(縦横比の確認、スタイル(スライドまたはモーショングラフィックス)、サウンド設定)を行い、その後HTML内でアニメーションの振り付けを調整します。最終的なMP4レンダリングにはChrome(GSAP + WebCodecs)を使用し、ffmpegは不要です。Openverseから効果音や音楽を検索・ダウンロードして組み込むことも可能で、出力はInstagram/Reelsに即座にアップロードできるH.264 + AAC形式となります。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Yupzao/instagram-carousel-skill/tree/main/skills/carousel-mp4

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

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

ドキュメント

カルーセル → アニメーションMP4

このスキルは instagram-carousel スキルを再利用します(~/.claude/skills/instagram-carousel にインストールされている必要があります。以下 <ic> と表記します)。 最終出力は MP4 であり、PNG画像ではありません。

ワークフロー

  1. 通常通りカルーセルを作成: <ic>/SKILL.md のステップ1〜4に従います(概要、アーキタイプ、ビジュアルシステム、スクリプトとHTML)。すべてのルールが適用されます:スライド間の連続性、新しいフォント、2+1パレット、デザインレビュー。
    • デザイン前に必ず縦横比を確認します。リクエストに明示されていない場合でも、以下の選択肢を提示します:

      • 縦長: リール/ストーリーズ 9:16(1080×1920、--reels)またはフィード 4:5(1080×1350、フラグなし);
      • 横長: 16:9(1920×1080、--landscape)、YouTube、Webサイト、画面用。

      縦横比によって全体の構成(グリッド、サイズ、セーフゾーン)が変わるため、デフォルトで選択しないでください。横長はモーショングラフィックスモードでのみ機能します。

    • また、スタイルも確認します:スライド(自動振り付け:スライド間のカメラ移動)またはモーショングラフィックス(キネティックタイポグラフィと多様なトランジションにより、スライド風に見せない)。ユーザーが「スライドっぽい」と言ったり、よりダイナミックなものを求めた場合は、モーショングラフィックスを使用します。references/motion.md を参照してください。

    • さらにサウンドも確認します:内蔵エフェクト(デフォルト)、Openverseエフェクト、Openverse音楽、ユーザーのファイル、またはサウンドなし。

  2. <ic>/references/video.md を読む:振り付け、data-anim/data-delay によるアニメーション制御、サウンド、チェック項目について。
  3. 必要に応じてHTML内の振り付けを調整します。アニメーションは自動ですが、data-anim と data-delay でキーモーメントを微調整できます。
  4. フル動画の前に静止画でチェック(高速):
    node <ic>/scripts/video.mjs <output>/carousel.html <output>/carousel.mp4 --stills=0.6,1.5,3,4.2,6
    
    <output>/carousel-stills/ 内のJPEGを開き、各エントランスの終わりで何も切れていないか、重なっていないか、見えていないかを確認します。
  5. サウンド(オプション。video.md › サウンドを参照):
    • Openverse:node <ic>/scripts/sounds.mjs search "whoosh" --type=sfx。ユーザーにオプションを表示し、許可を得て node <ic>/scripts/sounds.mjs download <id> <output>/sounds/whoosh-1.mp3 を実行します。
    • ファイル名で用途を設定:whoosh*(トランジション)、pop*(ステッカー/ピル)、hit*(タイトル)。各タイプにつき複数(whoosh-1.mp3、whoosh-2.mp3…)を使用し、トランジションが毎回同じ音にならないようにします。同じ音が連続しないようにローテーションします。音楽は別途扱います。
    • ファイルがない場合、内蔵エフェクトはそれ自体で変化します(5種類のウーッシュ、3種類のポップ、3種類のヒット、ランダムなピッチと長さ)。
  6. MP4をレンダリング:
    node <ic>/scripts/video.mjs <output>/carousel.html <output>/carousel.mp4 [--reels] [--sfx=<output>/sounds] [--music=<output>/sounds/music.mp3]
    
    ffmpegは不要:Chrome(GSAP + WebCodecs)を使用します。20〜30秒の動画で約30〜60秒かかります。長時間の場合はバックグラウンドで実行します。
  7. 納品:
    • carousel.mp4(H.264 + AAC、Instagram/Reels対応済み)
    • caption.txt(キャプション、ハッシュタグ、キーワード)
    • メモ:長さ、形式、使用したサウンド(およびその出典、sounds/sound-sources.txt から)と、まだ置き換えるべきプレースホルダー

ユーザーから明示的に依頼がない限り、PNG画像は納品しないでください。依頼があった場合は、基本スキルと同様に render.mjs を使用します。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

関連スキル