Communitygithub.com

Joho6666/short-video-factory

批量剪辑竖屏促销短视频(抖音/视频号,30 秒左右):实拍素材 + 活动"明白卡" → 按爆款模板自动写文案、剪映 SAMI 配音、选镜头、渲染 60fps 成片、自动质检,一条命令出 N 条内容各不相同的成片。用户说"批量剪视频/复刻爆款/按模板出片/照着这个视频剪 N 条/商场活动短视频/量产短视频"时使用。代码仓库在 E:/short-video-factory(GUI: app.py)。

short-video-factory 是什麼?

short-video-factory is a Claude Code agent skill that 批量剪辑竖屏促销短视频(抖音/视频号,30 秒左右):实拍素材 + 活动"明白卡" → 按爆款模板自动写文案、剪映 SAMI 配音、选镜头、渲染 60fps 成片、自动质检,一条命令出 N 条内容各不相同的成片。用户说"批量剪视频/复刻爆款/按模板出片/照着这个视频剪 N 条/商场活动短视频/量产短视频"时使用。代码仓库在 E:/short-video-factory(GUI: app.py)。.

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Joho6666/short-video-factory/tree/HEAD/skills/short-video-factory

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件


name: short-video-factory description: 批量剪辑竖屏促销短视频(抖音/视频号,30 秒左右):实拍素材 + 活动"明白卡" → 按爆款模板自动写文案、剪映 SAMI 配音、选镜头、渲染 60fps 成片、自动质检,一条命令出 N 条内容各不相同的成片。用户说"批量剪视频/复刻爆款/按模板出片/照着这个视频剪 N 条/商场活动短视频/量产短视频"时使用。代码仓库在 E:/short-video-factory(GUI: app.py)。

Short Video Factory

把"一堆实拍素材 + 一张活动明白卡 + 一条参考爆款"变成几十条内容各不相同、可直接交付的 30 秒竖屏促销片。

仓库:E:/short-video-factory(Python,独立 .venv)。项目数据在单独的项目目录(config.json 的 project),代码里不放任何客户内容。

何时使用

  • 用户要"照着某条爆款剪 N 条"、"批量出片"、"把这些素材剪成促销短视频"
  • 已有项目要继续出片、改文案、改风格、修甲方反馈

硬性规则(违反就会交付事故)

  1. 促销数字只能来自明白卡:写在项目 project.json 的 number_whitelist。文案里出现白名单外的数字,生成器会拒绝——不许为了通过而把数字加进白名单,先问用户。
  2. 禁用词:banned_words(极限词 + 甲方点名不要的词,如"双节")。
  3. 风险素材不用:素材索引里带标记的(儿童/路人正脸、明星肖像、品牌自有折扣牌、拍摄者手指入镜、虚焦、汉堡节等非本档期招牌)。
  4. 配音数字读法:配音文本自动转中文(450团500 → 四百五十团五百),字幕仍显示阿拉伯数字。新增数字时同步补 spoken_numbers。
  5. 不付费:配音用剪映 SAMI(经 jianying-editor skill)、音乐用剪映云端曲库,本机渲染。要用付费配音/生成前先问用户。
  6. 只动项目目录和仓库,原始素材只读。
  7. 看不到画面/听不到声音的结论要说明是"抽帧/转写核对",声音听感让用户判断。

标准流程

cd E:/short-video-factory
.venv/Scripts/python app.py                 # 图形工作台 http://127.0.0.1:7860
# 或命令行:
.venv/Scripts/python svf/batch.py --n 6 --start 601 -j 3 --qc-sample 0.2   # 出 6 条
.venv/Scripts/python svf/batch.py --n 70 --start 900 --dry                   # 只预演文案重复度

产出:<项目>/成片/批次_bXXX-bYYY/(mp4 + 抽帧 + 报告.md + 清单.csv)。每条也会生成剪映草稿(可人工精修后在剪映里导出)。

新项目接入(一次性)

  1. 建项目目录,写 project.json(参考仓库 projects/example/project.json):品牌名、素材源 sources、白名单、禁用词、配音、音乐、博主口播片段。
  2. svf/ingest_mingbaika.py 明白卡.xlsx → 列出明白卡里的数字,和用户确认后写白名单。
  3. svf/ingest_proxy.py → 全部素材转 1080x1920/60fps 预览(HDR 自动色调映射)。
  4. svf/ingest_sheets.py → 联系表;Claude 看联系表给每段素材分类 + 打风险标记,写 数据/素材索引.json(字段:文件/时长/类别/内容/标记/预览)。
  5. svf/ingest_transcribe.py → 博主口播转写,挑可用原声句写进 project.json 的 host_clips。
  6. 参考爆款:逐帧拆解(镜头时长、转场位置、字幕样式、花字),必要时用素材逐帧比对还原对方的剪辑清单;沉淀到 templates/。
  7. 写 数据/文案池.json(每类 5–10 种说法),GUI"文案池"页检查通过后再出片。

五种风格(轮换分配)

S1 信息种草 · S2 博主口播(原声+口型同步加速)· S3 卡点混剪(镜头吸附音乐拍点)· S4 清单体(N 个理由)· S5 美陈氛围(慢节奏)

甲方反馈的处理方式

  • 改措辞 → 改文案池 / 禁用词,不要手改单条脚本(生成器会覆盖)
  • 语速 → project.json 的 batch.speed(每风格)
  • 画面抖/掉帧 → 已默认 60fps + 1.5 倍预放大;仍抖就查该镜头素材本身
  • 字幕断句错 → 把词加进 caption_words(不会被劈开)

经验与坑

见仓库 docs/经验教训.md。最重要的几条:剪映 6.0+ 草稿加密、11.5 无法自动导出;SAMI 会把 500 读成"五零零";整段转写会漏句/重复(要逐句);并行渲染受 CPU 限制;素材 HDR 不做色调映射会发灰。

相關技能