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つのフィールドを編集して、再度ビルドします。