Communitygithub.com

ビデオプロデューサー

ナレーション、音楽、映像を組み合わせて完全な動画を作成します。

ビデオプロデューサー とは?

このスキルは、スクリプト/ストーリーボード生成(Claude)、音声合成(Gemini TTS)、背景音楽生成(Lyria)、映像クリップ生成(Veo 3.1)または画像アニメーション、そして最終アセンブリ(FFmpeg経由のmedia-utils)を統合したオーケストレータースキルです。ユーザーはインタラクティブな質問に答えることで、映像の主題、長さ、スタイル、アスペクト比、解像度、音声戦略などを指定でき、スキルが自動的にプロジェクトを構成して動画を生成します。このスキルは、製品プロモーション、説明動画、トレーニング資料など、様々なタイプの動画制作に利用でき、Google CloudのAPI(Veo、Gemini TTS、Lyria)とFFmpegを必要とします。ワークフローは主に、要件の収集、プロジェクトの初期化、`project.json`の設定、アセンブル実行の4ステップで構成されています。

対応✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/ComeOnOliver/skillshub/tree/main/skills/michaelboeding/skills/video-producer-agent

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

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

ドキュメント

ビデオプロデューサー は何をしますか?

ナレーション、音楽、映像を組み合わせて完全な動画を作成します。

これはオーケストレータースキルです。以下の機能を組み合わせます。

  • スクリプト/ストーリーボード生成 (Claude)
  • 音声合成 (Gemini TTS)
  • 背景音楽 (Lyria)
  • 映像クリップ生成 (Veo 3.1) または画像アニメーション
  • 最終アセンブリ (FFmpeg 経由の media-utils)

ワークフロー

ステップ 1: 要件の収集 (必須)

⚠️ このステップはスキップしないでください。すべての回答が得られるまで init_project.py を実行しないでください。

インタラクティブな質問を使用 — 一度に1つの質問をし、応答を待ってから次の質問をします。これにより、協調的な仕様駆動のプロセスが実現します。

質問フロー

⚠️ 以下の各質問には AskUserQuestion ツールを使用してください。 応答内に質問を印刷するだけではなく、ツールを使用して表示されているオプション付きのインタラクティブなプロンプトを作成してください。

Q1: 主題

「動画を作成します!まず、何についての動画ですか?

(例: 製品ローンチ、ブランドストーリー、チュートリアル、説明動画 — または自分で説明してください)」

応答を待ちます。

Q2: 長さ

「動画の長さはどのくらいにしますか?

  • 15秒 (短いフック)
  • 30秒 (標準的な広告)
  • 60秒 (説明動画)
  • 2分以上 (詳細)
  • または自分で長さを指定してください」

応答を待ちます。

Q3: スタイル

「どのようなビジュアルスタイルにしますか?

  • プレミアム/高級感
  • 楽しい/遊び心
  • コーポレート/プロフェッショナル
  • ドラマチック/シネマティック
  • ミニマル/クリーン
  • または自分でスタイルを説明してください」

応答を待ちます。

Q4: アセット

「使用する既存の画像や映像クリップはありますか?

  • いいえ、全て生成します
  • はい、画像があります (パスを指定してください)
  • はい、映像クリップがあります (パスを指定してください)」

応答を待ちます。

Q5: 音声戦略

「音声はどのように処理しますか?

  • カスタム — ナレーション + 背景音楽を生成
  • Veoネイティブ — Veoの組み込みダイアログ/効果音/環境音を使用
  • 無音 — 音声なし、後で追加」

応答を待ちます。

Q6: 声 (カスタム音声の場合)

「ナレーションの声のトーンは?

  • プロフェッショナル
  • フレンドリー/温かみ
  • エネルギッシュ
  • 落ち着いた/心地よい
  • ドラマチック
  • または自分でトーンを説明してください」

応答を待ちます。

Q7: 音楽 (カスタム音声の場合)

「音楽の雰囲気は?

  • モダンエレクトロニック
  • シネマティック/壮大
  • アップビートポップ
  • アンビエント/チル
  • コーポレート
  • または自分でスタイルを説明してください」

応答を待ちます。

Q8: フォーマット

