Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Interflow Copy

一个 Claude Agent Skill:把中文文案做成电影感竖屏 explainer 视频

核心主张:字幕负责「说」,主画面负责「演」。

多数自动出片工具把同一句话在字幕和画面上写两遍——观众看到的是复读,不是信息。这套的每一帧主画面都是抽象图解 / 动效演绎 + 一个记忆锚点,观众记住的是画面里的动作(进度条断裂、柱子被压下来、✗✗✗→✓),不是又读了一遍字幕。

安装

git clone https://github.com/derek-zhuolin/interflow-copy ~/.claude/skills/interflow-copy
pip install edge-tts        # 免费配音(微软神经语音,原生词级时间戳)

Claude Code 会自动发现。说「把这篇稿子做成视频」即触发。

触发后第一件事是问你文案怎么处理1. 原封不动(默认)/ 2. 允许改写。 默认不动你的字——措辞是你想过的,「优化」不可逆。想让它重排叙事就选 2。

依赖hyperframes + faceless-explainer skill(渲染管线)、ffmpeg

两层资产

是什么 数量
镜头配方卡 「这一帧长什么样、怎么拍」的成片指令 30 张(覆盖 387 个案例素材的镜头形式)
动效图谱 底层动效原语 + 网页→视频转译原则 30 类

每张卡的结构(参考 video-shotcraft 的卡片规格):

一句话 / 适用 / 时长 / 能量
├ 意图        —— 为什么这么拍
├ 动效核心    —— 关键动作与层级
├ 参数表      —— 典型值 + 调节手感(超了会怎样)
├ 已知坑      —— 踩过的具体坑
└ 参考实现    —— 可直接抄的 GSAP

选卡从 references/shots-index.md 按内容语义查表:

这一帧在讲… 用哪张卡
一个数字是主角 stat-counter-landing
趋势/对比/构成 chart-draw-reveal
停止/中断/卡住 progress-rail-break
允许试错 attempt-grid-win
A vs B 对照 compare-split-book
金句/留白/喘息 testimonial-quote-hold
…(共 30 张) 见索引

六条硬规则

  1. 主画面演意思,不复述字幕 — PPT 感的真正来源
  2. 中文字重不走极细 — 「越大越细」只对拉丁成立;中文巨字 700、主字 500、数字永远 800
  3. 构图不许重样 — 一支片至少 6 种形态(无卡巨字 / 散落卡 / 尺度纵深 / 点名大字 / 宫格 / 面板 / 形变 / 滚动带…)
  4. 连续画布 + 真视差 — 背景走全局函数取窗且位移放大 2.5 倍,前景静止;背景 blur 18–20px 留住边缘
  5. 阻尼动效 + 落位后永不静止 + 落位前完全不可见back.out 过冲 + ±5px 呼吸;不用「露出一半」的预备位
  6. 运镜只在转折点用 — 全片 ≤2 次真运镜,其余给元素;转场以硬切为主

节奏纪律

对标同类成片的结论(references/rhythm-and-camera.md):

  • 3–5 秒一个视觉。一帧 6–8 秒观众第 3 秒就看完了。55s 的片子 ≈ 12 拍,不是 8 帧。
  • 并列段落用副歌:同一形式在不相邻位置重复(如三次「点名大字」),是结构不是重样。
  • 转场 cut 占比 ≥40%,强转场只留给转折帧。

配音三档

用在哪 词级时间戳 成本
0 · Edge 免费声 默认、调试 ✅ 原生词级 免费无 key
1 · 火山声音复刻 用「我的声音」正式交付 ✅ 短句级 走自己的额度
2 · 本地 TTS + whisper 完全离线 ✅ 事后对齐 免费
python3 assets/scripts/edge_tts_audiometa.py --script ./SCRIPT.md --out-dir . --voice zh-CN-YunxiNeural

关键:脚本里显式请求了 boundary='WordBoundary'。中文音色默认只发整句边界, 显式请求才按词切分(国内/的/赛道/我/停/了)——词级动效靠这个粒度

停顿别靠语速--rate '+8%' 赶出来的不是抑扬顿挫,是急。要停顿就把长句拆成短句, 句号处 TTS 会真停 ~0.5s。档位细节见 references/voice.md

中文字幕必须重组

管线自带的分组对中文过密(142 词 → 68 组 ≈ 2 词一组,字幕在闪)。 merge_captions.mjs 按「停顿即语义边界」重建,断点落在每个逗号句号上:

cp assets/scripts/merge_captions.mjs . && node merge_captions.mjs   # 68 → 21 组

目录

SKILL.md                      入口:Step 0 文案模式 + 8 步工作流 + 六条硬规则 + 自查
references/
  rhythm-and-camera.md        节奏 / 构图形态 / 转场 / 运镜纪律
  voice.md                    声音三档 + 环境配置 + 中文字幕重组
  shots-index.md              镜头卡索引(按语义选卡)
  shots/*.md                  30 张镜头配方卡
  motion-atlas.md             动效原语图谱 + 网页→视频转译原则
  figure-not-caption.md       「图解不复述」方法论
  design-system.md            设计 token / 字阶纪律 / 玻璃配方 / 命令速查
  continuity.md               连续画布的数学
  pitfalls.md                 踩过的坑(含建帧结构三条铁律)
assets/
  frame-template.html         帧骨架模板(含 <template> 壳与作用域)
  build-frames.template.mjs   建帧器骨架(帧数 ≥6 时用,设计系统单一事实源)
  scripts/
    edge_tts_audiometa.py     免费配音 → audio_meta.json
    merge_captions.mjs        中文字幕重组(中文出片必跑)
    compute_continuity.py     连续性参数计算器
    extract_motion_index.py   动效索引提取器(换素材库时重跑)

致谢

镜头卡的组织规格参考了 Vincentwei1021/video-shotcraft—— 一个非常好的电影感产品视频 skill,它的「配方卡 + 参数表 + 已知坑」结构值得学。 本项目面向的是中文口播 explainer(竖屏、语义图解、字幕驱动),场景不同,卡内容为自行编写。

隐私

本仓库不含任何密钥、个人路径或私有素材。商用音色凭证请放各自 skill 的 .env(已在 .gitignore 中)。

沉淀方法论,不沉淀素材:文档里的所有文案示例、项目名、时间地点一律虚构或抽象化。 真实客户文案、活动名、成片内容不进这个仓库——包括提交信息。skill 要的是「怎么做」, 不是「给谁做过什么」。

License

MIT

About

把中文文案做成电影感竖屏 explainer 视频的 Claude Agent Skill — 语义图解(主画面演意思、字幕说句子)+ 30 类动效图谱 + 连续画布运镜

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages