尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

srt-whiteboard-animation的7步工作流:从字幕文件到成片MP4的完整指南

srt-whiteboard-animation的7步工作流:从字幕文件到成片MP4的完整指南 srt-whiteboard-animation的7步工作流从字幕文件到成片MP4的完整指南【免费下载链接】srt-whiteboard-animation将 SRT 字幕做成暖米黄纸张底的流式笔迹白板手绘动画 skillmask 分区遮罩编排 stream 连续笔迹ink→color。项目地址: https://gitcode.com/gh_mirrors/sr/srt-whiteboard-animationsrt-whiteboard-animation 是一款把SRT 字幕转成白板手绘动画视频的开源工具线稿以连续手写笔迹在暖米黄纸张背景上逐笔浮现跟随字幕叙事依次出场最终导出成片MP4。知识讲解、故事口播、课程字幕都能用它变成温暖的手绘风视频。下面以仓库自带的猴子山抢香蕉案例带你完整走一遍从字幕文件到成片 MP4 的 7 步工作流。这种白板手绘动画是怎么实现的工具的核心是两套机制的组合详见 SKILL.md分区遮罩编排画面被切分为若干区域按字幕叙事顺序逐个揭示未开始的区域完全隐藏重叠对象用protectedRegions保护区防止提前露线流式笔迹画法每个区域内手沿骨架/网格连续滑行落墨先ink铺线稿、再color添彩权重 2:1所有区域共享一张持久画布。与逐格跳变的擦除式白板不同这里的笔迹是连贯流动的而且出场顺序由字幕事件驱动而不是画面坐标。准备两条命令搭好 Python 环境工具自带依赖隔离的虚拟环境准备脚本 scripts/prepare_env.py首次使用执行python scripts/prepare_env.py --check python scripts/prepare_env.py成功后第一条命令会输出ENV_PY解释器路径后续渲染命令都用这个解释器运行保证依赖互不干扰。第1步解析SRT字幕生成建议分镜用 scripts/parse_srt.py 把字幕解析成结构化字幕条并按每幕 25–35 秒口播自动分组python scripts/parse_srt.py 字幕.srt --target-sec 30 --min-sec 25 --max-sec 35输出包含每个场景的起止时间、时长即后续标注里的sceneDurationMs和字幕文本。据此确定配图策略每幕的场景编号、核心表达、画面主体、对应字幕区间。关键原则是——每幕只表达一个核心意思。策略确认后再进入下一步。第2步生成统一风格的线稿图确认策略后逐幕生成 16:9 的线稿图。所有场景必须遵循同一套视觉语言保证系列感暖米黄旧纸张背景建议#F5EBD7禁止纯白深灰色素描线条红、橙、蓝仅作少量概念性点缀极简手绘、干净背景、充足留白画面中不得出现文字、摄影感、3D 效果或复杂纹理。仓库里的猴子山抢香蕉线稿就是这个标准的成品主体之间保留充足留白是后续自动拆分区域的关键。第3步先读字幕再看图创建 annotation.json这一步不能只凭字幕臆测画面也不能只按画面位置机械排序。正确做法是先读该幕字幕 → 实际查看图片 → 获取原图像素宽高再把图中主体对应到字幕事件按场景铺垫 → 关键人物/物体 → 动作或变化 → 反应/结果的语义顺序安排绘制。随后创建与图片同名的图片名.annotation.json每个元素包含sequence/narrativeRole/subtitle绘制顺序、叙事作用、对应字幕文本region原图坐标系的整数像素矩形区域revealstartMs、durationMs起始时序与protectedRegions保护区。仓库自带一份可直接参考的完整标注examples/scene-01-monkey-mountain-banana.annotation.json。JSON 创建完成后用 Chrome/Edge 打开 assets/preview.html通过打开文件夹载入标注所在目录即可在预览台中可视化查看每个区域的编号与顺序。第4步生成区域检查图核对分区与顺序标注初稿确认后用 scripts/render_annotation_preview.py 出编号检查图python scripts/render_annotation_preview.py 图片路径 标注路径 预览图输出路径对着检查图核对三件事编号顺序是否与字幕叙事一致、区域是否都在画布内、相互遮挡的主体是否已用protectedRegions保护。第5步预览台拖拽调整区域、顺序与时间检查图没问题后回到预览台做精细调整拖区域四边四角修改region范围右侧修改名称、开始/结束时间startMs/durationMs与对应字幕选中模块会自动高亮相关字幕拖动模块列表调整顺序sequence自动重排拖时间轴或按播放按钮预览揭示过程未开始区域不显示点保存写回原.annotation.json并把sceneDurationMs对齐到最后区域结束 0.5 秒。调整完保存即可进入渲染环节——不用凭空反复出片改标注、再渲染才是正解。第6步命令行渲染单幕成片MP4确认最终标注与时序后用 scripts/render_stream_whiteboard.py 逐幕渲染全清 MP4ENV_PY scripts/render_stream_whiteboard.py 图片路径 标注路径 输出.mp4 assets/drawing-hand.png \ --ink-path grid --color-fill contour-wipe其中 assets/drawing-hand.png 是渲染时执笔的手部素材笔尖会贴近当前正在推进的笔迹两个常用参数线稿清晰的插画可换--ink-path skeleton骨架追踪笔迹更贴合上色风格可选--color-fill brush沿轨迹刷。渲染后抽查开场、重叠模块中段、结尾三个时间点未绘制区域不可见、保护区不漏线、结尾完整停留。第7步多幕合并为完整成片多幕项目确认每一幕成片后用 scripts/merge_scenes.py 按分镜顺序合并成一条ENV_PY scripts/merge_scenes.py --inputs 幕1.mp4 幕2.mp4 幕3.mp4 --output final.mp4合并后顺序、时长应与字幕分镜一致。单幕项目可直接跳过这一步。成片质量自检清单 出片前后对照检查摘自 README.md 质量检查首帧是干净的暖米黄纸张底色没有提前露出的线条canvas与原图像素尺寸一致所有区域都是画布内的整数像素坐标sequence、startMs与字幕叙事顺序一致中段帧中未开始区域和保护区不会提前出现每幕结束后至少停留 0.5 秒完整画面多幕合并顺序与字幕分镜一致。素材目录约定与相关文件项目素材统一放在assets/whiteboard/项目名/下图片与标注必须同名scene-01-demo.png对应scene-01-demo.annotation.jsonassets/whiteboard/项目名/ ├── scene-01-名称.png ├── scene-01-名称.annotation.json ├── scene-01-名称-whiteboard.mp4 └── scene-01-名称-preview.mp4工作流中每一步都会暂停等待确认避免在分镜、线稿或标注未定稿时浪费渲染成本。更完整的约束与参数说明见 SKILL.md 与 README.md完整案例素材可在examples/目录中找到。按这 7 步走一遍你的 SRT 字幕就能变成一板一画的手绘风 MP4 了 ✍️【免费下载链接】srt-whiteboard-animation将 SRT 字幕做成暖米黄纸张底的流式笔迹白板手绘动画 skillmask 分区遮罩编排 stream 连续笔迹ink→color。项目地址: https://gitcode.com/gh_mirrors/sr/srt-whiteboard-animation创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表