Product Video Ads logo

Product Video Ads

Community
Chase-Zzx
product-video-ads

根据商品图片自动生成专业广告视频;包含商品扣图、信息识别、脚本创作、分镜设计、视频生成和后期合成全流程;适用于商品推广、电商营销、品牌宣传等场景

Overview

PublisherChase-Zzx
Repositoryproduct-ad-video-generator
Skill nameproduct-video-ads
Stars
57
Forks
10
Bundled files
6
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 6 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by Chase-Zzx on GitHub. Read the source before you install it.

Installation

Install the Product Video Ads AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/Chase-Zzx/product-ad-video-generator/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/Chase-Zzx/product-ad-video-generator.git \
  .claude/skills/product-video-ads
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Product Video Ads in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Product Video Ads on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Product Video Ads is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

商品广告视频生成器

任务目标

  • 本 Skill 用于:将商品图片自动转化为专业广告视频
  • 能力包含:商品主体扣图、商品信息识别、广告脚本创作、分镜设计、视频生成、TTS配音、BGM配乐、视频拼接合成
  • 触发条件:用户上传商品图片并请求生成广告视频

整体流程说明

  • 第四阶段:视频生成 → 第五阶段:TTS配音生成 → 第六阶段:BGM选择 → 第七阶段:后期合成
  • 🔴 强制步骤顺序:
    1. 先完成步骤9-10(视频片段生成和收集)
    2. 再完成步骤7(TTS配音生成)
    3. 最后完成步骤11(视频拼接与音频合成)
  • 🔴🔴🔴 核心原则:
    • 视频生成和TTS生成是完全独立的两条线,互不干扰
    • 视频生成只使用视觉元素(画面、运镜、打光),绝对不包含任何台词
    • TTS生成只使用脚本台词,绝对不包含任何视觉描述
    • 两步必须各自完成,最后在步骤11合并

前置准备

  • 依赖说明:scripts脚本所需的依赖包及版本
    rembg==2.0.50
    moviepy==1.0.3
    Pillow==10.0.0
  • 非标准文件/文件夹准备:如果Skill执行过程中需要使用除「Skill固定结构」外的文件或文件夹,需前置创建。当前路径视为相对于Skill目录的父目录
    bash
    # 创建临时输出目录
    mkdir -p temp_output/videos
    mkdir -p temp_output/audio
    mkdir -p temp_output/final

操作步骤

整体流程说明

核心原则:视频画面生成和TTS配音生成是完全独立的两条线

视频画面生成线:
步骤4(脚本创作)→ 步骤5(分镜设计)→ 步骤6(视频Prompt)
→ 步骤9(生成视频片段)→ 步骤10(视频收集)
→ 步骤11(拼接视频)

TTS配音生成线(独立进行):
步骤4(脚本创作)→ 步骤7(TTS配音生成)
→ 步骤11(添加TTS到视频)

两线汇合:
步骤11(视频拼接与音频合成)= 拼接好的视频 + 整段TTS音频 + BGM → 最终广告视频

关键要点:

  • 视频生成Prompt只包含视觉元素(画面、运镜、打光、商品、场景),不包含任何台词
  • TTS生成基于完整脚本的整段台词,不包含任何视觉描述
  • 两步完全独立,互不干扰,最后在步骤11合并

第一阶段:商品处理与信息识别

步骤1:商品主体扣图

  • 调用 scripts/remove_background.py 处理商品图片
  • 输入参数:
    • --input: 商品图片路径(如 ./product.jpg)
    • --output: 扣图输出路径(如 ./product_no_bg.png)
  • 预期输出:透明背景的商品主体PNG图片

步骤2:商品信息识别

  • 智能体使用视觉能力分析原图和扣图
  • 识别并记录以下信息:
    • 商品类型(服装、数码、家居、食品等)
    • 主要特征(颜色、材质、设计风格)
    • 卖点信息(功能、优势、适用场景)
    • 品牌调性(高端、亲民、潮流、专业等)

