Communitygithub.com

Raibit-AI/social-ad-builder

素材クリップとシンプルなJSONショットリストから、完成済みの縦型ソーシャルビデオ広告をアセンブルします。Reel、Story、TikTok用の9:16マスターと、フィード用の4:5カットを出力。ブランドカラーの料理ラベル、フレーム0のブランド表記、ハードカット、統一されたカラーグレード、洗練されたサウンド、安全なラウドネス、エンドカードを備えます。無料のffmpegのみを使用します。ユーザーがフードやプロダクトのクリップからショート広告、Reel、TikTokを編集、カット、アセンブル、レンダリングしたい場合や、A/Bテスト用に複数の広告バリエーションを作成したい場合に使用してください。

social-ad-builder とは?

このスキルは、JSON形式のショットリストと動画クリップ群から、ソーシャルメディア広告向けの完成済みビデオを自動生成するツールです。Reels、Stories、TikTokに最適な9:16の縦型マスターと、フィード用の4:5カットを同時に出力します。主な特徴として、ブランドカラーのラベル、フレーム0でのブランド表記、ハードカット、統一されたカラーグレード、安全なラウドネス(-14 LUFS)が含まれます。ffmpegとffprobe(いずれも無料)のみに依存しており、追加のソフトウェアや商用ライブラリは不要です。ショットリストでは各クリップの開始時間、長さ、ラベル、ズーム有無などを指定でき、A/Bテスト用にショットリストの一部を変更して複数バリエーションを簡単に生成できます。このスキルは、料理や製品のクリップからプロ品質のソーシャル広告を迅速に作成したい開発者やマーケターに最適です。CUI環境(ターミナル)で動作し、スクリプト `scripts/build_ad.py` を実行するだけで使用できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Raibit-AI/food-ad-kit/tree/HEAD/plugins/food-ad-kit/skills/social-ad-builder

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

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

ドキュメント

Social ad builder

scripts/build_ad.py はショットリストを2つの完成ファイルに変換します。必要なのは ffmpeg と ffprobe だけです(無料)。すべてのデフォルト設定は、スコアリングを用いた反復ループとブラインドA/Bレビューによって確立されました。

  • ハードカット。 すべてのカットで瞬時にブラックにフェードします。
  • ブランドカラーのソリッドピル上に料理ラベル。 忙しいフード映像の上に細いテキストを載せると判読性が損なわれます。
  • フレーム0にブランドライン。 ほとんどの人は音声をミュートで視聴します。
  • 各フードショットの着地時に4%のズームパンチ。
  • 軽いシャープネスと1つの暖色系グレード。 AIクリップとスマートフォン撮影の映像が一台のカメラで撮影されたように見えます。
  • クリップからオーディオは取得しません。 AI動画モデルは独自の音楽を追加するためです。サウンドは、実際の部屋のアンビエンス(入手可能な場合)と、フード映像の下に流れるソフトなジュージュー音で構成されます。
  • リミッター付きでラウドネスを-14 LUFSに。 トゥルーピークが0dBを超えず、スマートフォンスピーカーで歪みが生じないようにします。
  • 4:5セーフエリア内にテキスト(1920pxでy約390)。 1つのマスターからフィード用にきれいにクロップできます。

ショットリスト

{
 "out": "out/my-ad",
 "brand_color": "#A3192B",
 "brand_line": "Your Restaurant · Your Town",
 "ambience": "room-recording.mov",
 "shots": [
  {"file": "clips/noodle-lift.mp4", "start": 3.0, "dur": 2.0, "label": "Dan Dan Noodles"},
  {"file": "clips/mapo.mp4", "start": 0.8, "dur": 1.5, "label": "Mapo Tofu"},
  {"file": "clips/mapo-scoop.mp4", "start": 3.3, "dur": 1.5},
  {"file": "clips/dining-room.mp4", "start": 0, "dur": 1.0, "label": "Your Restaurant", "subline": "Your Town", "food": false}
 ],
 "endcard": {"bg": "#F3ECE0", "logo": "logo.png", "dur": 2.0,
  "lines": [{"text": "Your Town", "size": 58, "color": "#8B1E1E"},
            {"text": "Order pickup or reserve a table", "size": 56},
            {"text": "yoursite.com", "size": 84, "color": "#8B1E1E", "bold": true}]}
}

