视频章节 / 时间戳目录:给中长视频自动生成章节划分和时间戳目录,用于 B站分P/YouTube 章节/视频描述区,方便观众跳转、提升完播。当用户说 视频章节、章节目录、时间戳、分章节、视频目录、chapters、B站章节、YouTube 章节、给视频加时间点、看点目录、视频大纲时间戳 时使用。编排复用 asr.py(带时间轴转录),章节划分与命名由 LLM 完成。与 video-to-article 区别:那个把视频改写成成篇图文,本 SKILL 只出章节时间戳目录。
npx skills add https://github.com/ZJU-REAL/Easel --skill video-chapters
> 给中长视频生成章节时间戳目录(B站/YouTube 描述区可用)。带时间轴转录走 asr.py,
> 章节切分与命名由你(LLM)完成。
> 出成篇图文见 video-to-article;出字幕见 auto-subtitle;切成短视频见 video-highlights。
| 字段 | 必填 | 说明 |
|------|------|------|
| 视频文件 | 是 | 中长视频(教程/评测/讲座/直播回放;没给就问) |
| 目标平台 | 否 | B站 / YouTube / 通用(影响格式与措辞) |
| 章节数 | 否 | 期望章节数(默认按内容自然划分,通常 5-12 段) |
outputs/主题名/)chapters.txt — 时间戳目录(每行 mm:ss 章节名,可直接贴描述区)chapters.json — 结构化(start 秒 + 标题),供程序化使用transcript.txt — 转录原文(备查)脚本路径(相对项目根):skills/shared/scripts/asr.py。
python skills/shared/scripts/asr.py transcribe -i <视频> --format json \
-o outputs/主题名/transcript.json
(首次跑 ASR 需外网代理下模型,见 auto-subtitle 前置说明。)
读 transcript.json(每段带 start/end),按话题转折划分章节:
写 chapters.txt(每行 mm:ss 章节名,首行必须 00:00):
00:00 开场|今天聊什么
01:24 第一个坑:xxx
03:50 实测环节
...
同时写 chapters.json:[{"start": 0, "title": "开场|今天聊什么"}, ...]。
0:00,≥3 章、每章 ≥10s 自动生效。mm:ss 标题。chapters.txt 通用可读。outputs/主题名/。章节时间戳是 YouTube/B站 提升完播与检索的标准做法(首章 0:00、≥10s 间隔为平台硬规则)。
转录用 faster-whisper(asr.py)出时间轴,话题切分交给 LLM——确定性 IO 与语义划分分层。
Take zju-real/video-chapters from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.