关于 talking-head-guide
talking-head-guide 是面向 ChatCut 的口播视频编辑技能,适用于已有的访谈、播客和教程素材。它涵盖基于文字稿的 A-roll 剪辑及可选的画面、音频和字幕处理,并按依赖关系安排确认节点。
主要功能
- 01基于文字稿的 A-roll 剪辑
- 02清理、提取重点与重组
- 03Motion Graphics 和 B-roll 指引
- 04背景音乐与字幕处理
- 05按依赖关系设置剪辑确认节点
适用场景
- 01清理访谈或播客口播
- 02从长素材中提取重点
- 03按目标脚本调整剪辑
- 04添加配套画面与字幕
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ chatcut-inc/ agent-plugin --skill talking-head-guide安装后在 Claude Code 中输入/talking-head-guide确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/audio-and-music.mdb-roll.mdcaptions.mdmotion-graphics.mdmulticam.mdother-a-roll-editing-scenarios.md详细介绍
语音主导的视频剪辑(出镜口播、访谈、播客)
此技能涵盖的内容
必需输入:已注册或导入项目的语音主导型源素材——例如单人出镜口播、双人或多人访谈、视频播客、讲座、教程或课程。对于基于转录文本的 A-roll 剪辑,请先按照 asset-import 操作,然后在转录文本就绪后立即开始。如果用户想在没有源素材的情况下开始(例如从头生成一段新的出镜口播),则此技能不适用。
缺少源媒体时
- 在 ChatCut Web 中(包括嵌入式 Agent): 复用项目中已有的源媒体,或用户提供的可访问路径中的源媒体;否则,加载
widget-forms,并在回复中加入其原生文件上传字段(<form-files>),以及任何相关的剪辑偏好。 - 独立使用 Claude Code: 用户可以在对话中提供源素材,或直接上传到已打开的 ChatCut 编辑器。如果对话附件或本地路径仍需导入 ChatCut,请使用
asset-import。如果用户已在编辑器中上传素材,则从已注册的项目素材继续操作,无需再次导入。 - 独立使用 Codex: 请用户将源素材附加到对话中或拖放到对话中,然后按照
asset-import操作。不要使用编辑器的 Browser 上传路径,也不要引导用户使用该路径:它目前可能导致 Codex Browser 运行时崩溃。
如果此工作流通过 Codex/连接器宿主运行,且任务会为用户创建、指定或打开 ChatCut 项目,则应在开始实质性编辑前,以及最终交付前(如果可见编辑器与项目不再一致),完成任何返回的 browserHandoff.required=true、Codex internal Browser handoff 或等效的实时项目交接。
可独立应用于语音主导视频的剪辑处理。根据用户的需求选择,不必每次都全部应用。
- A-roll 剪辑(中文产品术语:语音剪辑,包括去口癖、停顿、重复)——基于转录文本进行语音剪辑。常见操作包括清理、提取高光、重组、设计开场钩子,以及根据需要进行的其他操作,以实现符合预期的效果。
- 动态图形叠加(面向用户的文案中请使用完整名称 Motion Graphics,不要写作“MG”;固定中文产品术语为 MG 动画,不要使用“动效”“字幕条”或“动态字幕”等替代说法)——通过屏幕动态图形强化关键信息、结构化内容和主题转换
- B-roll(行业术语——任何语言都保留为 “B-roll”,不要翻译)——遮盖跳剪,或将口述内容可视化
- 背景音乐(中文产品术语:背景音乐)——营造氛围并平滑细微间隙
- 字幕(中文产品术语:字幕)——添加屏幕文字,提升无障碍体验
- AI Voice Isolation(中文产品术语:AI 人声隔离)——使用 DeepFilterNet3 清理或隔离人声,不改变画面。请参阅
voice-isolation技能。
当用户使用中文时,在 widget 选项、choices 选项和对话文案中,使用上面括号中的准确产品术语。不要重新翻译这些术语,否则会与产品其他位置的术语冲突。
影响剪辑的因素
除了选择剪辑处理方式之外,出镜口播剪辑还受几个相互独立的变量影响。当用户的需求比较模糊时,值得优先确认以下内容:
- 目标——平台(YouTube / TikTok / Shorts / ...)、期望时长、宽高比
- 要应用哪些剪辑处理——上述处理方式均为可选项;不要假设它们都适用
- 节奏 / 语气——紧凑 / 活力 / 正式 / 随意;以及用户提到的品牌或声音偏好。(MG 视觉风格请遵循当前启用的 Motion Graphics 技能/工作流。)
如果上述变量中有多个尚未明确,请在加载 widget-forms 后使用一个表单提问。不要先用 Markdown 编号问题提问,再为同一组需求中的某一部分附加 <choices/>。
执行顺序
如果用户已确认多个处理事项,这些事项之间就存在依赖关系,必须按依赖顺序完成。本节仅适用于已确认处理事项之后——它不会告诉你收到新请求时应该从哪一步开始。
语音时序(由 A-roll 剪辑确定)是后续所有工作的基准——MG 的放置、B-roll 补镜、音乐时长和字幕同步都以最终语音时间线为准。
因此:先完成 A-roll 剪辑,再处理任何视觉、音频或文字图层。不要根据剪辑前的语音撰写字幕,不要按剪辑前的时长裁切音乐,也不要把 MG 放在之后会发生变化的时间点上。
剪辑结构确定后,将 smooth_audio 作为最后一个音频步骤运行一次——它会为每个硬切音频点添加微交叉淡化,并为裸露的边缘添加淡入淡出,避免剪辑点突兀。请在 apply_script/clean_script 重组后运行(重新流动会移除转场);它是幂等的,因此如果时间线再次变化,请重新运行。
每完成一个主要步骤后,必须先向用户确认结果,再开始下一步,除非用户已明确要求端到端运行,不要中途停下。多个处理事项同时适用时的关键检查点:A-roll 剪辑完成、语音时序确定后;生成 MG 前(确认风格和方向,并在不明确时确认它是作为叠加层覆盖在视频上,还是占据整个画面);生成 MG 后;B-roll、音乐和字幕也遵循相同模式。**不要在一次回复中合并多个检查点——每一步都要单独确认。**上游出错会导致下游所有工作都要重做(例如,按照清理前的时间线放置 MG,会在时间线变化后浪费生成额度)。
A-roll 剪辑
场景
在对谈视频工作流中,第一步通常是 A-roll 剪辑:剪辑原始口播素材。
A-roll 剪辑最终会应用到时间线上,改变观众实际听到和看到的内容。不过,剪辑决策通常应从转录文本开始,因为核心问题是:观众应该听到哪些口播内容,哪些内容应该删除、压缩或重新排序?
常见的 A-roll 任务
A-roll 剪辑不只是清理。首先要判断用户希望处理哪类口播内容,然后选择剪辑策略和工具。
常见任务:
- 清理 — 删除错误、重复尝试、口头习惯、填充词和无意义的停顿,让口播更清晰、更自然。
- 提取亮点 — 从较长的素材中提取最有价值、最具观点性、最能引发情感共鸣或最切合主题的片段。
- 重组 — 重新排列口播内容,例如提前呈现结论、按主题分组,或将分散的部分整合成更清晰的结构。
- 开场钩子 / 短版 — 将源素材中的有力主张、结果、冲突或问题用作开场,或将长内容压缩成短版。
- 按目标脚本剪辑 / 脚本对齐 — 根据用户提供的目标脚本、目标段落或期望内容,匹配、保留并重新排列口播内容。
清理是最常见的任务,也最容易因边界判断不当而失败。下文将对此进行详细说明。其他任务的规则会更简短,但仍遵循 A-roll 的共同原则:语义完整、边界清晰、聆听流畅自然。
A-roll 通用原则
这些原则适用于所有 A-roll 任务,而不只是清理。
- 先确定任务,再选择工具。 不要让工具的可用性改变编辑策略。
- 按完整的语义单元编辑。 尽可能移动、删除或保留完整的句子、完整的观点、完整的回答或完整的步骤。不要仅仅因为几个词匹配,就删掉半句话。
- 任务指定保留内容时,按指定边界裁剪。 上述规则的反向适用于任何指定要保留哪些内容的任务——还原特定句子、匹配目标脚本、提取指定的精彩片段或制作一个版本:只保留明确要求的部分。将保留范围裁剪至指定内容的起始词和结束词,并删去它所在源片段
[sN]中不符合脚本的开头或结尾;为了一个指定句子而保留整个片段,属于过度保留,会带入未要求的讲话内容。此规则仅适用于指定要保留哪些内容的任务——绝不适用于开放式清理;开放式清理应保留完整的语义单元(见上文)。 - 不要拼接不同重录中的未完成片段。 不要把不同尝试中的不完整部分拼成一句虚构的句子。这并不意味着较早的尝试可以直接丢弃:如果其中有完整且有用的引入、铺垫、对比、类别、评价或背景,且后面没有重复,并且能自然衔接后面完整的重录,就应予以保留。
- 保留衔接内容。 删除后会让保留的观点变得不合语法、突兀或容易误解的列表标签、对比词、主语、动词和相邻原文,都不是填充内容。裁剪时应只删去能保持语句流畅表达的最小范围。
- 保持自然的聆听节奏。 成片的措辞和停顿应保持自然。不要为了让内容显得“干净”,而把句子硬拼在一起。
- 边界不确定时,采取保守做法。 如果不确定删减是否会损害含义、逻辑或聆听节奏,就保留内容或少删一些。
- 先确认复杂改动。 对于复杂重组、大幅缩短、结构调整或生成式开场,在编辑前先与用户确认目标时长、结构方向以及需要保留的内容。
- 解释内容,不解释索引。 绝不能用
[sN]、[cN]、[gap]、词语索引、片段 ID 或分段 ID 等内部地址向用户解释编辑内容。用户看不到这些地址,也不会明白其含义。请引用实际说出的内容、简短原话,或用通俗语言描述编辑内容。 - 不要用屏幕方位描述面板。 邀请用户查看或微调结果时,称其为“文字稿面板”——绝不要使用方位描述(左侧/右侧/侧边)。布局可以调整,面板的位置并不固定。
清理目标与决策
良好清理的标准
良好的清理不意味着尽可能缩短视频,也不意味着把说话者改写成另一套脚本。
良好的清理意味着:
- 逻辑连贯
- 表达更清晰
- 音频听起来自然
- 删除明显的错误、重复尝试、无意义的停顿和填充词
- 保留说话者的意图、语气和自然节奏
糟糕的清理通常会落入两种问题:
- 清理不足:明显错误、重复、长时间停顿或填充词仍然保留。
- 清理过度:句子被截断、含义缺失、节奏变得生硬,或结果听起来像拼接而成。
默认原则:去除瑕疵,但不改变含义;让讲话更流畅,而不是更生硬;优先做小范围的局部剪切,而非删除整句或整个片段;如果不确定删减是否会损害含义,就保留内容。
如何判断常见的清理情况
以下是常见的清理类别,以及各类别对应的编辑决策方式。
无意义的填充词
填充词分为两类。
第一类是明显没有意义的犹豫声。这些通常可以安全删除:
umuherah呃额えー/えーと/えっとあーんー
如果它们没有特殊含义,可以使用 clean_script 批量清理其支持的字面词条:um、uh、er、ah、呃 和 额。日语犹豫声需要通过 Script 编辑(read_script → 编辑 timeline.md → apply_script);clean_script 目前不会移除它们。
第二类取决于上下文,不能仅凭词表删除:
solike然后就是嗯啊那个那对所以但是あの/あのーその/そのーまあなんかちょっとでうーんやっぱり
判断方法:
- 如果这个词只是表示犹豫或填充语气,就删除。
- 如果它表达顺序、延续、转折、原因、指代、回应、强调或自然语气,就保留。
- 如果删掉后会让前后词语听起来像是生硬拼接,就保留它,或只缩短停顿。
- 如果不确定,就保留。
示例:
um, I think this solves the main problem-> 删除um。It works like a checklist-> 保留like;它表示比较。The upload failed, so we retried it-> 保留so;它表达因果关系。right after the call, send the recap-> 保留right;它修饰时间。然后我们再看第二点-> 保留然后;它标示顺序。えーと、次のポイントです-> 删除えーと;它纯粹表示犹豫。あの人が言っていた通りです-> 保留あの;它是指示词,不表示犹豫。あの、ちょっと待ってください-> 删除句首的あの;这里它表示犹豫。まあ、悪くないと思います-> 保留まあ;它缓和了判断语气,也传达了语调。なんか違和感がある-> 保留なんか;这里它表示“总觉得”,不是填充词。
重录与重复尝试
重录是指说话者因为说错、卡壳、忘词或重新起头,而再次尝试表达同一个想法。清理重录并不是“删掉重复的文本”。目标是保留一个完整、自然且逻辑连贯的版本,以表达原本想说的内容。
请按以下步骤判断:
- 判断这是否确实是重录。 只有当多次尝试都是为了表达同一个想法时,才将其视为重录。如果重复是为了刻意强调、营造修辞停顿、充当结构标记,或再次表达时增加了新信息或语气,则不要将其视为普通重录。
- 确定要保留的完整版本。 完整版本可能不止包含主要内容句。它可能还需要引入语、连接词、章节标记、话题铺垫、对比、限定语、主语、宾语或结论。如果保留的内容依赖这些部分,它们就不是填充内容。
- 只删掉失败或被覆盖的部分。 只删除错误、悬空、放弃的,或已被保留版本完全涵盖的词语。删减边界应从重复或失败的想法处开始,而不是自动从更早的转折、铺垫或连续话语处开始。如果前面的内容包含保留版本没有重复的有用上下文,就应保留。
- 选择最完整的尝试。 如果有多个完整版本,通常优先选择较晚的版本,因为它往往更接近说话者想要表达的内容。但不要机械地选择最后一次尝试。如果较晚的尝试缺少必要的上下文、结构、主语、宾语或结论,就保留更完整的版本,或保留较早版本中缺失的引入语。
只有在保留的内容仍能与另一个意思相同的引入语自然衔接时,重复的引入语才是多余的。如果删掉所有副本会导致结果失去结构或听起来突兀,就保留一个自然的版本,只删掉多余的重新起头。不要把不同尝试中未完成的片段拼接成一个生硬的句子。
以下示例仅展示常见模式,并非完整列表:
- 保留句子中的局部口误:
There, there's no After Effects, no Premiere, no DaVinci Resolve learning.保留完整句子,但删除放弃的重启片段:There's no After Effects, no Premiere, no DaVinci Resolve learning.不要仅仅因为完整句子本身有用,就保留多余的第一个词。 - 重复的结构性引入语:
And secondly, ... and secondly, we're introducing a brand new UI.删除多余的重启片段,但保留一个与后续内容自然衔接的引入语:And secondly, we're introducing a brand new UI.不要删掉所有结构标记,只留下:We're introducing a brand new UI. - 失败结尾前有用的铺垫:
Then the next one is different from comedy. It is popular on Disney Plus. It is called...后续重录:It is a popular Disney Plus show called Love Story.保留后续重录没有重复的有用铺垫,并从失败处开始删减:Then the next one is different from comedy. It is a popular Disney Plus show called Love Story.
说到一半重来和未完成的片段
此类别使用 false starts / unfinished fragments。对于说话者开始一句话后又重新开始或放弃的情况,「说到一半重来」是更自然的编辑/转录术语;「未完成的片段」则明确涵盖了悬而未决的半句话。
只有在某个片段明显没有提供有用信息时,才将其删除。
可以放心删除:
- 说话者放弃了这个想法,之后又出现了完整版本。
- 该片段只是一个悬而未决的短语,例如「这其实……」,后面没有补充完整。
- 这显然是一次失败尝试中残留的开头。
不要删除:
- 不够完美但包含有用信息的句子。
- 为后续内容提供必要主语、宾语或背景的引入语。
- 提供铺垫、对比、结论、情绪或语气的内容。
如果句子或片段中只有一部分有问题,不要删除周围有用的内容。只删除有问题的词语、短语或停顿;如果局部剪辑会导致听起来不自然,就保留该片段。
停顿和呼吸声
处理停顿时,默认应压缩,而不是完全消除。口播视频需要留出自然的呼吸空间。
默认规则:
- 明显超过 0.8-1 秒的长停顿:通常压缩至约 0.3 秒。
- 句子之间:保留约 0.3-0.5 秒,让听众感受到自然的表达节奏。
- 话题转换、对比或强调附近:必要时保留稍长的停顿;不要让表达节奏过于急促。
- 句子中的短暂呼吸:如果属于正常呼吸,不要删除。
- 句子中的明显长停顿:进行压缩,但不要压得太紧,以免相邻词语听起来连在一起。
- 重录前的长停顿:如果删除了其间失败的尝试,也一并删除停顿。
- 如果用户明确指定了阈值,应遵照执行。例如,如果用户说「只处理超过 0.8 秒的停顿,并至少保留 0.3 秒」,就不要处理短于 0.8 秒的自然停顿。
其他 A-roll 任务指南
只加载用户所选分支的参考资料。不要预先加载未请求处理的参考资料;默认清理无需参考资料。
对于清理以外的 A-roll 编辑场景——包括精彩片段提取、重组、钩子/短版本制作、目标脚本/脚本对齐,或制作多个版本、精彩片段和节选——在规划或编辑该 A-roll 分支之前,请完整阅读此技能基础目录中的 references/other-a-roll-editing-scenarios.md。
A-roll / 基于转录文本的编辑工作流
对于任何由转录文本含义驱动的 A-roll 任务,请使用此流程。
如果用户要求在应用前预览整个编辑结果,请勿先运行 clean_script,因为它会立即写入,且没有预览参数。调用 read_script({ showSilence: true }),将固定填充词删除标记、语义编辑和停顿编辑一并暂存到 timeline.md 中,然后调用 apply_script({ preview: true })。将停顿压缩编码为 [silence=Xs→Ys],其中使用 Unicode 字符 →;单独改为 [silence=Ys] 并不是跨界面改写语法,Web 不会将其作为压缩操作应用。删除带删除标记的填充词时,如果其左右两侧都保留了静音,删除后这两段时长会合并:250ms 的上限指合并后的保留总时长,而不是每侧各 250ms。例如,左侧从 0.48s→0.25s,右侧保持不变的 0.13s,合计为 0.38s;应将两侧分配到总计 0.25s,而不要指望规划器推断全局上限。如果预览验证通过,且请求已授权应用编辑,请立即再次调用不带预览的 apply_script;无需再次征求确认。如果用户明确只要求预览,则预览后停止。
对于可以立即应用的编辑,请使用以下流程:
- 从了解全局情况开始。调用
read_script,然后读取一次timeline.md,以了解用户的目标、内容结构,以及是否存在固定填充词或较长停顿。如果要运行clean_script,不要基于清理前读取的内容构建完整的语义编辑。 - 除上述优先预览的流程外,如果存在固定填充词或较长停顿,应先运行机械清理,再进行语义编辑。对于依赖上下文的填充词、重录内容、重复句子或任何需要理解含义的内容,不要使用此步骤。
- 运行
clean_script后,进行语义编辑前务必读取更新后的干净版timeline.md。以此更新后的文件为准;之前读取的文本可能已过时。然后进行语义判断:选择最佳重录版本,清理错误开头,删除重复或失败的尝试,保留有用的铺垫和上下文,必要时调整内容顺序,并保持讲话自然。使用当前文件系统工具架构:如果Edit提供edits数组,则批量处理相关的精确替换;否则使用其支持的精确替换字段,并在每次编辑后检查验证结果。行内删除线用于移除口述内容;切勿删除没有删除线标记的源文本,也不要在timeline.md中修正 ASR。 - 每次文件系统编辑后都会运行验证。如果返回诊断信息,已更改的
timeline.md仍是当前版本:读取该文件并使用Edit继续修正。只有验证通过后,才立即使用apply_script应用语义编辑,然后再开始另一轮全局处理。 - 读取重新生成的干净结果,并检查观众实际会听到的内容:逻辑是否断裂、上下文是否缺失、是否删减过多、是否遗漏清理、顺序是否错误,或停顿是否过短或过长。只修复明显的问题。
[sN] 行是 ASR 片段,并非语义单元。完整的句子、想法、重录内容或转场可能跨越多个 [sN] 行,而单个 [sN] 行也可能只包含句子的一部分。决定删除或保留哪些内容之前,请先在脑海中将相邻行拼合,还原完整的口述句子或想法。
MG Overlay
目标
叠加在 A-roll 上的动态图形能够强化说话者传达的内容,加深观众对重点的印象,并帮助他们理解仅靠口述难以传达的内容。请先完成 A-roll 编辑;MG 的时间安排以编辑后的时间线为准。
本节仅补充面对镜头内容的时间安排、画面构图、主体/字幕保护和审查约束。有关视觉风格对齐、MG 的创建或编写、实现约束、可编辑属性、素材尺寸和验证,请使用当前 ChatCut 环境中可用的 Motion Graphics 技能/工作流。
MG 工作流
对于真人出镜的 MG 项目,应将视频视为一支完整剪辑作品,而不是孤立的图形。
选择真人出镜 Motion Graphics 时,包括仅需规划或交接分析的请求,应先激活当前界面上可用的 Motion Graphics Skill:生成器 Skill 可用时,调用 Skill 并设置 skill: "motion-graphic-gen";在有意不提供该 Skill 的 Codex 上,则改为调用 Skill 并设置 skill: "create-motion-graphics"。然后,在进行规划、生成、放置或审阅 MG 之前,完整阅读该 Skill 基础目录中的 references/motion-graphics.md。本真人出镜指南提供针对具体场景的编辑背景,但不能替代当前激活的 Motion Graphics Skill。
B-roll
对于 B-roll,在搜集、选择、放置或审阅之前,完整阅读该 Skill 基础目录中的 references/b-roll.md。
Multicam(同一条拍摄素材的多个摄像机角度)
对于 Multicam,在对同一条拍摄素材的多个摄像机角度进行对齐或切换之前,完整阅读该 Skill 基础目录中的 references/multicam.md。
轨道角色(开启自动闪避)
对于轨道角色,在分配音频角色或更改闪避行为之前,完整阅读该 Skill 基础目录中的 references/audio-and-music.md。
背景音乐
对于背景音乐,在添加或调整音乐以适配视频之前,完整阅读该 Skill 基础目录中的 references/audio-and-music.md。
字幕
编辑字幕之前,完整阅读该 Skill 基础目录中的 references/captions.md。