python3 scripts/build_ad.py shotlist.json を実行します。これにより out/my-ad-9x16.mp4 と out/my-ad-4x5.mp4 が書き出されます。

ショットフィールド:

  • start と dur はクリップ内の秒単位です。
  • "food": false はズームパンチとジュージュー音をオフにします(部屋のショット用)。
  • "keep_label": true はラベルを再アニメーションせずに2つのショットに引き継ぎます。
  • "subline" はラベルの下に小さな行を追加します。
  • "label_size" はラベルのサイズを設定します(デフォルト78 px)。ラベル内で \n を使用すると2行になります。ラベルとエンドカードの行は、フレーム幅に合わせて自動的に縮小します。
  • テキストには引用符、コロン、カンマ、% を含めることができます。絵文字はラベルフォントではレンダリングされないため、使用しないでください。
  • クリップが要求された dur より短い場合、ビルダーは存在する部分を使用し、注意書きを表示します。その注意書きを確認してください:フックが早く終了した場合、最後のフレームで静止します。

勝利広告からのペーシングルール(広告分解ベンチマークを参照)

  • 長さ: 言葉のないフードモンタージュは 12~20秒 が最適です。トークやストーリー広告はより長くなります。
  • ショット長: 約 1.8秒ごと にカットし、最初のカットは約2秒 で行います。ショット長を0.5秒のグリッドに揃えると、任意の120 BPMの音楽トラックがカットに合うようになります。
  • 順序: フレーム内に手が入った動きで始めます。フード映像は途切れずに続けます。空の部屋のショットは約1秒に抑え、最後の方に配置します。
  • 終わり: 最も良いフードショット、またはシンプルなカードに平易な行動を促す言葉を添えます。
  • 音楽: アップロード時にプラットフォーム自身のライセンスライブラリで追加します。権利を持たない曲をビデオに組み込まないでください。

A/Bバリアントの作成

バリアントごとに1つのことだけを変更(フックショット、フックライン、長さ、料理セット)して、勝者が説明可能になるようにします。ショットリストをコピーし、1つのフィールドを編集して、再度ビルドします。

Individual skills in this repo

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

Raibit-AI/ad-teardown

Breaks a video ad down the way a creative director would. It measures length, cut speed and first cut; pulls frame strips of the first 3 seconds and of the whole ad; transcribes the speech; tags the hook, format, people, text, offer and ending; and scores it against benchmarks from winning food ads. Use when the user asks to analyze, break down, tear down, critique or compare a video ad, Reel or TikTok, especially for a restaurant or food brand.

Raibit-AI/blind-ad-review

Improves a video ad through repeated blind A/B reviews. Two versions are shown as contact sheets to a fresh reviewer who doesn't know which is newer, and both are scored against benchmarks from winning food ads. The next version changes only what reviewers agree on, and the loop continues until the gains stop. Use when the user wants to improve, iterate, critique or A/B test an ad or Reel before spending money, or asks "which version is better".

Raibit-AI/food-shot-director

Directs AI image-to-video food shots for restaurant ads (chopsticks lifting noodles, a spoon scooping, sauce poured, a piece lifted to the lens). It gives the prompt formula, which foods animate well and which morph, and a keep-or-reject checklist so the dish still looks like the real menu item. Works with any image-to-video model (Kling, Veo, Seedance, LTX, Runway). Use when the user wants to animate a food photo, make food B-roll or a hand-in-frame food shot, or turn menu photos into video...

Raibit-AI/winning-ad-finder

Finds video ads that are probably working for restaurants and food brands, using the free Meta Ad Library, and builds a short "swipe file" of likely winners to study. Use when the user asks to find winning ads, research competitors' Facebook or Instagram ads, see what ads restaurants are running, or build ad inspiration for a food business.

関連スキル