アスペクト比は?

  • 16:9 (YouTube、Web)
  • 9:16 (TikTok、Reels、Shorts)
  • 1:1 (Instagramフィード)」

応答を待ちます。

Q9: 解像度

解像度は?

  • 720p (より高速な生成)
  • 1080p (標準HD)」

応答を待ちます。

Q10: モデル

どの Veoモデル を使用しますか?

  • veo-3.1 — 最新、最高品質 (デフォルト)
  • veo-3.1-fast — より高速な生成、やや低品質
  • veo-3 — 旧世代
  • veo-3-fast — 旧世代、より高速」

応答を待ちます。

クイックリファレンス

質問決定事項
主題シーンの内容とプロンプト
長さシーン数 (Veoクリップは4、6、または8秒である必要があります)
スタイルビジュアルプロンプトと音楽選択
アセット生成するか既存を使用するか
音声custom、veo_audio、またはsilent
声TTSの声の選択
音楽Lyriaプロンプト
フォーマットVeoのアスペクト比
解像度720pまたは1080pの出力品質
モデルveo-3.1、veo-3.1-fast、veo-3、veo-3-fast

ステップ 2: プロジェクトの初期化

ユーザーから回答を得たら、その設定でプロジェクトを初期化します。

python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-producer-agent/scripts/init_project.py \
  --name "製品ローンチ動画" \
  --duration 30 \
  --aspect-ratio 16:9 \
  --audio-strategy custom \
  --scenes 5

ステップ 3: project.json の設定

ユーザーの回答に基づいて、project.json のシーンプロンプト、ナレーションテキスト、音楽スタイルを編集します。

ステップ 4: 動画のアセンブル

python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-producer-agent/scripts/assemble.py \
  --project ~/my_video_project/

プロジェクト構造

プロジェクトを初期化すると、以下のフォルダ構造が作成されます。

my_project/
├── project.json          # 設定: シーン、ナレーション、音楽、その他設定
├── storyboard.md         # 動画の計画ドキュメント
├── scenes/               # Veoで生成された映像クリップ
│   ├── scene1_intro.mp4
│   ├── scene2_features.mp4
│   └── scene3_cta.mp4
├── audio/                # 音声アセット
│   ├── voiceover.wav     # 生成されたナレーション
│   ├── background_music.wav  # 生成された音楽
│   └── final_mix.mp3     # ミックスされた音声トラック
├── work/                 # 中間ファイル (自動生成)
│   ├── silent_scene1.mp4
│   ├── video_concatenated.mp4
│   └── ...
└── output/               # 最終成果物
    └── product_launch_video_final.mp4

スクリプト

init_project.py

新しい動画プロジェクトをフォルダ構造とテンプレートで初期化します。

# 基本プロジェクト
python3 init_project.py --name "My Video" --duration 30

# 特定のディレクトリに作成
python3 init_project.py --name "Demo Video" --output ~/Videos/

# ソーシャル向け縦型動画
python3 init_project.py --name "Instagram Reel" --aspect-ratio 9:16 --duration 15

# Veoのネイティブ音声を使用 (カスタムナレーション/音楽なし)
python3 init_project.py --name "Cinematic Scene" --audio-strategy veo_audio

# より多くのシーン
python3 init_project.py --name "Long Video" --duration 60 --scenes 5

オプション:

オプションデフォルト説明
--name必須プロジェクト名
--outputカレントディレクトリ親ディレクトリ
--duration30目標時間(秒)
--aspect-ratio16:916:9, 9:16, 1:1, 4:3
--audio-strategycustomcustom, veo_audio, silent
--scenes3シーンプレースホルダーの数

assemble.py

動画アセンブリパイプライン全体を調整します。

# フルパイプライン (全て生成 + アセンブル)
python3 assemble.py --project ~/my_project/

# 生成をスキップ (既存のシーン/音声ファイルを使用)
python3 assemble.py --project ~/my_project/ --skip-generation

# ドライラン (実行内容を表示)
python3 assemble.py --project ~/my_project/ --dry-run

