mcpField
C
captions-overlay

captions-overlay

github.com/heygen-com创意与媒体74.7k60.8k 次安装今天更新
代码仓库

关于 captions-overlay

captions-overlay 是一套视频字幕技能,规定字幕与强调词如何叠加在画面上,适用于由 Agent 制作的视频。它区分可读的逐字字幕与少量置于主体背后的强调词,同时保留完整画幅构图。

主要功能

  1. 01将语句分为 drop、rail 或 embed
  2. 02逐字字幕置于下方字幕轨道
  3. 03仅在重点处少量使用嵌入词
  4. 04字幕叠加于完整画面
  5. 05构图居于真实垂直中心
  6. 06通过视觉判断字幕可读性

适用场景

  1. 01为人物讲述和讲解视频添加字幕
  2. 02将偶尔出现的标题词置于主体背后
  3. 03在不预留字幕区域的情况下制作字幕视频

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/heygen-com/hyperframes --skill captions-overlay

安装后在 Claude Code 中输入/captions-overlay确认已加载。

详细介绍

字幕叠加原则

叠加原则——补充上游 /hyperframes 技能的 references/captions.md。本原则在其基础上生效;不要认为它已合并到上游技能中。

这里结合了两个理念。第一是字幕模型——每个口语短语都属于 drop、rail 或 embed,其中 embed 是稀缺、凭实力赢得的高潮,而非默认选项。第二是叠加法则——字幕行以叠加层的形式合成在影片之上;它不是预留区域,因此绝不应为了“腾出空间”而将内容上移或留出空白带。这两个理念相辅相成:字幕以叠加层呈现(逐字的 rail 在前景,偶尔出现的 embed 在主体后方),因此构图保留完整画幅,并以真正的垂直中心为中心。

字幕模型——drop / rail / embed

每个口语短语都属于以下三种之一:

含义显示方式
drop填充词——嗯、啊、结巴、自我修正不显示
rail默认——普通口语内容(逐字呈现)清晰的下三分之一字幕,位于前景,易于阅读。强调词可以添加行内 emphasis 高亮(强调色/当前词弹出效果)——仍保留在 rail 上。
embed升级后的高潮——标题式节拍一个大字合成在主体后方(遮罩遮挡),带有精心设计的入场和退场

大部分文本由 rail 承载;embed 是稀缺、凭实力赢得的高潮——每个节拍至多 1 个,绝不相邻或同时可见,间隔至少一个节拍。短片通常使用一个 embed;长篇讲解则每个段落约使用一个。每个词都做成 embed 是常见错误。

这是默认形式(rail = 逐字呈现的下三分之一字幕;embed = 合成在主体后方的高潮)。纯电影化处理会去掉 rail,让所有内容都采用 embed 风格——仅在纯电影化需求中使用,绝不要用于讲解/旁白,因为这类内容必须让文字清晰可读。

Rail 优先,Embed 稀缺(关键规则)
  • 对访谈/讲解内容,优先使用 Rail。 不要把整段转录都做成 embed——大部分文字应放在 rail 上;只将高潮做成 embed。把所有内容都做成 embed 是常见的默认错误。
  • Embed 稀缺且间隔分散。 每个句子/节拍至多 1 个 embed,绝不相邻或同时可见,间隔至少一个节拍,apex 最多一个。高潮是每个节拍的峰值,不是“整段影片唯一的亮点”。

叠加层原则 — 字幕不是预留区域

在启用字幕的合成视频中,字幕行是简短、精简的逐字显示文本,作为叠加层置于整部影片之上(单行文本,底部居中,大约占画布高度底部的 5-8%)。它是叠加层,不是预留区域:

  • 将构图居中于真正的垂直中心 — y = H / 2(横屏 540,竖屏 960)。不要为了「给字幕腾出空间」而将内容上移;以 0.42 × H 为中心、底部留出空白区域的构图是问题所在,不是解决方案。
  • 内容可以延伸到画布底部。欢迎使用满幅主体、栏杆和背景。
  • 一条宽松的礼貌准则: 避免将_关键的小号可读文本_(URL 行、法律声明行、副字幕)恰好放在字幕行所在的底部中央约 80px 范围内——叠加层会与其争夺视觉焦点。字幕下方可以有大幅图像、卡片和环境内容;字幕样式的设计目的就是让文字能叠加在内容上清晰可读。
  • 没有机器强制的避让检测(旧的 captions.mjs keepout 检查已弃用)。快照审查通过视觉方式判断字幕叠加在内容上的可读性。

禁用字幕时: 定位自由度完全相同——只是叠加层不再显示。

为什么这两条规则属于同一原则

模型规定,栏杆位于前景,而嵌入式文字是罕见的词语,合成在主体后方——两者都是添加到原样保留的影片素材上的图层。叠加层原则则规定,字幕行是合成在整部影片之上的图层,而不是从布局中划出的区域。因此,无论字幕叠加在影片素材上还是合成影片上,它们都是要添加的叠加层,而不是需要预留的区域:

  • 保留完整画面;以真正的中心为基准;让内容延伸至画面边缘。
  • 让栏杆(或简短的叠加字幕行)显示原文。
  • 只有在真正的高峰时刻才将词语提升为嵌入式文字——数量稀少、间隔分明,且一次绝不超过一个。
  • 不预留任何区域;通过视觉方式判断字幕叠加在内容上的可读性,而不是依赖避让检测。

评论

支持 Markdown