Communitygithub.com

ComeOnOliver/skillshub

创建包含配音、音乐和视觉效果的完整视频。

skillshub 是什么?

该AI技能是一个视频制作编排器,旨在生成完整的视频,包含语音旁白、背景音乐和视觉片段。它整合了多种专业工具:由Claude负责脚本和故事板生成,Gemini TTS提供语音合成,Lyria生成背景音乐,Veo 3.1用于视频片段生成或图片动画,最后通过FFmpeg进行最终合成。用户需要先通过交互式问答明确视频主题、时长、风格、音频策略等关键参数,然后执行初始化脚本创建项目结构。技能支持自定义音频、Veo原生音频或静音三种音频策略,并提供了详细的项目配置文件`project.json`来管理场景、旁白和音乐设置。主要应用于产品展示、讲解、广告、培训等多种视频类型,但需注意单段Veo视频最长8秒的限制。

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

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

视频制作人技能描述

创建包含语音旁白、音乐和视觉效果的完整视频。

这是一个编排器技能,它整合了以下组件:

  • 脚本/故事板生成(Claude)
  • 语音合成(Gemini TTS)
  • 背景音乐(Lyria)
  • 视频片段生成(Veo 3.1)或图片动画
  • 最终合成(FFmpeg,通过 media-utils)

工作流程

第一步:收集需求(必选)

⚠️ 不要跳过此步骤。在获得所有答案之前,不要运行 init_project.py。

使用交互式提问——每次只问一个问题,等待回复后再问下一个。这创建了一个协作式的规格驱动过程。

提问流程

⚠️ 对下列每个问题,请使用 AskUserQuestion 工具。 不要仅仅在你的回复中打印问题——请使用该工具创建交互式提示,并附上选项。

Q1: 主题

"我来制作那个视频!首先——它关于什么?

(例如:产品发布、品牌故事、教程、讲解——或描述你自己的主题)"

等待回复。

Q2: 时长

"视频应该多长?

  • 15秒 (快速吸引)
  • 30秒 (标准广告)
  • 60秒 (讲解)
  • 2分钟以上 (详细)
  • 或者指定你自己的时长"

等待回复。

Q3: 风格

"什么样的视觉风格?

  • 高端/奢华
  • 有趣/俏皮
  • 企业/专业
  • 戏剧化/电影感
  • 简约/干净
  • 或者描述你自己的风格"

等待回复。

Q4: 素材

"你有现有的图片或视频片段可以使用吗?

  • 没有,全部生成
  • 有,我有图片 (提供路径)
  • 有,我有视频片段 (提供路径)"

等待回复。

Q5: 音频策略

"我们应该如何处理音频?

  • 自定义 — 我生成旁白 + 背景音乐
  • Veo原生 — 使用 Veo 内置的对白/音效/环境音
  • 静音 — 无音频,后期添加"

等待回复。

Q6: 语音 (如果选择自定义音频)

"旁白使用什么语音语调?

  • 专业
  • 友好/温暖
  • 充满活力
  • 平静/舒缓
  • 戏剧化
  • 或者描述你自己的语调"

等待回复。

Q7: 音乐 (如果选择自定义音频)

"什么样的音乐氛围?

  • 现代电子
  • 电影/史诗
  • 欢快流行
  • 氛围/轻松
  • 企业风格
  • 或者描述你自己的风格"

等待回复。

Q8: 格式

"什么宽高比?

  • 16:9(YouTube,网页)
  • 9:16(抖音,Reels,Shorts)
  • 1:1(Instagram 信息流)"

等待回复。

Q9: 分辨率

"什么分辨率?

  • 720p(生成更快)
  • 1080p(标准高清)"

等待回复。

Q10: 模型

"使用哪个 Veo 模型?

  • veo-3.1 — 最新,最高质量(默认)
  • veo-3.1-fast — 生成更快,质量略低
  • veo-3 — 上一代
  • veo-3-fast — 上一代,更快"

等待回复。

快速参考

问题决定内容
主题场景内容和提示词
时长场景数量(Veo 片段必须是 4、6 或 8 秒)
风格视觉提示词和音乐选择
素材生成还是使用现有资源
音频自定义、veo_audio 或静音
语音TTS 语音选择
音乐Lyria 提示词
格式Veo 的宽高比
分辨率720p 或 1080p 输出质量
模型veo-3.1、veo-3.1-fast、veo-3、veo-3-fast

第二步:初始化项目