パイプラインのステップ:

  1. ビデオシーンを生成 (Veo 3.1)
  2. シーンから音声を除去 (カスタム音声の場合)
  3. ナレーションを生成 (Gemini TTS)
  4. 背景音楽を生成 (Lyria)
  5. ナレーションと音楽をミックス
  6. ビデオクリップを連結
  7. 音声とビデオをマージ
  8. 最終動画を出力

project.json 設定

{
  "name": "製品ローンチ動画",
  "duration_target": 30,
  "aspect_ratio": "16:9",
  "resolution": "720p",
  "audio_strategy": "custom",
  
  "scenes": [
    {
      "id": 1,
      "name": "scene1_hero",
      "prompt": "プレミアム製品へのシネマティックなスローズーム、ドラマチックな照明、ハイエンドコマーシャルスタイル",
      "duration": 6,
      "notes": "音楽のみ、ナレーションなし"
    },
    {
      "id": 2,
      "name": "scene2_features",
      "prompt": "製品機能のデモンストレーション、洗練されたアニメーション、モダンテクノロジー美学",
      "duration": 8,
      "notes": "ここからナレーション開始"
    },
    {
      "id": 3,
      "name": "scene3_cta",
      "prompt": "クリーンな背景にロゴと製品、行動喚起の瞬間",
      "duration": 6,
      "notes": "音楽が盛り上がり、ナレーション終了"
    }
  ],
  
  "voiceover": {
    "enabled": true,
    "text": "オーディオの未来をご紹介します。クリスタルクリアなサウンド。一日中快適な装着感。その違いを体験してください。",
    "voice": "Charon",
    "style": "プロフェッショナル、自信に満ちた、プレミアムブランドの声"
  },
  
  "music": {
    "enabled": true,
    "prompt": "モダンエレクトロニック、プレミアム、洗練された、製品ショーケース、控えめなベース",
    "duration": 35,
    "bpm": 100,
    "brightness": 0.6
  },
  
  "assembly": {
    "transition": "fade",
    "transition_duration": 0.5,
    "music_volume": 0.3,
    "fade_in": 1.0,
    "fade_out": 2.0
  }
}

音声戦略

戦略説明使用するケース
customVeoの音声を除去し、カスタムナレーション+音楽を追加ほとんどの動画
veo_audioVeoで生成された音声(ダイアログ、効果音)を維持シネマティックシーン、ダイアログ
silent音声を除去し、無音の動画を出力後で音声を追加する場合

ワークフロー: 動画の作成

ステップ 1: プロジェクトの初期化

python3 init_project.py --name "ワイヤレスイヤホンプロモ" --duration 30

ステップ 2: ストーリーボードの計画

storyboard.md を編集して動画構造を計画します。

## シーン 1: ヒーロー公開 (0-5秒)
- 映像: 影から現れるイヤホン、プレミアム照明
- 音声: 音楽のみ (ドラマチックなイントロ)

## シーン 2: 音質 (5-12秒)
- 映像: 音波、音楽を楽しむ人
- 音声: ナレーション: 「クリスタルクリアなサウンド。没入感のある低音。」

## シーン 3: 快適性 (12-20秒)
- 映像: フィット感のクローズアップ、ランニングする人
- 音声: ナレーション: 「一日中快適。しっかりフィット。」

## シーン 4: CTA (20-30秒)
- 映像: 製品 + ロゴ
- 音声: ナレーション: 「違いを体験してください。」+ 音楽が盛り上がる

ステップ 3: project.json の設定

ストーリーボードに基づいて、シーンプロンプト、ナレーションテキスト、音楽スタイルを入力します。

ステップ 4: アセンブル

python3 assemble.py --project ~/wireless_earbuds_promo/

ステップ 5: 確認と反復

output/ 内の出力を確認します。調整が必要な場合:

# 既存のシーンで再実行 (音声のみ再ミックス)
python3 assemble.py --project ~/wireless_earbuds_promo/ --skip-generation

作成できるもの

タイプ例
製品動画製品を紹介する30秒のヒーロー動画
説明動画使い方や機能の説明
プロモーション/広告動画マーケティング広告
デモ動画製品デモンストレーション
トレーニング動画社内トレーニングコンテンツ
お客様の声カスタマーレビュースタイルの動画
ブランド動画会社/ブランドのストーリー

