关于 layer-video-direction
layer-video-direction 是用于规划 Layer 生成视频镜头的技能,涵盖摄影机运动、构图、镜头、光线和动作节奏。它面向需要导演单个镜头的创作者,帮助每个镜头聚焦一种摄影机意图并安排动作时机。
主要功能
- 01选择模型支持的结构化运镜
- 02设定构图、镜头和光线
- 03按片段时长安排主体动作
- 04查找电影技法参考集
- 05检查参考集是否适用于模型
适用场景
- 01为主角镜头设计单一运镜
- 02在表演镜头中保持摄影机固定
- 03安排角色在短片段中的反应节奏
- 04查找指定摄影风格的技法参考
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ layerai/ skills --skill layer-video-direction安装后在 Claude Code 中输入/layer-video-direction确认已加载。
详细介绍
Layer 视频运镜
概览
一个镜头,导演得当。生成的镜头常会以可预见的方式出问题:镜头本该固定时却发生漂移,两种运镜相互冲突,动作全挤在第一秒里,或者节奏太慢,什么也没发生。导演要做的,就是在生成之前确定镜头如何运动、主体如何行动,以及每个动作持续多久。
生成循环和成本关卡见 layer skill;静帧锚定、循环和草稿见 layer-video。若要在多个镜头中保持角色和场景一致,请参阅 layer-video-continuity。
如果你没有这里提到的某个同类 skill,请让用户安装它(npx skills add layerai/skills --skill <name>);在无人值守的情况下,根据工具 schema 继续操作,并指出缺少的内容。
快速参考
| 需求 | 方案 |
|---|---|
| 常见的镜头运动 | video_effects: [{type, weight}],其中的类型由 get_base_model 列出 |
| 镜头必须保持不动 | 若有 video_effects: [{type: "STATIC"}],则使用它,并在提示词中写明“固定机位” |
| 指定的电影运镜技巧 | 使用带有 filter.category 的 list_reference_sets,并将结果传入 reference_sets |
| 精确的片段时长 | 在经 capabilities: {fixed_duration: true} 筛选的模型上设置 duration_seconds |
| 支持结构化镜头运动的模型 | 使用带有 capabilities: {video_effects: true} 的 list_base_models |
video_effects 类型均为大写:GENERAL、ORBIT_360、DOLLY_IN、DOLLY_OUT、ZOOM_IN、ZOOM_OUT、CRANE_UP、CRANE_DOWN、TILT_UP、TILT_DOWN、STATIC、FPV_DRONE、HYPERLAPSE、HANDHELD。各模型的支持情况不同,因此选择前请先读取 get_base_model。weight 的取值范围为 0 到 100;如需使用模型默认强度,请留空;如果运镜效果喧宾夺主,请调低该值。
每个镜头只用一种运镜
一个镜头只承载一种镜头构想。一边推进,一边环绕,再同时倾斜,看起来就像设备故障;相比复合运镜,模型对单一明确的运镜处理得好得多。如果场景需要两种运镜,那就拆成两个镜头。
同一种运镜优先使用结构化效果,而不是文字描述:结构化效果就是模型接收的运镜输入。如果模型没有提供相应效果,请用摄影术语在提示词中描述运镜(“缓慢推进至她的脸部”“镜头向上升起,展现整座城市”),并让提示词的其余部分专注于主体。
选择运镜时,关注它表达的含义,而不是动感:
- 推进(轨道推进):逐渐增强紧张感,将注意力收拢到某个细节或面部。
- 拉远(轨道拉远):展现空间规模或孤立感。
- 环绕:展示主角、武器或产品,效果更像陈列,而不是戏剧表现。
- 升降镜头上升:表现登场或收尾;下降则让镜头落入场景。
- 手持:营造紧迫感和临场感;不适合平静的场景,也不适合需要精准呈现的内容。
- 固定镜头:突出表演和喜剧效果;让动作本身承载整个镜头。
希区柯克变焦(眩晕变焦)是在推进的同时反向变焦,并非 DOLLY_IN;请使用对应的 camera_movement 集合,或在提示词中描述这两个动作。
镜头、构图和光线
在提示词中用片场术语各说明一次,并在整个场景中保持一致:
- 构图:大远景、远景、中景、近景、大特写;平视、低角度、高角度、俯拍。
- 镜头:广角镜头可展现空间感,并在画面边缘产生畸变;长焦镜头可压缩景深,并营造柔和的背景。
- 光线:说明主光的方向和质感(左侧照来的正午硬光、柔和的阴天漫射光、低角度的暖色逆光),以及一天中的时间。未注明光线的镜头会采用均匀、平淡的默认效果。
技法预设
Layer 提供技法参考集,用于组合镜头运动、角度、取景、镜头、灯光、构图、氛围、类型风格、光学或视觉效果、节奏或表演。使用 list_reference_sets 发现这些参考集,并将 filter.category 设为 camera_movement、camera_angle、camera_framing、camera_lens、scene_lighting、scene_composition、scene_atmosphere、time_and_motion、genre_look、optical_effect、visual_effect 或 character_performance 之一;添加 filter.fulltext,搜索用户提到的技法。将选定的集合传入 reference_sets: [{set_id}]。不要硬编码集合:不同工作区的目录内容各不相同。
查看估算结果中的 reference_set_contributions。附加到图像模型的镜头集合会返回 skipped_irrelevant_category;任何集合在无法应用该集合的模型上都可能降级。当 reference_sets_degraded 为 true 时,说明哪个集合未能应用以及原因;绝不要声称它已应用。
控制片段节奏
片段很短,因此要根据时长安排动作。明确说明事件发生的时间:“开头一秒保持静止,然后突然转向镜头,剩下的时间表现反应”。如果不标注时间,模型会把动作均匀分布,呈现慢动作效果,或者把动作都放在开头,留下空白画面。
根据节拍设置 duration_seconds,而不是使用最大值。长度很重要时,筛选支持 fixed_duration 的模型;不支持该功能的模型会自行选择时长,并忽略请求而不报错。
对于表演,要给出节拍的起因和反应:“她听到门声,僵住,然后慢慢转身”。单独使用情绪词(“她看起来很害怕”)只会产生定格表情,而不是表演。
示例
“为预告片拍摄一段 5 秒的机甲主镜头:缓慢、威严,带有滑动变焦的感觉。”
- 已批准的机甲静帧有
file_id。无需上传。 - 使用
filter.use_case: "image_to_video"和filter.capabilities: {fixed_duration: true}调用list_base_models。选择第一个结果;调用get_base_model查看其video_effects类型和时长。 - 使用
filter.category: "camera_movement"调用list_reference_sets,并用filter.fulltext搜索用户提到的技法。使用前先向用户展示匹配结果。 - 提示词:“低角度,广角镜头。机甲开头一秒保持静止,然后头部慢慢转向镜头,面罩亮起。强烈的低位逆光,空气中有灰尘。”
- 使用静帧作为
{file_id, type: "first_frame"},设置duration_seconds: 5和reference_sets: [{set_id}],调用estimate_forge_price。查看贡献报告:如果该集合在此模型上降级,请移除base_model_id后重新估算,让服务选择适用该集合的模型;或者改用最接近的video_effects类型。如果超过 20 CUs,请征求明确同意并等待回复。 - 执行任务,按
poll_interval_seconds间隔轮询get_forge_run,并报告该集合是否已应用。
常见错误
- 在一个镜头中安排两三个镜头运动。
- 用文字描述镜头运动,但模型会将其视为
video_effects类型。 - 将
video_effects作为字符串列表传入,而不是传入{type, weight}对象。 - 不说明镜头的运动,任由模型添加偏移。
- 硬编码来自其他工作区的技法集合 ID 或名称。
- 未查看贡献报告就声称已应用某个技法集合。
- 用情绪词代替有时间安排的节拍。
- 在不支持
fixed_duration的模型上要求精确时长。