一旦你获得用户的答案,用他们的偏好初始化项目:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-producer-agent/scripts/init_project.py \
  --name "产品发布视频" \
  --duration 30 \
  --aspect-ratio 16:9 \
  --audio-strategy custom \
  --scenes 5

第三步:配置 project.json

根据用户的答案编辑 project.json,填入场景提示词、旁白文本和音乐风格。

第四步:合成视频

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 "我的视频" --duration 30

# 在指定目录创建
python3 init_project.py --name "演示视频" --output ~/Videos/

# 竖版社交视频
python3 init_project.py --name "Instagram Reel" --aspect-ratio 9:16 --duration 15

# 使用 Veo 的原生音频(无自定义旁白/音乐)
python3 init_project.py --name "电影场景" --audio-strategy veo_audio

# 更多场景
python3 init_project.py --name "长视频" --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": "产品与logo在干净背景上,行动号召时刻",
      "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
  }
}

音频策略

策略描述使用场景
custom剥离 Veo 音频,添加自定义旁白和音乐大多数视频
veo_audio保留 Veo 生成的音频(对白、音效)电影场景、对白
silent剥离音频,输出无声视频后期添加音频

工作流程:创建视频

第一步:初始化项目

python3 init_project.py --name "无线耳机促销" --duration 30

第二步:规划故事板

编辑 storyboard.md 来规划你的视频结构:

## 场景 1:主角展示 (0-5s)
- 视觉:耳机从阴影中浮现,高端灯光
- 音频:仅音乐(戏剧性开场)

## 场景 2:音质 (5-12s)
- 视觉:声波,享受音乐的人
- 音频:旁白:"水晶般清晰的声音。沉浸式低音。"

## 场景 3:舒适度 (12-20s)
- 视觉:贴合特写,跑步的人
- 音频:旁白:"全天候舒适。稳固贴合。"

## 场景 4:行动号召 (20-30s)
- 视觉:产品 + logo
- 音频:旁白:"体验不同。" + 音乐增强

第三步:配置 project.json

根据你的故事板填写场景提示词、旁白文本和音乐风格。

第四步:合成

python3 assemble.py --project ~/wireless_earbuds_promo/

第五步:审查与迭代

检查 output/ 中的输出。如果需要调整:

# 使用现有场景重新运行(仅重新混合音频)
python3 assemble.py --project ~/wireless_earbuds_promo/ --skip-generation

你可以创建的内容

类型示例
产品视频30秒产品展示视频
讲解视频操作指南或功能解释
宣传/广告视频营销广告
演示视频产品演示
培训视频内部培训内容
客户评价客户引用风格视频
品牌视频公司/品牌故事

前提条件

  • GOOGLE_API_KEY — 用于 Veo(视频)、Gemini TTS(语音)、Lyria(音乐)
  • 已安装 FFmpeg:brew install ffmpeg

视频风格与音乐搭配

风格音乐提示词语音
高端/奢华"优雅,极简,氛围,精致"Charon(信息型)
科技/现代"电子,未来感,干净,创新"Kore(坚定型)
有趣/俏皮"欢快,愉快,原声,积极"Puck(活泼型)
企业"专业,鼓舞人心,轻管弦乐"Orus(坚定型)
生活方式"轻松,有抱负,独立,温暖"Aoede(轻松型)
戏剧/电影"史诗,管弦乐,情感,渐强"Gacrux(成熟型)

常见视频结构

产品视频 (30s)

0-5s:   主镜头(仅音乐)
5-15s:  功能(旁白 + 音乐)
15-25s: 生活方式/使用场景(旁白 + 音乐)
25-30s: Logo + 行动号召(音乐淡出)

讲解视频 (60s)

0-5s:   吸引/问题陈述
5-20s:  解决方案介绍
20-45s: 工作原理(3个步骤)
45-55s: 优点总结
55-60s: 行动号召

客户评价视频 (45s)

0-5s:   介绍/姓名卡片
5-35s:  评价引用(多场景)
35-45s: 产品镜头 + logo

手动工作流程(不使用脚本)

如果你更愿意手动执行每个步骤:

生成场景:

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 "专业,温暖"

生成音乐:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/music-generation/scripts/lyria.py \
  --prompt "现代电子,高端" \
  --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 作为第一帧动画化
Logo(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秒的产品视频。高端、奢华的感觉。我附上了产品照片。专业男声旁白。现代电子音乐。16:9 格式用于 YouTube。"

带项目:

"初始化一个名为 '应用演示' 的视频项目,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

相关技能