mcpField
R
remotion-ads

remotion-ads

github.com/maartenlouisマーケティング・グロース64328 回インストール25 週間前に更新
リポジトリ

remotion-ads について

Remotion Adsは、Remotionとナレーション、アニメーション字幕を使って動画広告、解説動画、カルーセルを制作するスキルです。形式別のワークフローやブランド設定を備え、URLや原稿からシーンを作成できます。

主な機能

  1. 01Reels、解説動画、カルーセル形式
  2. 02ブランド設定とセーフゾーン
  3. 03シーン JSON と音声生成
  4. 04アニメーション字幕と再利用可能なコンポーネント
  5. 05Webページから動画シーンへの変換

活用シーン

  1. 01短いInstagram Reels広告の制作
  2. 02ナレーション付きWeb解説動画の制作
  3. 03Webページから動画シーンを作成
  4. 04複数枚の広告カルーセルのデザイン

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/maartenlouis/remotion-ads --skill remotion-ads

インストール後、Claude Code で/remotion-adsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

package-lock.json
README.md
.gitignore
package.json
LICENSE
assets/dictionaries/
example.pls
template.pls
references/
ad-copywriting.md
animations.md
brand-config-template.md
captions.md
carousels.md
formats.md
html-in-canvas.md
local-assets.md
gemini-tts.md
natural-transitions.md
copy-frameworks.md
paid-ads.md
components.md
ohneis-style.md
social-content.md
music.md
setup.md
url-to-video.md
website-videos.md
sound-effects.md
scripts/
gemini-tts.mjs
suno-direct.ts
url-to-scenes.js

詳細

Remotion Ads

Remotion、ElevenLabs のナレーション、アニメーション付きキャプションを使って、プロフェッショナルな動画広告や解説動画を作成します。

セットアップ

  1. references/brand-config-template.md を references/brand-config.md にコピーします
  2. ブランドカラー、フォント、音声、キャプションのスタイル、コンテンツのルールを設定します
  3. assets/dictionaries/template.pls から発音辞書を作成します

依存関係とフォルダー構成については、references/setup.md を参照してください。


対応フォーマット

フォーマット縦横比解像度長さシーン
Instagram Reels9:161080×192015-60s4(フック→問題→解決策→CTA)
Instagram Reels (Ohneis)9:161080×192015-45sビート主導(単語単位)
Website Explainers16:91920×108060-160s6(フック→問題→背景→解決策→プロセス→CTA)
カルーセル4:51080×1350静止画5-10 枚

セーフゾーンとクロップ仕様については、references/formats.md を参照してください。 ビート主導のシネマティックなリールテンプレートについては、references/ohneis-style.md を参照してください。 16:9 の長尺フォーマットについては、references/website-videos.md を参照してください。


ワークフロー

最初から作成する
# 1. Write scene JSON
# 2. Generate voiceover with word timestamps
node scripts/generate.js \
  --scenes scenes.json \
  --with-timestamps \
  --dictionary your-brand \
  --output-dir public/audio/ad-example/

# 3. Create Remotion composition using actualDuration from info.json
# 4. Render
npx remotion render AdExample out/ad-example.mp4 --codec=h264 --crf=18
URL から作成する(ページ → 動画)
# 1. Extract page data into scene JSON
node scripts/url-to-scenes.js --url https://example.com/page --format reels --output scenes.json
# 2. Review/edit the generated scenes.json
# 3. Continue with voiceover + composition as above

URL から動画を作成するワークフロー全体については、references/url-to-video.md を参照してください。


セーフゾーン(重要)

リール(1080×1920)
┌──────────────────────────┐ 0px
│     TOP DANGER (285px)   │
├──────────────────────────┤
│ ←80px  SAFE AREA  120px→ │
│      880×1235px          │
├──────────────────────────┤
│   BOTTOM DANGER (400px)  │
└──────────────────────────┘ 1920px
const SAFE = { top: 285, bottom: 400, left: 80, right: 120 };
ウェブサイト動画(1920×1080)
const SAFE = { top: 60, bottom: 60, left: 80, right: 80 };

シーン JSON フォーマット

{
  "name": "ad-example",
  "voice": "VoiceName",
  "character": "narrator",
  "dictionary": "your-brand",
  "scenes": [
    { "id": "scene1", "text": "Hook text.", "duration": 3.5, "character": "dramatic" },
    { "id": "scene2", "text": "Problem.", "duration": 4.5 },
    { "id": "scene3", "text": "Solution.", "duration": 4.0, "character": "expert" },
    { "id": "scene4", "text": "CTA.", "duration": 3.0, "character": "calm" }
  ]
}
音声キャラクターのプリセット
キャラクタースタイル安定性類似度スタイルパラメーター
dramatic強烈、感情的0.30.80.7
narratorプロフェッショナル、滑らか0.50.750.4
expert権威ある0.60.850.3
calm穏やか、安心感のある0.70.80.2
conversationalカジュアル、親しみやすい0.450.70.5