前提条件

  • GOOGLE_API_KEY - Veo(動画)、Gemini TTS(音声)、Lyria(音楽)用
  • FFmpeg がインストールされていること: brew install ffmpeg

動画スタイルと音楽の組み合わせ

スタイル音楽プロンプト声
プレミアム/高級感"elegant, minimal, ambient, sophisticated"Charon (情報提供)
テクノロジー/モダン"electronic, futuristic, clean, innovative"Kore (しっかり)
楽しい/遊び心"upbeat, cheerful, acoustic, positive"Puck (明るい)
コーポレート"professional, inspiring, orchestral lite"Orus (しっかり)
ライフスタイル"chill, aspirational, indie, warm"Aoede (さわやか)
ドラマチック/シネマティック"epic, orchestral, emotional, building"Gacrux (成熟)

一般的な動画構成

製品動画 (30秒)

0-5秒:   ヒーローショット (音楽のみ)
5-15秒:  機能 (ナレーション + 音楽)
15-25秒: ライフスタイル/使用例 (ナレーション + 音楽)
25-30秒: ロゴ + CTA (音楽フェードアウト)

説明動画 (60秒)

0-5秒:   フック/問題提起
5-20秒:  ソリューションの紹介
20-45秒: 仕組み (3ステップ)
45-55秒: メリットのまとめ
55-60秒: CTA

お客様の声動画 (45秒)

0-5秒:   イントロ/名前カード
5-35秒:  お客様の声 (複数シーン)
35-45秒: 製品ショット + ロゴ

手動ワークフロー (スクリプトなし)

各ステップを手動で実行する場合:

シーンを生成:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
  --batch scenes.json

ナレーションを生成:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/voice-generation/scripts/gemini_tts.py \
  --text "ナレーションテキスト..." \
  --voice Charon \
  --style "Professional, warm"

音楽を生成:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/music-generation/scripts/lyria.py \
  --prompt "modern electronic, premium" \
  --duration 35

クリップから音声を除去:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_strip_audio.py \
  -i scene*.mp4

ビデオを連結:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_concat.py \
  -i silent_*.mp4 --transition fade -o video.mp4

音声をミックス:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/audio_mix.py \
  --voice voiceover.wav --music music.wav -o audio.mp3

音声 + ビデオをマージ:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_audio_merge.py \
  --video video.mp4 --audio audio.mp3 -o final.mp4

提供できる入力ファイル

ファイルタイプ使用方法
製品画像Veoで最初のフレームとしてアニメーション化
ロゴ (PNG)最終シーンにオーバーレイ
既存のナレーションaudio/voiceover.wav に配置
ブランド音楽audio/background_music.wav に配置
ビデオクリップscenes/ フォルダに配置
スクリプト/コピーナレーションテキストとして使用

制限事項

  • Veo 動画時間: クリップあたり最大8秒 (より長い場合は連結)
  • Veo 3.1 には音声が含まれます: 全てのクリップに生成された音声があります (カスタムを使用する場合は除去)
  • 処理時間: 映像生成はクリップあたり1〜3分
  • 解像度: 現在は720pまたは1080p (1080pは8秒のみ)

エラーハンドリング

エラー解決策
"GOOGLE_API_KEY not set"READMEに従ってAPIキーを設定
"FFmpeg not found"インストール: brew install ffmpeg
"project.json not found"最初に init_project.py を実行
ビデオ生成のタイムアウト再試行するか、より短い時間を使用
音声/動画の同期の問題シーン時間を調整

プロンプト例

シンプル:

"新しいコーヒーメーカーの30秒製品動画を作成してください"

詳細:

"新しいワイヤレスイヤホンの45秒製品動画を作成してください。プレミアムで高級感のある雰囲気で。製品写真を添付します。プロフェッショナルな男性のナレーション。モダンエレクトロニック音楽。YouTube用に16:9で。"

プロジェクト指定:

"「App Demo」という動画プロジェクトを初期化してください。5シーン、合計60秒、TikTok用の縦型フォーマットで"

Individual skills in this repo

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

ComeOnOliver/skillshub

Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to build a presentation, convert a PPT/PPTX to web, or create slides for a talk/pitch. Helps non-designers discover their aesthetic through visual exploration rather than abstract choices.

