Skills

Video Chapters

用户要给视频分章节、加章节或时间轴目录、按作者给的时间大纲生成章节,或调整章节的粗细时用:在自然的话题转换处分章,每章一个标题和一句话摘要,写进视频的章节。需要视频的转写。不用...

Install

npx skills add JimLiu/baocut --skill video-chapters -g -a claude-code -y
Repository
JimLiu/baocut1.6k
Category
Engineering
Updated
3d ago
License
See repository
Context cost
Lightabout 1,007 tokens
Runs scripts
No, instructions only

What it does

用户要给视频分章节、加章节或时间轴目录、按作者给的时间大纲生成章节,或调整章节的粗细时用:在自然的话题转换处分章,每章一个标题和一句话摘要,写进视频的章节。需要视频的转写。不用于只想在简介里列出已有章节(用起标题与写简介),也不用于给文章分节。

分章节

章节是给观众跳着看用的:拖进度条的人看一眼章节名,就知道要去哪一段;看过的人想回头找某个地方,也靠它。所以章节的标题要说清这一段讲什么,起点要落在话题真正开始的地方,一个章节对应一个话题。

最容易做坏的样子有两种。一种是按时间平均切:每五分钟一章,起点落在一句话的中间,标题是「第一部分」「继续讨论」,观众看了等于没看。另一种是标题太像总结:一章一句长话,章节列表反而读不动。章节名是路标,不是摘要;摘要另有一句话的位置。

1. 取材料

  1. 用 videos_inspect 看视频:时长、已有的章节(chapters)、文档。没有转写(kind 为 speech 的文档)时先转写,告诉用户转写在进行。从链接导入的素材另有 assets[].source:chapters 是作者的章节(平台给的结构化章节,或从简介里的时间戳大纲解析出来的),没有时是 [];description 是截断的简介。
  2. 带时间码的文稿:export(kind transcript、format md、timestamps true;有几份文稿时按它列出的候选用 documentId 指定),jobs_inspect 等到 completed,读 outputs 里的文件。它按段落给出剪辑后时间线上的时间,章节的时间就取段落开头的这个时间码,不要自己估算。
  3. 视频已经有章节时,先问用户是要替换、调整还是保留;用户只说「加章节」而已有的章节是新的,不要覆盖。

2. 有作者章节或用户给了大纲时

作者自己分过的章节通常比你分的更贴近他的意图,照它来,不自己分,也不手工对时间。来源素材自带章节(assets[].source.chapters 不为空),或用户贴来一份带时间的大纲(0:00 开场、1:02:03 问答 这类)时,用 chapters_adopt:

  • 作者章节:给 video(素材不止一个时给 asset,有几份转写时给 document)。用户贴的大纲:给 outline,可以是 [{ at, title }],也可以是贴来的原文。不确定时先带 dryRun 看回执,再正式写。
  • 它把每一条吸到文稿里最近的段落或句子起点(段落优先,其次句子、字幕条、词),清洗标题后整份写进视频的章节(替换已有的;已有章节要先按第 1 步问过用户)。
  • 读回执的 sourceChapters:entries 共几条;matched 吸到了起点;ambiguous 附近有几个起点、取了离作者时间最近的那个(同样近取靠后的);snapped 时间挪动过;unanchored 对不上、保留了原来的时间。rows 逐条给标题、写入的时间 at、原来的时间 sourceAt 与状态;带 offTimeline 的条目对应的地方不在时间线上(比如剪掉了)。交付时说清对上几条,把 ambiguous、unanchored、offTimeline 的条目逐条列给用户:这些是他要自己看一眼的地方。
  • 带 untitled: true 的章节(作者章节或回执的 rows 里):平台只给了分界,Untitled Chapter N 是下载工具填的占位名,不是作者的标题。读这一章到下一章之间的转写给它起标题(语言照第 4 步),连同其余各章用 outline([{ at: sourceAt, title }])再调用。不带 dryRun 直接采用会返回 UNTITLED_SOURCE_CHAPTERS,照错误里的 rows 补上标题即可。
  • 返回 NO_SOURCE_CHAPTERS:素材没有作者章节,按下面的做法自己分。返回 ASSET_NOT_PLACED:素材不在时间线上,先放上去。
  • 用户要你自己写的章节,或想要和作者大纲不同的粗细时,才走下面的做法自己分,作者的大纲当参考:转写和它吻合的地方沿用它的分界和标题(保留作者的措辞,语言照第 4 步),只在转写明显不同的地方增、并、删章;大纲的时间只是大致的,章节的起点仍取文稿里段落的时间码。

3. 分几章

按粗细定一个大致的目标章数,不硬凑:

粗细大约多长一章
粗约 10 分钟
适中(默认)约 5 分钟
细约 2.5 分钟
Read the whole SKILL.md on GitHub

More in Engineering