关于 layer-video-fixes
Layer 的视频修复技能,面向需要保留现有镜头表现的创作者,按单一缺陷选择对应修复用途,而不是重新生成整段视频。内容涵盖对象替换、延长、插帧、去噪和升频等处理。
主要功能
- 01按缺陷选择对应视频修复模型
- 02从原始素材分别处理独立问题
- 03保留源视频音频
- 04调整片段长度与帧率
- 05控制升频比例和细节保真
适用场景
- 01替换镜头中的错误物体
- 02延长被截断的动作片段
- 03为视频去噪或去模糊
- 04为交付素材提升分辨率
MCP 相关
该技能指导通过 Layer 工具选择视频修复模型、读取输入槽位、估价并提交处理任务,再轮询运行结果。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ layerai/ skills --skill layer-video-fixes安装后在 Claude Code 中输入/layer-video-fixes确认已加载。
详细介绍
Layer 视频修复
概述
一段有 90% 符合要求的视频片段,价值胜过重新生成。一再重生成会丢掉已经合适的动作、时机和表演,还会带来一系列新问题。Layer 为大多数单项缺陷提供了对应的用例,因此,任务是明确缺陷,选择只修复该缺陷的用例,并让其他内容保持原样。
从头生成视频片段用 layer-video;将已完成的视频片段剪辑到一起用 layer-video-timeline。循环流程、费用门控和轮询都在 layer 技能中。
如果这里提到的某项同类技能不在可用技能中,请让用户安装(npx skills add layerai/skills --skill <name>);若无人值守,请根据工具架构继续操作,并指出这一缺失。
快速参考
每种修复路径都使用 list_base_models,并按下表设置 filter.use_case;选择第一个结果。
| 症状 | use_case |
|---|---|
| 视频片段结束太早,动作被截断 | video_extend |
| 中间缺少一个瞬间 | insert_video |
| 一个元素不对(颜色、道具、背景) | video_editing |
| 镜头中出现了错误的物体 | video_object_swap |
| 角色不对,或角色与设定不符 | video_character_swap |
| 表演合适,主体不对 | motion_transfer |
| 光照与剪辑进来的场景不协调 | relight_video |
| 动作卡顿,或镜头需要慢动作 | video_interpolation |
| 分辨率太低,无法交付 | upscaling |
| 有颗粒感或压缩噪点 | denoise_video |
| 画面柔和或有运动模糊 | deblur_video |
| 需要将标准动态范围母版转为 HDR | sdr_to_hdr_video |
首次调用前先查看模型
这些模型对输入的要求比生成模型更加不一致。架构不会规定修复模型从哪个引导槽读取源视频片段(init_video 或 reference_video),也不会规定替换主体应放在哪个位置(reference_image、face 或某种 element_* 类型)。对选定的模型调用 get_base_model,并使用它列出的槽位;切勿因为另一个模型使用了某个槽位,就想当然地沿用。若修复需要同时提供两个输入,可用 filter.guidance_file_types 缩小搜索范围,例如 ["init_video", "reference_image"],这样只会保留同时接受这两种输入的模型。
引导文件是 guidance_files 中的 {file_id, type} 对象。之前运行生成的视频片段已有 file_id;直接传入即可。仅当素材位于本地时才上传,并使用 request_file_upload_url。
从原始视频修复
每经过一次模型处理,都会损失一些细节。将三次修复串联起来,效果不如分别基于源文件完成三次修复;损失会累积,最先影响人脸和细致纹理。保留原始 file_id 作为母版;各项修复互不依赖时,都基于母版进行;只有后续修复确实需要前一步的结果时才串联处理(最后再提升分辨率,等内容确定后再做,因为提升分辨率后还要编辑视频片段就浪费了)。
若只需修复视频片段的一部分(例如最后两秒的慢动作),请先用 render_video_timeline 编辑(start_from_in_seconds 和 duration_in_frames,layer-video-timeline)剪出该片段,然后再修复剪辑后的文件。
音频、时长和帧率
- 音频。 设置
keep_audio: true,以便修复时保留源视频的音频。否则,请假设输出可能没有声音,并在交付前检查。 - 时长。 扩展、插入和插帧都会改变视频片段的时长,有些替换操作也会改变时长。请告知用户新的时长,尤其是片段位于配乐剪辑中的情况。插帧生成的慢动作镜头按设计会更长;替换后的视频变短则属于缺陷。
- 帧率。 只有支持
fps的模型才会采用该参数(get_base_model会说明)。要达到目标帧率,请请求插帧,而不要使用模型会忽略的帧率生成视频。 - 尺寸。 调整画面时,请同时传入
width和height。如果缺少其中任意一个参数且附带了源文件,输出尺寸将沿用源文件。
升频时,upscale_ratio 用于设置倍数(2.0、4.0)。creativity 和 resemblance 用于权衡生成细节与忠实度;处理包含人脸或文字的素材时,请保持较高的相似度。
定价
forge 指南按源视频的时长为视频编辑定价,按源视频的尺寸为升频定价。不附带源文件进行估价,算出的是另一种运行的价格,因此传给 estimate_forge_price 的参数必须与 execute_forge 实际收到的参数完全一致。对时长不同的视频片段进行多项修复时,需要分别估价,不能只估一次再乘以修复项数。汇总费用,并在花费超过 20 CUs 前征求用户同意。
操作示例
“主角的 6 秒片段除了中途剑变成了法杖之外都很完美。另外,请把它做成 4K,用于预告片。”
- 该片段是先前运行生成的输出,因此有一个
file_id。将其保留为母版。 - 第一个缺陷是物体错误:使用
filter.use_case: "video_object_swap"调用list_base_models。取第一个结果,并调用get_base_model查询其源文件槽位和替换槽位。 - 第二个缺陷是尺寸:使用
filter.use_case: "upscaling"和filter.modality: "video"调用list_base_models;再调用get_base_model查询其槽位和比例限制。 - 执行任一操作前,先为两项操作分别估价:替换操作调用
estimate_forge_price,在其指定槽位中附加母版,将已批准的剑作为替换物,设置keep_audio: true,并使用只描述变更的提示词:“将主角右手中的法杖替换为已批准的长剑。保持动作、时序和其他所有内容不变。”然后针对 6 秒源视频,使用upscale_ratio: 2.0估算升频费用。报出总价;超过 20 CUs 时,等待用户确认。 - 调用
execute_forge执行替换操作;按poll_interval_seconds间隔轮询get_forge_run。检查时长仍为 6 秒,并确认每一帧中的剑都保持稳定。 - 对替换操作的输出升频(使用步骤 5 中的
file_id)。这是必须最后执行的唯一修复操作。轮询完成后,告知用户两个file_id值以及时长是否有变化。
常见错误
- 只需一种用例即可修复片段的唯一缺陷,却重新生成整个片段。
- 不查看
get_base_model,直接假定源文件槽位。 - 将相互独立的修复接连应用于彼此的输出,而不是分别应用于母版。
- 先升频,再编辑升频后的片段。
- 未设置
keep_audio,导致配乐丢失。 - 交付修复后的片段时,不说明时长发生了变化。
- 多项修复的源视频时长或尺寸不同,却只用一次估价。
- 提示词提供完整场景描述,而不是只描述需要变更的内容。