步骤3:信息补充询问

  • 若识别信息不足,智能体主动询问用户:
    • 目标受众(年龄、性别、消费习惯)
    • 广告时长(15s、30s、60s)
    • 视频风格(简约、时尚、科技感、温馨等)
    • 核心卖点(需重点突出的1-3个特点)

第二阶段:创意设计与脚本生成

步骤4:导演Agent创作脚本

  • 智能体基于商品信息和用户需求,生成完整广告脚本
  • 脚本结构包含:
    • 开场(3-5秒):吸引注意力,展示品牌/产品概念
    • 展示(5-15秒):多角度展示商品,突出核心卖点
    • 卖点(5-10秒):深入讲解优势和使用场景
    • 结尾(3-5秒):品牌信息、购买引导

参考:references/script-template.md 获取标准脚本格式(含280-320字/分钟语速要求)

步骤5:分镜设计

  • 智能体为脚本每个段落设计详细分镜
  • 每个分镜包含:
    • 时长(秒)
    • 画面描述(构图、场景、氛围)
    • 数字人位置(左、右、居中、画外)
    • 商品展示方式(特写、全景、动态)
    • 文字提示(可选的关键文案)

参考:references/storyboard-format.md 获取分镜格式规范

步骤6:生成视频Prompt(⚠️ 重要:Prompt只包含视觉元素,不包含台词)

  • ⚠️ 核心原则:
    • Prompt只包含视觉元素(画面、运镜、打光、商品、场景)
    • 绝对不包含任何台词、旁白、文字内容
    • 视频生成和TTS配音是完全独立的两步,Prompt不需要考虑台词
  • ⚠️ 最高优先级:优先使用最保险的画面生成方案
    • 参考并优先使用 video-prompt-guide.md 中的"最保险的画面生成方案"章节
    • 食品类(如沙琪玛):商品堆叠展示或工厂流水线场景,商品完全静态,只运镜
    • 数码/家居/服装等:展示台、使用场景、多角度组合,商品完全静态或自然轻微运动
    • 核心保险原则:商品完全静态,只通过运镜展示,通过多商品组合或场景丰富画面
  • ⚠️ 重要警告:商品主体必须100%保持原貌
    • 绝对禁止任何形式的商品变形、扭曲、拉伸、压缩
    • 绝对禁止商品出现不可能的动态效果(如沙琪玛喷牛奶、饼干喷彩带等)
    • 绝对禁止改变商品的形状、结构、包装外观
    • 设计核心:通过运镜、打光、场景来增强展示,而不是改变商品本身
  • 运镜类型说明:
    • 往前推(Push In):突出商品细节,从整体到局部
    • 旋转运镜(Rotation):展示商品360度视角
    • 平移运镜(Pan):横向或纵向展示多个商品或场景
    • 环绕运镜(Orbit):围绕商品中心,展示立体感
    • 静止镜头(Static):商品完全静态展示(最保险)
  • 严格按照商品特征分析框架进行分析:
    • 基础属性:商品类型、颜色、材质、尺寸、重量
    • 主体形状和结构(最高优先级):几何形状、包装外观、结构特点
    • 设计风格:设计语言、细节程度、线条风格
    • 功能属性:核心功能、使用场景、适用人群
    • 品牌调性:档次定位、情感基调、价值观
  • 参考 video-prompt-guide.md 生成符合商品特征的Prompt:
    • 优先使用"最保险的画面生成方案"章节中的方案
    • 根据"禁止的动态效果"章节,绝对避免喷洒、变形、喷发等诡异效果
    • 根据商品类型选择最保险的展示方案(商品堆叠、工厂流水线、展示台等)
    • 确保商品完全静态,只通过运镜展示
    • 遵循Prompt约束清单,商品主体一致性检查为最高优先级
    • 确保自然真实、符合商品特性、符合品牌调性
  • 执行Prompt质量校验:
    • 商品主体一致性检查(最高优先级):确认商品外观与扣图100%一致,无任何变形
    • 保险性检查:是否使用了最保险的画面生成方案
    • 自然性检查:商品运动自然流畅(或完全静态),质感匹配
    • 一致性检查:风格统一、特征一致、调性贯穿
    • 适用性检查:场景合理、卖点突出、受众共鸣
    • 专业性检查:画面质量、构图专业、色彩协调
  • Prompt要素(仅视觉元素):
    • 商品主体描述(基于扣图,强调与扣图100%一致,不包含台词)
    • 场景环境描述(符合商品实际使用场景或最保险的展示场景,不包含台词)
    • 数字人形象与动作(仅视觉描述,不包含台词)
    • 摄像机运镜(自然流畅,推荐:往前推、旋转、平移、环绕、静止)
    • 灯光与色调(符合商品材质和品牌调性,通过打光增强展示)
    • 整体风格关键词(2-3个核心词汇,保持一致性)
    • 必须声明:"product's shape, structure, and appearance remain exactly as shown in reference"