ComeOnOliver/skillshub

Next.js 16+ 和 Turbopack — 增量打包、文件系统缓存、开发速度,以及何时使用 Turbopack 与 webpack。

ComeOnOliver/skillshub

SwiftUI architecture patterns, state management with @Observable, view composition, navigation, performance optimization, and modern iOS/macOS UI best practices.

ComeOnOliver/skillshub

See, Understand, Act on video and audio. See- ingest from local files, URLs, RTSP/live feeds, or live record desktop; return realtime context and playable stream links. Understand- extract frames, build visual/semantic/temporal indexes, and search moments with timestamps and auto-clips. Act- transcode and normalize (codec, fps, resolution, aspect ratio), perform timeline edits (subtitles, text/image overlays, branding, audio overlays, dubbing, translation), generate media assets (image, audio, video), and create real time alerts for events from live streams or desktop capture.

ComeOnOliver/skillshub

AI-assisted video editing workflows for cutting, structuring, and augmenting real footage. Covers the full pipeline from raw capture through FFmpeg, Remotion, ElevenLabs, fal.ai, and final polish in Descript or CapCut. Use when the user wants to edit video, cut footage, create vlogs, or build video content.

ComeOnOliver/skillshub

Next.js 15 애플리케이션을 위한 프론트엔드 개발 가이드라인. React 19, TypeScript, Shadcn/ui, Tailwind CSS를 사용한 모던 패턴. Server Components, Client Components, App Router, 파일 구조, Shadcn/ui 컴포넌트, 성능 최적화, TypeScript 모범 사례 포함. 컴포넌트, 페이지, 기능 생성, 데이터 페칭, 스타일링, 라우팅, 프론트엔드 코드 작업 시 사용.

ComeOnOliver/skillshub

Provides Tamagui patterns for config v4, compiler optimization, styled context, and cross-platform styling. Must use when working with Tamagui projects (tamagui.config.ts, @tamagui imports).

ComeOnOliver/skillshub

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.

ComeOnOliver/skillshub

Create high-converting, visually distinctive landing pages. Use when building marketing pages, product launches, SaaS homepages, or any single-page conversion-focused website. Guides section-by-section composition with anti-AI-slop principles.

ComeOnOliver/skillshub

Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.

ComeOnOliver/skillshub

Next.js development tooling via MCP. Inspect routes, components, build info, and debug Next.js apps. Use when working on Next.js applications, debugging routing, or inspecting app structure. NOT for general React or non-Next.js projects.

ComeOnOliver/skillshub

Implement UI using Shadcn MCP (atoms/theme) and 21st.dev MCP (complex sections). Use when adding buttons, layouts, or generating landing pages.

ComeOnOliver/skillshub

A conceptual skill for building an API client in Next.js that handles JWT tokens

ComeOnOliver/skillshub

Best practices and patterns for Next.js App Router, Server Actions, and Routing in this project.

ComeOnOliver/skillshub

The Design System, Theme, and UX rules for the Physical AI Hub.

ComeOnOliver/skillshub

Comprehensive frontend development skill for building modern, performant web applications using ReactJS, NextJS, TypeScript, Tailwind CSS. Includes component scaffolding, performance optimization, bundle analysis, and UI best practices. Use when developing frontend features, optimizing performance, implementing UI/UX designs, managing state, or reviewing frontend code.

ComeOnOliver/skillshub

This document captures learnings from fixing keyboard navigation issues when floating components (Select, DropdownMenu, Popover) have CSS open/close animations.

ComeOnOliver/skillshub

Build Next.js 16 applications with correct patterns and distinctive design. Use when creating pages, layouts, dynamic routes, upgrading from Next.js 15, or implementing proxy.ts. Covers breaking changes (async params/searchParams, Turbopack, cacheComponents) and frontend aesthetics. NOT when building non-React or backend-only applications.

ComeOnOliver/skillshub

Comprehensive Framer Motion animation library for React. Covers motion components, variants, gestures, page transitions, and scroll animations. Use when adding animations to React/Next.js applications.

ComeOnOliver/skillshub

Build interfaces that resonate, not just render. This skill enforces bold, intentional

関連スキル