程序化视频字幕:词级时间、重点高亮与版式
使用内联词数组、字幕素材、外部 JSON、批次模式和逐词展示,生成清晰且数据驱动的字幕。
2026年9月3日
RenderingVideo 团队

程序化视频字幕:词级时间、重点高亮与版式
字幕能提高理解效率、无障碍体验和静音自动播放效果,但自动字幕不能只提供一段纯文本。渲染器还需要词级时间、布局策略,以及在不同背景下都清晰可读的样式。
使用词级时间
每个字幕词包含标准化单词、带标点的显示文本、开始时间和结束时间。
{
"word": "build",
"punctuated_word": "Build",
"start": 0.2,
"end": 0.56
}
词级时间让渲染器可以高亮当前发音词、按语音逐步显示文字,并让画面变化与旁白保持同步。
选择字幕数据来源
RenderingVideo 支持三种常用形式:
- 小型、自包含 Schema 可以直接内联词数组。
- 可复用字幕数据可以放进 assets,并使用
{ "$ref": "subtitle-main" }引用。 - 独立字幕服务可以通过
{ "src": "https://..." }提供外部 JSON。
外部接口应直接返回词数组,或返回包含 words 数组的对象。公开预览流程会在播放前统一处理数据。
Batch 与 Stream 模式
Batch 模式按短语分组,并高亮当前发音词,适合精致的社媒短片。
Stream 模式按顺序逐词显示,更接近实时转录,适合演示或对话内容。
通过 wordsPerBatch 控制信息密度。竖屏短视频通常比桌面讲解视频更适合较少的单批词数。
为可读性设计
先确定位置、最大文本宽度、字号和对比度。半透明背景或阴影可以避免字幕淹没在复杂画面中。字幕也要避开手机播放器控件和平台覆盖区。
{
"type": "subtitle",
"start": 0,
"duration": 8,
"words": { "$ref": "subtitle-main" },
"config": {
"mode": "batch",
"wordsPerBatch": 4,
"position": "bottom",
"fontSize": 60,
"textColor": "#FFFFFF",
"highlightColor": "#7DD3FC",
"backgroundColor": "rgba(0,0,0,0.45)"
}
}
测试时要使用预期最长短语,而不只是平均文案。多语言文本可能明显变长,姓名和数字的换行位置也可能出乎预期。
区分整体动画与逐词高亮
config.fadeInAnimation 控制字幕批次内部的淡入;clip 层的 animations、keyframes 和 transition 控制整个字幕容器。区分这两个层次,可以避免入场动画干扰逐词强调。
建立可重复的字幕流程
- 把旁白转写成带时间戳的词数组。
- 统一标点并确认时间单调递增。
- 将数据保存为字幕素材或公开 JSON。
- 套用品牌字幕预设。
- 生成预览,检查每种目标比例下的换行。
- 时序与安全区域审核通过后再正式渲染。
完整字段请查看字幕元素文档,也可以在首页查看真实引擎渲染的字幕样片。