layer-video-looks
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseLayer Video Looks
Layer 视频视觉风格
Overview
概览
A look is the finish that makes separate shots read as one piece. On Layer it lives in the timeline:
every video and image item in takes an list plus its own ,
, , and fields. No model runs to apply them, so a look is exact
to repeat; the render is still priced by .
render_video_timelineeffectsblurbrightnesssaturationhueopacityestimate_video_timeline_priceAssembly itself (sequence, transitions, overlays, audio) is . This skill covers
the finish on top of it. A look the timeline cannot make, such as relighting a shot or restyling its
content, is a generation: see .
layer-video-timelinelayer-video-fixesIf a sibling skill named here is missing from your available skills, ask the user to install it
(); unattended, proceed from tool schemas and flag the
gap.
npx skills add layerai/skills --skill <name>视觉风格是让不同镜头看起来像同一部作品的最终处理效果。在 Layer 中,它通过时间线实现:
中的每个视频和图像项目都接受一个 列表,并且各自带有 、
、、 和 字段。应用这些效果时不会运行模型,因此视觉风格可以精确复现;
渲染价格仍由 估算。
render_video_timelineeffectsblurbrightnesssaturationhueopacityestimate_video_timeline_price时间线本身的组装(序列、过渡、叠加、音频)属于 。本 skill 涵盖叠加在其上的最终处理效果。
如果视觉风格无法由时间线实现,例如重新布光或重塑镜头内容风格,则属于生成任务:参见 。
layer-video-timelinelayer-video-fixes如果这里提到的某个同级 skill 未安装在你可用的 skills 中,请要求用户安装
();无人值守模式下,则根据 tool schemas 继续操作,并标记该
缺失项。
npx skills add layerai/skills --skill <name>Quick reference
快速参考
| Look | Effects, in this order |
|---|---|
| Brand wash | |
| Retro CRT | |
| Film | |
| Glitch hit on a cut | |
| Green or blue screen | |
| Cut-out logo or character | |
| Dreamy highlights | |
| Plain grade | Item fields: |
Every effect is with camelCase params, and every param has a default,
so alone is valid. Colours are objects, 0 to 255.
, , , and are item fields, not effects: and
are multipliers from 0 to 2 (1 unchanged), rotates -180 to 180 degrees.
{type: "<name>", ...params}{type: "vignette"}{red, green, blue, alpha}blurbrightnesssaturationhueopacitybrightnesssaturationhuerender_video_timeline{workspace_id, template, videos, images, audios}template{width, height, fps, tracks: [{id, name, items, transitions}]}{id, type, start_frame, duration_in_frames}file_idslotlayout {left, top, width, height}effectsstart_from_in_secondsvolumesolidcolor{red, green, blue, alpha}generation_idget_generation_run| 视觉风格 | 效果(按此顺序) |
|---|---|
| 品牌色罩染 | |
| 复古 CRT | |
| 胶片 | |
| 剪切点上的故障冲击 | |
| 绿幕或蓝幕 | 先使用 |
| 抠像 logo 或角色 | 对带透明度的图像使用 |
| 梦幻高光 | 使用带 |
| 基础调色 | 项目字段: |
每个 effect 都是 ,params 使用 camelCase,并且每个参数都有默认值,
因此仅写 就是有效用法。颜色是 对象,取值范围为 0 到 255。
、、、 和 是项目字段,而不是 effects: 和
是 0 到 2 的乘数(1 表示不变), 以 -180 到 180 度进行旋转。
{type: "<name>", ...params}{type: "vignette"}{red, green, blue, alpha}blurbrightnesssaturationhueopacitybrightnesssaturationhuerender_video_timeline{workspace_id, template, videos, images, audios}template{width, height, fps, tracks: [{id, name, items, transitions}]}{id, type, start_frame, duration_in_frames}file_idslotlayout {left, top, width, height}effectsstart_from_in_secondsvolumesolidcolor{red, green, blue, alpha}generation_idget_generation_runOrder is the look
顺序决定视觉风格
Effects apply in list order, each on the result of the one before. Order changes the picture:
- Key first. must see the screen's true colour. A
colorKeyortintahead of it shifts the green and the key leaves patches behind.exposure - Grade before texture. Put ,
tintandduotoneahead ofcontrastandnoise, so the grain sits on top of the colour instead of being recoloured by it.scanlines - Distortion last. ,
waveandfisheyebend whatever reaches them; place them after the texture so the scanlines bend with the picture.zoomBlur
effects 按列表顺序应用,每一项都作用于前一项的结果。顺序会改变画面:
- 先抠像。 必须看到屏幕的真实颜色。在它之前应用
colorKey或tint会改变绿色,导致抠像后残留色块。exposure - 先调色,后加纹理。 将 、
tint和duotone放在contrast和noise之前,让颗粒叠在色彩之上,而不是被色彩重新着色。scanlines - 失真最后。 、
wave和fisheye会扭曲到达它们的画面;将它们放在纹理之后,让扫描线随画面一起弯曲。zoomBlur
One list, every clip
一份列表应用到所有片段
A look holds only if every clip that shares it carries the same list with the same params.
Build the list once and copy it onto each item. A second clip with a slightly different
reads as a mismatch, which is worse than no look at all.
effectstintamountGrade toward the shots, not away from them. Shots generated at different times differ in exposure and
saturation; level them first with the item's and fields, then apply the
shared list.
brightnesssaturation只有共享同一视觉风格的每个片段都带有完全相同的 列表和相同参数时,风格才能保持一致。
先构建一次列表,然后将其复制到每个项目上。第二个片段的 只要稍有不同,就会显得不匹配,
甚至比完全不使用视觉风格更糟。
effectstintamount调色应贴近镜头,而不是背离镜头。不同时间生成的镜头在曝光和饱和度上会有差异;先用项目的 和
字段将它们拉平,再应用共享列表。
brightnesssaturationParams are fixed for the whole item
参数在整个项目内保持不变
The timeline has no keyframes. An effect's params hold for the item's whole span: a with
is a sheen parked in the middle, not one that sweeps across, and
is one phase of the leak, held.
shineprogress: 0.5lightLeakprogressTwo ways to get movement:
- Stepped items. Split the span into several short items of the same file on one track, each with
continuing where the last stopped, and raise
start_from_in_secondson each. Four to six steps read as motion on a short sheen.progress - Generate it. A sweep that must be smooth is a video generation with the motion in the prompt
(), not a timeline effect.
layer-video
The same split confines an effect to a moment: cut the clip into before, hit and after items on one
track, and give only the few-frame hit item . Do not stack the pieces on separate
tracks; items on one track must not overlap in time.
tvSignalOff时间线不支持关键帧。effect 的参数会在项目整个时长内保持不变: 的 表示光泽停在中间,
而不是扫过画面; 的 也表示漏光停留在某个阶段。
shineprogress: 0.5lightLeakprogress获得运动的两种方式:
- 拆分项目。 将时长拆成同一文件在一条轨道上的若干短项目,每个项目的 从上一段结束处继续,并逐步提高
start_from_in_seconds。对于短光泽效果,四到六个步骤就能呈现出运动感。progress - 直接生成。 必须平滑扫过的效果属于视频生成,应在提示词中描述运动(),而不是使用时间线 effect。
layer-video
同样的拆分方式也可将 effect 限制在某个时刻:在一条轨道上将片段拆成前段、冲击段和后段,并且只给几帧长的冲击段应用 。不要把这些片段堆叠到不同轨道上;同一轨道上的项目在时间上不得重叠。
tvSignalOffKeying a screen
对屏幕进行抠像
colorKey{red: 0, green: 255, blue: 0}keyColor{red: 0, green: 0, blue: 255}similarityspillSuppressionsmoothnessTracks composite in reverse order, so Track 1 is on top. The keyed clip goes on a track above the
background it should reveal.
colorKey{red: 0, green: 255, blue: 0}keyColor{red: 0, green: 0, blue: 255}similarityspillSuppressionsmoothness轨道按反向顺序合成,因此 Track 1 位于最上层。抠像片段应放在其应显露背景的轨道之上。
Filling around a contained clip
填充包含式片段周围的区域
A 16:9 clip in a 9:16 frame leaves bars. The schema's own fix: put a second copy of the clip on a
lower track with a full-frame , , , a high
, , and its lowered, then show the clip above it with
. The frame fills with the clip's own colours instead of black.
layoutis_auto_layout: falsecontent_fit: "cover"blurvolume: 0brightnesscontent_fit: "contain"在 9:16 画框中使用 16:9 片段会留下黑边。schema 本身提供的修复方法是:在较低轨道上放置该片段的第二份副本,设置全画框 、、、较高的 、,并降低其 ;然后在上层显示原片段并设置 。这样画框会由片段自身的颜色填满,而不是黑色。
layoutis_auto_layout: falsecontent_fit: "cover"blurvolume: 0brightnesscontent_fit: "contain"Worked example
实例
"Give these four approved gameplay shots a retro arcade look, and put our presenter, shot on green
screen, over the last one."
- All five clips came from earlier runs, so each has a ; nothing is uploaded.
file_id - Build one list for the gameplay clips:
. Copy it unchanged onto all four gameplay items on Track 2.
[{type: "contrast", amount: 1.15}, {type: "scanlines", amount: 0.2, spacing: 4}, {type: "noise", amount: 0.12}, {type: "chromaticAberration", amount: 3}] - The presenter goes on Track 1, spanning the last shot, with
: key first, then the same texture so the presenter sits in the same world.
[{type: "colorKey"}, {type: "scanlines", amount: 0.2, spacing: 4}, {type: "noise", amount: 0.12}] - A three-frame item at the cut into the last shot, split from the clip as above.
tvSignalOff - with the full input. Present the table; above 20 CUs wait for an explicit yes.
estimate_video_timeline_price - with the same input. Poll
render_video_timelinewith the returnedget_generation_runat the interval it gives, never a fixed sleep.generation_id - Watch it end to end. If green patches remain on the presenter, raise a step and re-render; if the hair edge is eaten, lower it.
similarity
“为这四段已获批准的游戏画面赋予复古街机风格,并将我们在绿幕上拍摄的主持人叠加到最后一段画面上。”
- 五个片段都来自之前的运行,因此每个都有 ;无需上传。
file_id - 为游戏画面构建一份 list:
。将其原样复制到 Track 2 上的所有四个游戏画面项目中。
[{type: "contrast", amount: 1.15}, {type: "scanlines", amount: 0.2, spacing: 4}, {type: "noise", amount: 0.12}, {type: "chromaticAberration", amount: 3}] - 主持人放在 Track 1 上,时长覆盖最后一个镜头,并应用
: 先抠像,再添加相同纹理,让主持人融入相同的视觉环境。
[{type: "colorKey"}, {type: "scanlines", amount: 0.2, spacing: 4}, {type: "noise", amount: 0.12}] - 在切入最后一个镜头的剪切点放置一个三帧的 项目,并按照上述方式从片段中拆分。
tvSignalOff - 使用完整输入调用 。呈现表格;如果价格超过 20 CU,等待用户明确同意。
estimate_video_timeline_price - 使用相同输入调用 。按照返回的间隔,使用返回的
render_video_timeline轮询generation_id,切勿使用固定休眠时间。get_generation_run - 从头到尾观看成片。如果主持人身上残留绿色斑块,将 提高一级并重新渲染;如果头发边缘被误抠,则降低该值。
similarity
Common mistakes
常见错误
- A different effect list, or different params, on clips meant to share a look.
- A or
tintahead ofexposure, so the screen no longer matches the key colour.colorKey - Expecting or
shineto move across a clip; params are fixed per item.lightLeak - Putting the keyed clip on a lower track than its background.
- or
dropShadowon a clip with no transparency; the schema says they work best on cut-outs.outline - Glitching a whole clip when the hit belongs on a few frames at the cut.
- Reaching for a generation to recolour footage the timeline can already grade.
- Uploading clips that Layer generated and that already carry a .
file_id
- 为本应共享同一视觉风格的片段使用不同的 effects 列表或不同参数。
- 在 之前应用
colorKey或tint,导致屏幕颜色不再匹配抠像颜色。exposure - 期望 或
shine扫过片段;参数在整个项目内保持固定。lightLeak - 将抠像片段放在背景轨道下方。
- 对不带透明度的片段使用 或
dropShadow;schema 指出这些效果最适合抠像素材。outline - 故障冲击只应出现在剪切处几帧内,却对整个片段应用 glitch。
- 时间线已经可以完成片段的重新着色,却仍使用生成任务。
- 上传 Layer 已经生成且带有 的片段。
file_id