黑板粉笔

16:9 横屏黑板课程模板。木框 + 墨绿板面 + 粉笔字,版式与知识看板完全同名,多了课程名页眉、章节号和标题两色分词,适合成系列的课程讲解。

· Markdown

直接这样说

  • 用 html-slide-blackboard 做一节课,课程名写「Python 入门」,这是第 1.2 节
  • 做一条黑板风格的讲解视频,横屏,把这个知识点拆成 4 个要点

什么时候选它

要做一门课或一个系列讲解:每集都是同一个课程名、有章节号、画面风格统一。板书的视觉语言让「上课」的感觉更强。

它和 知识看板(html-slide) 是同一套骨架,只是换成了板书风格。已经会用知识看板,这里只需要看下面「特有的参数」。

规格

项值
画幅16:9(只有横屏,1920×1080)
时长15–600 秒
内容语言中文
场景类型opening / point / cta / ending
旁白需要(音频)
字幕描边字幕
数字人可选

主题变体 3 套:green-board 墨绿黑板(默认)、black-board 深灰黑板、light-board 牛皮纸浅板。字体默认霞鹜文楷。

版面

  • 木框 + 板面:默认背景就是木框黑板,不用写。
  • 页眉:左上课程名、右上章节号(暖黄粗体),全片常驻。
  • 板书主体:26 种版式,slideId 与知识看板完全同名(hero-title、feature-grid、timeline-axis、compare-table、formula-steps、quiz-reveal 等),每屏在 customPayload.slideId 里选一个。各版式的字段、数组上限见 知识看板,两个模板的 DSL 可以互换。
  • 标题两色:命中的关键词用暖黄,其余用淡蓝。

关键参数

以下是本模板特有或与知识看板取值不同的参数。版式本身的 templateData 字段与知识看板一致。

参数位置类型 / 取值默认说明
slideIdcustomPayload.slideId26 种版式 id,与 html-slide 同名—每屏必须显式写。不写或写错会静默回落到只有一行标题的默认版式
watermarkTextcustomPayload.watermarkText(场景顶层)字符串不显示页眉左上的课程名,整门课写同一个
pageNocustomPayload.templateData.pageNo字符串,如 "1.1"不显示页眉右上的章节号
highlightcustomPayload.templateData.highlight字符串,须是 title 的子串不给则整句米白标题两色分词:命中部分暖黄,其余淡蓝
background.presetcustomPayload.backgroundboard / solid / gradient / image / video / noise / noneboard木框黑板是默认值,通常不用写。从知识看板迁 DSL 时把 grid 改成 board
background.woodFramecustomPayload.background布尔true最外圈木框。只有整屏图片 / 视频出镜时才值得关
background.boardOverlaycustomPayload.background布尔false在图片 / 视频上叠一层板面质感,让照片像「贴在黑板上」
background.motioncustomPayload.backgroundstatic / kenburns-in / kenburns-out / pan-left / pan-rightkenburns-in图片背景运镜
background.overlayOpacitycustomPayload.background0–10.55图片 / 视频上的蒙版,设 0 关闭
background.overlayColorcustomPayload.background颜色rgba(24,32,26,1)蒙版颜色,默认取板面深绿调
background.blurPxcustomPayload.background0–400图片 / 视频模糊,让粉笔字更清楚
highlightMapcustomPayload.templateData.highlightMap对象:字幕行下标 → 卡片下标自动推导旁白带 outro 行时手写,把 outro 也映射到最后一张卡
digitalHuman.positioncustomPayload.digitalHuman九宫格 top-left … bottom-right / custom右下角老师出镜位置。避开 top-left / top-right,那里是页眉
digitalHuman.sizecustomPayload.digitalHumansmall / medium / large / full,或 0.1–1medium小窗高度,档位分别占画面短边 0.28 / 0.42 / 0.62 / 0.92
digitalHuman.shapecustomPayload.digitalHumanrect / rounded / circle圆角不支持抠像
digitalHuman.layoutcustomPayload.digitalHumanoverlay / reserveoverlayreserve 会把板书等比缩小让出一侧

数字人只在场景写了 visuals.avatar.assetRef 时出现;相邻几屏引用同一个 assetRef 就是一段连续视频。

什么时候别选它

  • 不需要课堂感、想要更通用的科普看板 → 知识看板。
  • 一道数学题从头讲到尾 → 数学解题讲解,它有题面、图形和红框圈选。
  • 要竖屏 → 只有 16:9。

常见坑

  • 没写 slideId。渲染成功、零报错,画面只剩一行居中标题,看起来像「模板本来就长这样」。整片也不要只用一种版式。
  • highlight 不是标题的子串。不会报错,只会静默退回整句米白。
  • 课程名写进了 templateData。课程名走场景顶层的 watermarkText,章节号才走 templateData.pageNo。
  • 字段名凭直觉写。例如 feature-grid 的卡片标题叫 name 不叫 title。写错不报错,那一块静默空掉,照着版式的字段写。
  • 卡片数 ≠ 旁白条数。逐项高亮的版式要求 narration.items 与卡片数组等长。
  • 数组超上限。超出部分会被静默裁掉,内容多就拆成多个场景。
  • 图片只写了 URL。slide 内的图要先在 DSL 的 assets[] 声明,再用 assetRef 引用,否则静默不显示。

下一步

  • 脚本生成(gen-script) — 输入一个主题,产出结构化的视频 DSL:分几个场景、每个场景讲什么、要哪些素材。这是整条流水线的第一步,出稿后会停下来等你确认。
  • 配音(gen-voice) — 文字转语音(Minimax)。返回可直接播放的音频 URL,JSON 输出时附带音频时长和字幕时间轴,不需要下载。
  • 数字人口播(gen-digital-human) — 选一个数字人形象(或用自己的视频 / 照片克隆一个),给它一段文字或一段现成音频,产出一条口播视频。
  • 知识看板 — 16:9 横屏概念讲解模板。26 种内置幻灯片版式、7 种背景预设,卡片随旁白逐项点亮,适合科普、白板风格的讲解。
  • 数学解题思路讲解 — 3:4 竖屏小学数学讲解模板。一块板子讲完一道题:题面彩色标注、方程 / 条形图 / 线段图 / 表格四选一,红色虚线框随旁白圈选,答案最后落进图形里。