コンポジションテンプレート

import { AbsoluteFill, Audio, Series, staticFile } from "remotion";

// Import from your brand-config.md values
const COLORS = { primary: "#000", accent: "#888", dark: "#111", background: "#fff" };

export const AdTemplate: React.FC = () => {
  const { fps } = useVideoConfig();
  // Use actualDuration from info.json, not estimated
  const DURATIONS = { scene1: 3.42, scene2: 4.35, scene3: 4.12, scene4: 3.31 };
  const pad = 5;

  return (
    <AbsoluteFill>
      <Audio src={staticFile("audio/ad-example/ad-example-combined.mp3")} />
      <Series>
        <Series.Sequence durationInFrames={Math.round(DURATIONS.scene1 * fps) + pad}>
          <Scene1Hook />
        </Series.Sequence>
        {/* ... remaining scenes */}
      </Series>
    </AbsoluteFill>
  );
};

再利用可能なシーンコンポーネントについては、references/components.md を参照してください。 TransitionSeries の音声同期については、references/voiceover.md を参照してください。


リファレンスファイル

タスクに応じて、必要なファイルを読み込んでください。

基本(最初に読む)
ファイル読むタイミング
setup.mdプロジェクトの初期化
brand-config-template.mdブランド設定:カラー、フォント、音声、キャプション、コンプライアンス
formats.md寸法仕様、セーフゾーン、クロッププレビュー
動画の作成
ファイル読むタイミング
ohneis-style.mdビート主導のシネマティックなリールテンプレート:異なるフォントを組み合わせたタイポグラフィ、ハードカット、雰囲気のある写真
voiceover.mdElevenLabs TTS、モデル、シーン JSON、タイミング同期、辞書
captions.mdアニメーション付きキャプション:TikTok 風、単語ごとの表示、カラオケ
animations.mdSpring の設定、トランジション、アニメーションコンポーネント
components.md再利用可能なシーンテンプレートのコンポーネント
html-in-canvas.mdライブ DOM を 2D フィルターまたは WebGL2 シェーダー(ビンテージ、段階的なぼかし、ページツアーのモックアップ)を使ってキャンバスにレンダリング
website-videos.md16:9 の長尺フォーマット、6 シーン構成
url-to-video.md既存のウェブページから動画を作成
音声
ファイル読むタイミング
sound-effects.mdElevenLabs による効果音の生成
music.mdElevenLabs または Suno による BGM
アセットと静止画
ファイル読むタイミング
local-assets.md背景画像、アイコン、イラスト
carousels.md4:5 のカルーセルデザインと一括レンダリング
コピーライティング
ファイル読むタイミング
ad-copywriting.mdスクリプトのフレームワーク、フックの公式、CTA のパターン
copy-frameworks.md見出しのテンプレート、セクションの公式
natural-transitions.md人間らしいつなぎ表現、AI らしさを避ける方法
配信
ファイル読むタイミング
paid-ads.mdMeta キャンペーン戦略、ターゲティング、予算
social-content.mdコンテンツカレンダー、再利用のフレームワーク

スクリプト

スクリプト目的
scripts/generate.js辞書、リクエストの結合を含む ElevenLabs のナレーション音声生成(注:--with-timestamps フラグは現在何もしません)
scripts/gemini-tts.mjsGemini TTS — 単一リクエストでの生成と、テキスト比率に基づく境界選択による無音部分の分割
scripts/suno-direct.tsSuno によるBGM生成
scripts/url-to-scenes.jsページコンテンツをシーンの JSON に抽出

アップロード前チェックリスト

リール
  • 1080×1920、H.264、30fps
  • すべてのテキストがセーフゾーン内にある
  • 上部 285px と下部 400px にコンテンツがない
  • フォントサイズが 48px 以上
  • ナレーション音声が同期され、字幕のタイミングが調整されている
  • 全体の長さが約 15 秒
ウェブサイト動画
  • 1920×1080、H.264、30fps
  • フォントサイズが 36px 以上
  • 長さが 60~160 秒
  • 適切な声のキャラクターを用いた 6 シーン構成
カルーセル
  • 1080×1350、PNG
  • 端から 80px の余白
  • スワイプインジケーター付きの 5~10 枚のスライド

コメント