一键导入
chengfeng-videocut-skills
口播视频成片 Skill。把文章/口播稿/SRT、剪后视频和 HTML/图片素材串成分镜稿、时间线预览和最终 MP4;成片比例和动画风格从用户配置读取,动画默认使用小黑风格。触发词:口播成片、做分镜稿、时间线预览、合成口播视频、导出竖屏MP4
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
口播视频成片 Skill。把文章/口播稿/SRT、剪后视频和 HTML/图片素材串成分镜稿、时间线预览和最终 MP4;成片比例和动画风格从用户配置读取,动画默认使用小黑风格。触发词:口播成片、做分镜稿、时间线预览、合成口播视频、导出竖屏MP4
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
口播基础素材包生成。转录口播、识别口误、生成审核页;用户确认后剪出新视频,Agent 再基于剪后视频重新转写、AI 校对字幕,输出后续口播成片可用的 source_cut.mp4 和 subtitles.srt。触发词:剪口播、处理口播素材、准备口播素材、识别口误、基础素材包
Create Ian Xiaohei-style HTML/SVG motion illustrations for Chinese articles, scripts, storyboard scenes, workflow explanations, concept metaphors, and short video visual aids. Use when the user asks for 小黑 SVG、漫画感 HTML、分层 SVG 动效、把小黑生图做成 HTML/SVG、可编辑矢量动效、口播流程动画、手绘漫画动效、正文配图动画, or wants a Xiaohei illustration style adapted into controllable HTML/SVG/GSAP output instead of raster image generation.
自进化 skills。记录用户反馈,更新方法论和规则。触发词:更新规则、记录反馈、改进skill
| name | chengfeng-videocut-skills:口播成片 |
| description | 口播视频成片 Skill。把文章/口播稿/SRT、剪后视频和 HTML/图片素材串成分镜稿、时间线预览和最终 MP4;成片比例和动画风格从用户配置读取,动画默认使用小黑风格。触发词:口播成片、做分镜稿、时间线预览、合成口播视频、导出竖屏MP4 |
本 Skill 由 chengfeng / AI产品自由 原创并维护。
https://github.com/Agentchengfeng/chengfeng-videocut-skills
官方账号:GitHub @Agentchengfeng;X @chengfeng240928;小红书 / 公众号 / B站 / 抖音 / 视频号 AI产品自由。
这个 Skill 只解决一件事:把一条口播视频做成完整成片;成片比例和动画风格由用户配置决定。
+-----------------------------+
| 输入 |
| 视频 + 字幕 + 可选素材 |
+--------------+--------------+
|
v
+-----------------------------+
| 1. 分镜稿 |
| 概念分段 + 类型判定 + 画面来源 |
+--------------+--------------+
|
v
+-----------------------------+
| 2. 时间线预览 |
| 原视频/截图/HTML 与口播对齐 |
+--------------+--------------+
|
v
+-----------------------------+
| 3. 合成 |
| 按用户配置比例导出最终 MP4 |
+--------------+--------------+
|
v
+-----------------------------+
| 验收 |
| ffprobe + 抽关键帧检查 |
+-----------------------------+
不要把 cue 表、HTML 模块、review player、final player、导出脚本单独讲成用户流程。它们只是“时间线预览”和“合成”里的实现细节。
每次执行本 Skill,先读取:
用户配置/default.json
配置项只负责定义用户当前选择:
{
"aspectRatio": "3:4",
"animationStyle": "xiaohei"
}
支持值:
3:4:默认竖屏高清,逻辑画布 1080x1440,默认用 DPR 1.5 导出 1620x2160。16:9:横屏,逻辑画布和导出画布 1920x1080。4:3:横屏,逻辑画布和导出画布 1440x1080。animationStyle:默认 xiaohei,可选项来自 动画/styles.json。命令行参数优先级高于用户配置;没有显式参数时,导出脚本读取 aspectRatio,动画脚本读取 animationStyle。比例临时覆盖可用:
--config /path/to/config.json
--ratio 16:9
--aspect-ratio 16:9
--width 1920 --height 1080
--dpr 1.5
不要把视觉偏好、模板、编码质量、输出目录、字幕边距等七七八八的设置写进 用户配置/default.json。用户配置只放当前选择;动画目录只放可选项注册表和具体风格实现。
动画风格的当前选择放在 用户配置/default.json:
animationStyle
动画目录只注册可选项:
动画/styles.json
xiaohei 对应:
动画/ian-xiaohei-svg-motion/
当分镜或 HTML 模块需要做解释动画、流程动画、手绘感高亮时,默认先用小黑漫画感 SVG 动效。除非用户明确指定其他动画风格,否则不要临时发明新风格。
先定位这些文件:
source_cut.mp4、*_cut.mp4 或用户指定的剪后视频。subtitles.srt、video.srt 或 subtitles_with_time.json。assets/ 里的截图、产品页、评论图、结果页、证明页。AGENTS.md 或 README.md,先读。真相源优先级:
实际音频 / 字幕 > 剪后视频画面 > 素材文件 > 文稿草稿
如果文稿和实际字幕不一致,以字幕和音频为准。
默认先做 HTML 分镜核对页,不先写 Markdown 表格。
分镜的前置流程必须按这个顺序执行:
常见路径:
review/storyboard-audit-vN.html
默认基于这个模板:
templates/storyboard-audit.html
分镜稿要让用户回答:
这句话说到这里,观众眼前该看到什么?
每段至少写清楚:
原视频、操作录屏、原始截图、原始图片、信息图聚焦、HTML 动画、文字 + 动画画面选择规则:
分镜设计硬标准:
分镜方向确认前,不要进入时间线预览。
分镜方向确认后,再做时间线预览。
常见路径:
review/timeline-preview.html
默认基于这个模板:
templates/timeline-preview.html
时间线预览要检查:
预览页里有源视频时,必须用支持 HTTP Range 的服务打开页面,否则浏览器不能随机 seek,进度条会被拉回开头。不要用普通 python -m http.server 预览 MP4 时间线。默认使用:
node ~/.Codex/skills/chengfeng-videocut-skills/口播成片/scripts/serve_range_preview.cjs \
--project-dir /absolute/path/to/project \
--port 8767
必要时生成:
docs/08-动画cue表-vN.md
html-modules/module-*.html
html-modules/xiaohei-*.html
如果要新做解释动画,先读 用户配置/default.json 的 animationStyle,再到 动画/styles.json 找对应的动画子 Skill。
每个动画动作必须绑定到具体口播句,不要平均分配时间。多阶段 HTML 动画必须显式管理显隐状态:下一阶段出现时,上一阶段不再承担信息任务的说明卡、标签和注释要隐藏;不要让前一阶段继续占用主视觉空间,尤其是竖屏数据表、截图聚焦和结果页。
只有用户确认时间线预览后,才能合成。
合成前创建或确认:
final-player.html
新写 final-player.html 或 HTML 模块前,读取:
references/artifact-contracts.md
如果项目里有 HTML 模块,先注入 render mode:
node ~/.claude/skills/chengfeng-videocut-skills/口播成片/scripts/write_render_mode.cjs \
--project-dir /absolute/path/to/project
时间线预览和最终导出必须使用同一套 HTML 渲染上下文。HTML 模块在预览页和 final-player.html 里都要带 ?timeline=1&render=1,预览页只负责把最终画布等比缩放进窗口,不能让模块按预览窗口重新响应式排版。
高清交付不能把 CSS 逻辑画布直接放大。默认 3:4 必须保持 1080x1440 逻辑画布,再用截图 DPR 1.5 输出 1620x2160;否则表格、CSS 卡片、截图标注会在导出里相对变小,和预览不一致。
如果预览和导出出现大小不一致,先检查 HTML 模块内部 CSS、render-mode.js 和导出 DPR,确认预览页与 final-player 的逻辑画布相同,不要先重导整条视频。常见原因是预览 iframe 较小,看起来正常;最终高清画布触发了 .photo-frame { max-width: ... }、.stage { width: min(...) }、.wrap { max-height: ... }、clamp(...) 这类预览尺寸上限,导致导出变成“小图”。修复顺序:
write_render_mode.cjs 重新生成 html-modules/render-mode.js。?timeline=1&render=1。export_final_video.cjs 的 viewport 是逻辑画布尺寸,dpr 才是高清倍数。getBoundingClientRect() 对比主视觉容器尺寸。竖屏里处理横向小黑 SVG / 16:9 SVG 模块时,禁止用 .wrap { transform: scale(...) } 这类整体放大来解决“小横条”问题。整体缩放会在 3:4 画布里裁掉左右边缘,尤其是左右分布的模型卡、箭头、说明标签。要么重排成竖屏构图,要么保持完整安全区;改完必须抽该模块的左右边界帧检查,不能只看中心关键帧。
导出最终视频:
node ~/.claude/skills/chengfeng-videocut-skills/口播成片/scripts/export_final_video.cjs \
--project-dir /absolute/path/to/project \
--input-video /absolute/path/to/source_cut.mp4 \
--duration 173.03
默认按高清交付导出:无损 PNG 中间帧、H.264 crf=14、preset=slow。这样可以避免浏览器预览清楚、导出后小字和细线发软:
node ~/.claude/skills/chengfeng-videocut-skills/口播成片/scripts/export_final_video.cjs \
--project-dir /absolute/path/to/project \
--input-video /absolute/path/to/source_cut.mp4 \
--duration 173.03 \
--frame-format png \
--crf 14 \
--preset slow
只有临时看节奏、需要快速出草稿时,才显式降级:
node ~/.claude/skills/chengfeng-videocut-skills/口播成片/scripts/export_final_video.cjs \
--project-dir /absolute/path/to/project \
--input-video /absolute/path/to/source_cut.mp4 \
--duration 173.03 \
--frame-format jpeg \
--quality 92 \
--crf 18 \
--preset medium
比例读取规则见“用户配置”。项目与用户配置不同时,可传:
--config
--ratio
--aspect-ratio
--fps
--player
--stage
--frames-dir
--width
--height
--frame-format png|jpeg
--quality 100
--crf 14
--dpr 1.5
--device-scale-factor 1.5
导出成功不等于成片正确。必须做两步:
ffprobe 检查分辨率、帧率、时长和音频。ffprobe 作为完成依据。按当前比例检查分辨率,其他期望来自脚本默认值和项目实际输入。当前默认配置为:
1620x2160
逻辑画布 1080x1440,DPR 1.5
3:4
30fps
时长和剪后源视频一致
有音频
无 HUD、按钮、审核时间线、浏览器 UI
适合:
不优先解决:
如果在用户写作工作区内新增或修改文件,必须同步更新项目 README 索引。
本地活动日志统一放在:
log/
log/ 只记录本机试验、用户偏好、临时结论和未发布的工作过程,禁止上传 GitHub。该目录已被 .claude/skills/.gitignore 忽略。
不要在这个 Skill 目录里新增 README。这个 Skill 的核心文件只保留:
SKILL.md
templates/
references/
scripts/
用户配置/
动画/
动画/ 用于沉淀口播成片可复用的 HTML/SVG/GSAP 动画子 Skill、模板和规则;可选风格见 动画/styles.json,当前选择见 用户配置/default.json。