第四阶段:视频生成(强制完成后再进行下一步)

步骤9:并行生成视频片段(🔴 强制步骤:必须完成此步骤才能进行步骤7)

  • 为每个分镜调用 scripts/generate_video.py 生成视频片段
  • 🔴 强制要求:必须完成所有视频片段的生成,生成结果确认无误后,才能进入步骤7(TTS配音生成)
  • 输入参数:
    • --prompt: 分镜的视频生成Prompt(仅包含视觉元素,不包含台词)
    • --product-image: 商品扣图路径
    • --duration: 分镜时长(秒)
    • --output: 视频片段输出路径
    • --api-key: 视频生成API密钥(从环境变量读取)
    • --api-url: 视频生成API端点
  • 预期输出:按分镜顺序生成的视频片段(MP4格式)
  • 确认完成标志:所有视频片段已生成并验证质量后,才能进入步骤7

步骤10:视频片段收集

  • 智能体收集所有生成的视频片段
  • 按分镜顺序整理为列表
  • 检查视频质量(分辨率、时长、稳定性)
  • 🔴 强制要求:确认所有视频片段已就绪后,才能进入步骤7

第五阶段:TTS配音生成(必须在视频生成完成后进行)

步骤7:TTS配音生成(🔴🔴🔴 最高优先级:必须在步骤9和10完成之后进行)

  • 🔴🔴🔴 强制时机要求:
    • 必须在步骤9(视频片段生成)和步骤10(视频片段收集)完全完成后,才能开始此步骤
    • 绝对禁止:在视频片段生成之前或同时进行TTS生成
    • 绝对禁止:将视频生成的视觉描述和TTS的台词混在一起
  • 🔴🔴🔴 独立性强制要求:
    • TTS生成只能基于完整广告脚本的整段台词
    • TTS生成绝对禁止包含任何视觉描述、画面信息、分镜信息
    • TTS生成绝对禁止参考或使用任何视频生成的内容
    • TTS生成和视频生成是完全隔离的两步,没有任何信息交流
  • 生成方式(强制要求):
    • ⚠️ 必须基于完整脚本的整段台词一次性生成单个TTS音频文件
    • ❌ 绝对禁止:按分镜分段生成TTS,再拼接成整段文件(这会导致语速不均匀、片段之间跳转)
    • ❌ 绝对禁止:将视频生成的视觉描述和TTS的台词混在一起
    • ✅ 正确做法:将整个脚本的所有台词合并为一段,一次性生成TTS
  • 语速要求:
    • 快速语速:280-320字/分钟
    • 整段TTS保持均匀一致的语速,不允许忽快忽慢
    • 确保旁白连续流畅,不存在片段之间跳转或重复的问题
  • 选择标准:
    • 语音风格(专业女声、亲切男声、活力青年等,符合品牌调性)
    • 情感表达(热情、专业、温馨等,与广告氛围匹配)
  • 生成要求:
    • 根据脚本的完整台词生成单个TTS音频文件(一次性生成,非分段拼接)
    • 音频时长应与视频总时长匹配(±1秒)
    • 语音清晰自然,语速均匀一致
  • 输出格式:WAV或MP3,保存为单个文件(如 ./temp_output/audio/narration.wav)
  • 确认完成标志:TTS音频文件生成完成并验证后,才能进入步骤11

第六阶段:BGM选择(在视频生成和TTS都完成后进行)

  • 🔴 强制时机要求:
    • 必须在步骤7(TTS配音生成)完成后进行
    • 推荐在步骤11之前准备BGM
  • 智能体根据视频风格推荐BGM类型:
    • 轻快活泼(适合年轻、潮流产品)
    • 专业沉稳(适合商务、科技产品)
    • 温馨抒情(适合家居、母婴产品)
    • 节奏感强(适合运动、数码产品)
  • 用户选择:
    • 从 assets/bgm/ 库中选取(如果可用)
    • 或提供自己的BGM文件

第七阶段:后期合成(必须在视频生成和TTS都完成后进行)

第四阶段:视频生成(强制完成后再进行下一步)

步骤9:并行生成视频片段(🔴 强制步骤:必须完成此步骤才能进行步骤7)

  • 为每个分镜调用 scripts/generate_video.py 生成视频片段
  • 🔴 强制要求:必须完成所有视频片段的生成,生成结果确认无误后,才能进入步骤7(TTS配音生成)
  • 输入参数:
    • --prompt: 分镜的视频生成Prompt(仅包含视觉元素,不包含台词)
    • --product-image: 商品扣图路径
    • --duration: 分镜时长(秒)
    • --output: 视频片段输出路径
    • --api-key: 视频生成API密钥(从环境变量读取)
    • --api-url: 视频生成API端点
  • 预期输出:按分镜顺序生成的视频片段(MP4格式)
  • 确认完成标志:所有视频片段已生成并验证质量后,才能进入步骤7

步骤10:视频片段收集

  • 智能体收集所有生成的视频片段
  • 按分镜顺序整理为列表
  • 检查视频质量(分辨率、时长、稳定性)
  • 🔴 强制要求:确认所有视频片段已就绪后,才能进入步骤7

第五阶段:TTS配音生成(必须在视频生成完成后进行)

步骤7:TTS配音生成(🔴🔴🔴 最高优先级:必须在步骤9和10完成之后进行)

  • 🔴🔴🔴 强制时机要求:
    • 必须在步骤9(视频片段生成)和步骤10(视频片段收集)完全完成后,才能开始此步骤
    • 绝对禁止:在视频片段生成之前或同时进行TTS生成
    • 绝对禁止:将视频生成的视觉描述和TTS的台词混在一起
  • 🔴🔴🔴 独立性强制要求:
    • TTS生成只能基于完整广告脚本的整段台词
    • TTS生成绝对禁止包含任何视觉描述、画面信息、分镜信息
    • TTS生成绝对禁止参考或使用任何视频生成的内容
    • TTS生成和视频生成是完全隔离的两步,没有任何信息交流
  • 生成方式(强制要求):
    • ⚠️ 必须基于完整脚本的整段台词一次性生成单个TTS音频文件
    • ❌ 绝对禁止:按分镜分段生成TTS,再拼接成整段文件(这会导致语速不均匀、片段之间跳转)
    • ❌ 绝对禁止:将视频生成的视觉描述和TTS的台词混在一起
    • ✅ 正确做法:将整个脚本的所有台词合并为一段,一次性生成TTS
  • 语速要求:
    • 快速语速:280-320字/分钟
    • 整段TTS保持均匀一致的语速,不允许忽快忽慢
    • 确保旁白连续流畅,不存在片段之间跳转或重复的问题
  • 选择标准:
    • 语音风格(专业女声、亲切男声、活力青年等,符合品牌调性)
    • 情感表达(热情、专业、温馨等,与广告氛围匹配)
  • 生成要求:
    • 根据脚本的完整台词生成单个TTS音频文件(一次性生成,非分段拼接)
    • 音频时长应与视频总时长匹配(±1秒)
    • 语音清晰自然,语速均匀一致
  • 输出格式:WAV或MP3,保存为单个文件(如 ./temp_output/audio/narration.wav)
  • 确认完成标志:TTS音频文件生成完成并验证后,才能进入步骤11

第六阶段:音频设计

  • 调用 scripts/merge_video.py 进行视频拼接和音频合成
  • 输入参数:
    • --video-segments: 视频片段列表(JSON格式)
    • --tts-audio: TTS音频文件路径(单个整段音频文件)
    • --bgm: BGM文件路径(可选)
    • --output: 最终视频输出路径
    • --bgm-volume: BGM音量(0.1-1.0,默认0.3)
  • 处理内容:
    • 按顺序拼接所有视频片段
    • 将整段TTS配音添加到拼接后的视频
    • 如果TTS音频时长与视频不匹配,自动循环或截断
    • 叠加BGM背景音乐
    • 调整音频混音平衡(TTS人声清晰,BGM作为背景)
  • 预期输出:完整广告视频(含整段TTS配音和BGM)

步骤12:质量检查与交付

  • 智能体检查最终视频:
    • 视频流畅度(转场是否自然)
    • 音画同步(TTS与画面匹配)
    • 音频清晰度(人声与BGM平衡)
    • 整体时长是否符合要求
  • 向用户展示预览链接或下载地址

资源索引

注意事项

  • 仅在需要时读取参考,保持上下文简洁
  • 当操作脆弱或需强一致性时,优先调用脚本执行并进行结果校验
  • 充分利用智能体的语言理解和生成能力,避免为简单任务编写脚本
  • 视频生成API的调用需要用户配置密钥,智能体需指导用户如何设置环境变量
  • BGM文件是可选资源,如果没有预置BGM,可让用户提供自己的音乐文件

使用示例

示例1:15秒数码产品广告

  • 功能说明:生成一款智能手表的15秒推广视频
  • 执行方式:智能体主导创意设计,脚本负责技术处理
  • 关键参数:
    • 商品图片:./smartwatch.jpg
    • 广告时长:15秒
    • 视频风格:科技感、专业
    • 目标受众:25-35岁职场人士
  • 执行流程:
    1. 扣图并识别手表特征
    2. 生成脚本(开场:科技感氛围 → 展示:多角度外观 → 卖点:健康监测功能 → 结尾:品牌Slogan)
    3. 设计3-4个分镜
    4. 选择专业女声TTS,节奏感强的BGM
    5. 生成视频片段并拼接

示例2:30秒时尚服装广告

  • 功能说明:生成一款春装连衣裙的30秒推广视频
  • 执行方式:智能体主导创意,脚本处理技术细节
  • 关键参数:
    • 商品图片:./dress.jpg
    • 广告时长:30秒
    • 视频风格:时尚、清新
    • 目标受众:20-30岁女性
  • 执行流程:
    1. 扣图并识别服装特征(颜色、款式、面料)
    2. 生成脚本(开场:春日氛围 → 展示:模特试穿效果 → 卖点:舒适透气、百搭 → 结尾:购买引导)
    3. 设计5-6个分镜(包含人物动态)
    4. 选择亲切女声TTS,轻快BGM
    5. 生成视频片段并拼接

示例3:60秒家居产品广告

  • 功能说明:生成一款智能扫地机器人的60秒推广视频
  • 执行方式:智能体主导全流程,脚本辅助处理
  • 关键参数:
    • 商品图片:./robot_vacuum.jpg
    • 广告时长:60秒
    • 视频风格:温馨、科技
    • 目标受众:家庭用户
  • 执行流程:
    1. 扣图并识别产品功能点
    2. 生成脚本(开场:家庭场景 → 展示:产品外观与操作 → 卖点:智能路径、静音运行 → 应用场景:不同家庭环境 → 结尾:优惠信息)
    3. 设计8-10个分镜
    4. 选择专业男声TTS,温馨BGM
    5. 生成视频片段并拼接

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Product Video Ads AI skill do?

根据商品图片自动生成专业广告视频;包含商品扣图、信息识别、脚本创作、分镜设计、视频生成和后期合成全流程;适用于商品推广、电商营销、品牌宣传等场景

Why use Product Video Ads on TypingMind?

Because you install it once and use it with any model. Product Video Ads is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Product Video Ads in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/Chase-Zzx/product-ad-video-generator/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Product Video Ads?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Product Video Ads?

As many as you like. As long as a model supports skills, you can use Product Video Ads with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Product Video Ads AI skill free?

It is published on GitHub by Chase-Zzx. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