#269 by GitHub stars
geeklee/srt-whiteboard-animation
将 SRT 字幕做成暖米黄纸张底的白板手绘动画:读字幕→输出配图策略→确认后生成统一风格线稿→按叙事语义标注分区→预览台调整→渲染 MP4。编排沿用分区遮罩揭示(annotation.json / sequence / startMs / protectedRegions),但每个区域内的落墨换成 stream 的连续笔迹(骨架/网格 ink→color)。当用户提供 SRT 字幕并要求"字幕做成白板手绘/流式笔迹视频""SRT 生成白板动画""按字幕分镜画手绘"时触发。
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
696a7243c0e6 → 696a7243c0e6
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 696a7243c0e6
No earlier version was observed for comparison.
Heat
6.6- Star growth, last 7 daysAhead of 96% of tracked repositories
- Star growth, last 24 hoursAhead of 93% of tracked repositories
- Rank movement, last 7 daysAhead of 64% of tracked repositories
- Commits, last 30 daysAhead of 0% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
How it works
srt-whiteboard-animation
When your agent uses it
将 SRT 字幕做成暖米黄纸张底的白板手绘动画:读字幕→输出配图策略→确认后生成统一风格线稿→按叙事语义标注分区→预览台调整→渲染 MP4。编排沿用分区遮罩揭示(annotation.json / sequence / startMs / protectedRegions),但每个区域内的落墨换成 stream 的连续笔迹(骨架/网格 ink→color)。当用户提供 SRT 字幕并要求"字幕做成白板手绘/流式笔迹视频""SRT 生成白板动画""按字幕分镜画手绘"时触发。
What it loads into context
Frontmatter
160 tokensAlways available to the agent
SKILL.md
4,115 tokensWhen the skill is activated
Reference documents
1,855 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 默认实现参数
- 统一出图视觉规范(强制)
- 确认关卡(强制)
- 工作流程
- 目录约定
- 语义排序与像素级标注(必须执行)
- 时序模型(stream 画法专用)
- 遮罩不变量(编排层,必须执行)
- 配置示例
- 使用脚本
- 质量检查
Scripts executed separately
scripts/merge_scenes.pyscripts/parse_srt.pyscripts/prepare_env.pyscripts/render_annotation_preview.pyscripts/render_stream_whiteboard.pyscripts/stream_render.py
Files
.gitignoreasset211 bytesLICENSEasset1,075 bytesREADME.mddoc6,376 bytesSKILL.mdcore14,094 bytesSKILL.mdcore14,094 bytesSKILL.mdcore14,094 bytesSKILL.mdcore14,094 bytesagents/openai.yamlasset245 bytesassets/drawing-hand.pngasset802,812 bytesassets/preview.htmlasset28,411 bytesexamples/scene-01-monkey-mountain-banana-whiteboard.gifasset1,735,269 bytesexamples/scene-01-monkey-mountain-banana-whiteboard.mp4asset1,198,220 bytesexamples/scene-01-monkey-mountain-banana.annotation.jsonasset1,819 bytesexamples/scene-01-monkey-mountain-banana.pngasset2,411,634 bytesexamples/scene-01-monkey-mountain-stream.gifasset5,334,090 bytesexamples/scene-01-monkey-mountain.pngasset1,229,993 bytesscripts/merge_scenes.pyruns3,856 bytesscripts/parse_srt.pyruns5,009 bytesscripts/prepare_env.pyruns3,011 bytesscripts/render_annotation_preview.pyruns1,931 bytesscripts/render_stream_whiteboard.pyruns25,429 bytesscripts/stream_render.pyruns77,230 bytes
Read SKILL.md
# SRT 白板动画(mask 编排 + stream 画法)
把 SRT 字幕转成白板手绘动画:**编排**沿用分区遮罩揭示(按叙事顺序逐区域揭示、未开始区域完全隐藏、重叠用 `protectedRegions` 保护);**画法**换成流式笔迹——每个区域在自己的允许掩码内,笔尖沿骨架/网格连续滑行落墨(起笔 ink → 添彩 color),所有区域共享一张持久画布,已画完的区域保留在画布上。所有面向用户的说明、分镜、配置和界面文字必须使用中文。
与逐格跳变或矩形擦除不同:本 skill 的笔迹是**连贯流动**的;与整图 stream 不同:本 skill 按**字幕叙事分区**依次作画,可控制每个元素的出场顺序与时序。
## 默认实现参数
| 项目 | 默认要求 |
|---|---|
| 纸张背景 | 生成图使用暖米黄旧纸色(建议 `#F5EBD7`);渲染时从原图距四角内缩取样染底,禁止纯白。 |
| 画法 | 每区域 stream 连续笔迹:起笔 `ink`(铺线稿)→ 添彩 `color`(还原原色);权重 `ink:color = 2:1`。 |
| 笔迹路径 | `--ink-path grid`(网格,默认,稳)或 `skeleton`(骨架追踪,线稿清晰的插画更贴合)。 |
| 上色风格 | `--color-fill contour-wipe`(轮廓扫描,默认)或 `brush`(沿轨迹刷)。 |View the complete source on GitHubSkills included
- srt-whiteboard-animation
Repository facts
- License
- MIT
- Created
- Jul 27, 2026
- Last pushed
- Jul 27, 2026
- Forks
- 851
- Open issues
- 6
- Project activity
- Slowing
Rank over the last 12 weeks
Now #269 · best #260 · same as 30 days ago
- #267 on Oct 30
- #266 on Oct 31
- #267 from Nov 1 to Nov 2
- #268 on Nov 3
- #267 from Nov 4 to Nov 5
- #269 since Nov 6
73 earlier periods
- #878 on Aug 2
- #871 on Aug 7
- #882 on Aug 9
- #904 on Aug 11
- #894 on Aug 12
- #870 on Aug 13
- #783 on Aug 14
- #662 on Aug 15
- #651 on Aug 16
- #633 on Aug 17
- #473 on Aug 18
- #399 on Aug 19
- #377 on Aug 20
- #374 on Aug 21
- #369 on Aug 22
- #373 on Aug 23
- #376 on Aug 24
- #374 on Aug 25
- #354 on Aug 26
- #347 on Aug 27
- #344 on Aug 28
- #336 on Aug 29
- #329 on Aug 30
- #335 on Aug 31
- #324 on Sep 1
- #317 on Sep 2
- #320 on Sep 3
- #309 on Sep 4
- #306 on Sep 5
- #307 on Sep 6
- #314 on Sep 7
- #311 on Sep 8
- #308 on Sep 9
- #300 on Sep 10
- #294 on Sep 11
- #298 on Sep 12
- #295 from Sep 13 to Sep 14
- #294 on Sep 15
- #290 on Sep 16
- #287 on Sep 17
- #289 on Sep 18
- #284 on Sep 19
- #289 from Sep 20 to Sep 21
- #292 on Sep 22
- #291 on Sep 23
- #290 on Sep 24
- #288 on Sep 25
- #284 on Sep 26
- #283 on Sep 27
- #281 on Sep 28
- #278 on Sep 29
- #273 on Sep 30
- #271 on Oct 1
- #276 on Oct 2
- #267 on Oct 3
- #263 on Oct 4
- #269 from Oct 5 to Oct 8
- #268 on Oct 9
- #265 from Oct 10 to Oct 11
- #268 on Oct 12
- #269 on Oct 13
- #266 on Oct 14
- #265 on Oct 15
- #262 on Oct 16
- #265 from Oct 17 to Oct 18
- #263 on Oct 19
- #260 on Oct 20
- #262 on Oct 21
- #261 on Oct 22
- #260 from Oct 23 to Oct 24
- #262 on Oct 25
- #262 on Oct 28
- #265 on Oct 29
Before you install
Local scriptsAutomated signals, not a guarantee
Checked Nov 2, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 3 notes
SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- No network access
- 1 obfuscation signalin 1 file: scripts/parse_srt.py:36
- No instruction overrides
- 6 executable scriptsin 6 files: scripts/merge_scenes.py:1 scripts/parse_srt.py:1 scripts/prepare_env.py:1 and 3 more
- No access to secrets
- No requests to vote in Hot
Show all 7 signals by file
scripts/merge_scenes.py
- Executable scriptline 1
#!/usr/bin/env python3
scripts/parse_srt.py
scripts/prepare_env.py
- Executable scriptline 1
#!/usr/bin/env python3
scripts/render_annotation_preview.py
- Executable scriptline 1
Executable file
scripts/render_stream_whiteboard.py
- Executable scriptline 1
#!/usr/bin/env python3
scripts/stream_render.py
- Executable scriptline 1
#!/usr/bin/env python3
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Signal confidence: 7 facts
- Executable script in code of a file that runsscripts/merge_scenes.py:1High confidence
- Executable script in code of a file that runsscripts/parse_srt.py:1High confidence
- Possible obfuscation in code of a file that runsscripts/parse_srt.py:36High confidence
- Executable script in code of a file that runsscripts/prepare_env.py:1High confidence
- Executable script in code of a file that runsscripts/render_annotation_preview.py:1High confidence
- Executable script in code of a file that runsscripts/render_stream_whiteboard.py:1High confidence
- Executable script in code of a file that runsscripts/stream_render.py:1High confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/geeklee-srt-whiteboard-animation/)