srt-whiteboard-animation 的 annotation.json 字段完整清单region、sequence、protectedRegions 一文讲透【免费下载链接】srt-whiteboard-animation将 SRT 字幕做成暖米黄纸张底的流式笔迹白板手绘动画 skillmask 分区遮罩编排 stream 连续笔迹ink→color。项目地址: https://gitcode.com/gh_mirrors/sr/srt-whiteboard-animation在 srt-whiteboard-animation 这个 SRT 字幕白板动画 Skill 里annotation.json是把「字幕 → 白板手绘视频」串起来的核心配置文件每个画什么、何时画、画多久、谁保护谁全靠它说了算。本文用仓库自带的示例标注把顶层字段、elements 元素字段、region 坐标、sequence 顺序、protectedRegions 保护区一次性讲透新手照着也能快速看懂并改对配置。上面的动图来自仓库案例三个区域按字幕叙事顺序依次落墨未开始的区域完全隐藏——这正是sequence与reveal.startMs共同编排的效果。一、annotation.json 是什么它是一张图.png的同名伴侣文件例如 examples/scene-01-monkey-mountain-banana.annotation.json 对应scene-01-monkey-mountain-banana.png。渲染器 scripts/render_stream_whiteboard.py 和预览台 assets/preview.html 都直接读取它因此文件名必须与图片同名。二、顶层字段清单字段类型作用sceneId字符串场景编号如scene-01用于多幕管理canvas对象{ width, height }必须与原图像素尺寸完全一致storyBasis字符串该幕字幕的事件摘要帮助标注时对齐叙事sceneDurationMs整数整幕总时长毫秒来自该幕字幕的时间跨度elements数组所有要绘制的元素按叙事顺序排列⚠️ 一个常见坑canvas写错会导致区域坐标整体偏移。标注前务必先获取原图的真实像素宽高。三、elements 元素字段完整清单每个元素描述「画布上的一个区域 它的出场编排」完整字段如下字段位置必填作用id元素✅元素唯一标识如rockerylabel元素✅中文显示名预览图中会标注出来sequence元素✅绘制顺序号从 1 起连续递增narrativeRole元素✅中文说明该元素在叙事中的作用subtitle元素✅对应的 SRT 字幕原文供预览台联动type元素建议structure场景/character人物等region元素✅矩形区域整数像素坐标reveal元素✅出场编排方向、时间、遮罩参数handPath元素建议预览台手部滑行的起止点region整数像素矩形原点左上角region: { x: 20, y: 120, width: 540, height: 780 }规则很硬必须是原图坐标系下的整数像素禁止百分比或估算值且整个矩形必须落在画布内。渲染时该区域就是这支笔的「作画地盘」。sequence按叙事语义排不是按画面位置sequence决定元素的绘制先后排序依据是字幕事件先后推荐节奏为「场景铺垫 → 关键人物/物体 → 动作冲突 → 反应/结果」。示例标注里正好是三段式sequence: 1左侧假山场景 —— 场景铺垫sequence: 2中间抢香蕉的大猴 —— 动作冲突sequence: 3右侧围观小朋友 —— 反应结果在预览台 assets/preview.html 里拖动模块列表即可重排顺序sequence会自动重编号。reveal出场时间编排 protectedRegions 保护区reveal是编排层的核心对象子字段作用direction揭示方向如top_to_bottom仅供预览台矩形代理演示真实笔迹由流式绘制器自动生成startMs开始作画的时间点毫秒durationMs作画时长内部按ink:color 2:1切成「起笔铺线稿 → 添彩」两段maskPaddingPx遮罩外扩缓冲像素protectedRegions本元素需要延后显示的保护区列表时序要点同一幕内各区域应串行作画即下一区域的startMs从上一区域startMs durationMs可加 100–300ms 呼吸间隔开始避免时间轴上互相打架。protectedRegions防止「后续内容提前露脸」这是遮罩编排最关键的一个字段。渲染器的规则是每个区域的允许掩码 自己的region扣除所有后续区域的region再扣除本区域protectedRegions。也就是说当两个主体相互遮挡、或某个矩形框太大可能误伤背景线条时就在较早出场的元素的protectedRegions里框出需要压住的矩形坐标同样是整数像素让被遮挡部分严格等轮到它时才出现。示例里三块区域互不重叠所以都是空数组protectedRegions: []。handPath 与 direction只是「代理」不是真笔迹handPathstart/end/easing配合direction只用于预览台模拟手部滑行演示成片中的真实笔迹由 scripts/render_stream_whiteboard.py 沿骨架或网格自动生成无需精调。四、用完整示例核对字段仓库示例标注可直接打开对照examples/scene-01-monkey-mountain-banana.annotation.json对照示例可以看到典型配置sceneDurationMs: 8600三个元素的startMs分别为300 / 3000 / 5700逐段接力、互不重叠最后一个区域画完后自动补帧到总时长并保证结尾至少停留 0.5 秒完整画面。五、如何校验与编辑字段需求工具解析 SRT 生成建议分镜scripts/parse_srt.py生成区域编号/方向检查图scripts/render_annotation_preview.py可视化拖拽编辑区域、顺序、时间与字幕关联assets/preview.html渲染 MP4 成片scripts/render_stream_whiteboard.py渲染前后建议对照 SKILL.md 中的质量检查清单自查首帧是否为干净纸张底、未开始区域是否提前露线、sequence与字幕事件是否一致、结尾是否有完整画面停留。六、常见误区速查 ❌ 用百分比或估算坐标写region→ ✅ 必须整数像素且先确认canvas与原图一致❌ 按从左到右机械排sequence→ ✅ 按字幕叙事语义排序❌ 重叠主体不设protectedRegions→ ✅ 在较早元素中标出保护区❌ 以为direction控制真实笔迹 → ✅ 它只是预览台演示代理掌握以上字段annotation.json就不再是「神秘配置」而是一份清晰的可读脚本谁先画、画哪里、画多久、护住谁一目了然。【免费下载链接】srt-whiteboard-animation将 SRT 字幕做成暖米黄纸张底的流式笔迹白板手绘动画 skillmask 分区遮罩编排 stream 连续笔迹ink→color。项目地址: https://gitcode.com/gh_mirrors/sr/srt-whiteboard-animation创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
ABB ACS510/550变频器中文界面设置与参数备份实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 6:07:51
SpringBoot自动配置给我挖的坑,你千万别跳 「明明引入了spring-boot-starter-data-redis,为什么我的Cacheable死活不生效?」凌晨两点,我盯着生产环境突然飙升的数据库QPS,终于发现又是SpringBoot自动配置挖的坑——而这次埋单的是整个团队的睡眠时间。 今天要聊的不是那些「… · 2026/9/27 6:07:26
深圳网站品牌建设避坑指南:搞定备案与安全注意事项 深圳网站品牌建设避坑指南:搞定备案与安全注意事项 很多深圳的独立站长在搭建完官网后,往往卡在两个环节:一是 备案流程一头雾水 ,不知道ICP备案到底要准备什么材料、周期多久;二是 网站安全注意事项… · 2026/9/27 6:41:50
小米职级薪资全解析:从P4到P10,定级谈薪与晋升指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 6:41:50
LDA主题模型与情感分析实战:电商评论文本挖掘全流程 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 6:41:50
wordpressip验证不当漏洞图解步骤 WordPress IP验证不当漏洞修复全解:不懂代码也能搞定,成本多少? 自己不会代码想做网站,最怕的不是功能做不出来,而是网站建好了被黑客盯上。很多老板问我,修这个漏洞多少钱?其实,如果你懂点基础,花半小时自己改,成本就是0元;找外包,… · 2026/9/27 6:41:44
AI录音卡横评:讯飞听见、搜狗C1、智在记录哪家强?职场人实测对比 作为混迹职场10年的“老油条”,我从最早的录音笔到现在的AI录音卡,前前后后用过不下十五款产品。这些年,最大的感触就是:设备好不好,不是看参数,而是看它能不能真正帮你省时间、提效率。今天,我… · 2026/9/27 6:41:44
STM32 FSMC驱动CH438Q实现8路UART扩展实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 6:41:44
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01