Nodes/TrentNodes/Video Layer Ho Down
ComfyUI Node

Video Layer Ho Down

Five Compositing Layers You Drag Around With Your Mouse

By TrentHunter82·Created 9 months ago·Updated 4 days ago· 36
Video Layer Ho Down
  • background
  • layer_1
  • composited
anchor_pointtop_left
layer_1_x0
layer_1_y0
layer_1_scale1.00
layer_1_opacity1.00
layer_1_blendnormal

Most ComfyUI compositing workflows are a tangle of masks, blend nodes, and a constant stream of "wait, which input feeds which socket" backtracking. Video Layer Ho Down is the opposite: it's a proper little layer stack, up to five foregrounds over a background, where you position each layer by dragging it on a live canvas instead of typing coordinates. If you've ever opened a res4lyf workflow and wished compositing could be this forgiving, this is the node.

It's built for the case where you have transparent assets - logos, PNG cutouts, a title card, a foreground element with an RGBA alpha channel - and a background image or video batch they need to sit on. The compositor does the whole job in one node and everything runs on the GPU via PyTorch.

How it works

Each layer is composited independently: scale via bilinear interpolate, alpha blend via torch.lerp, and a small set of blend modes computed per-channel. The frontend is the fun part - a JS canvas shows your background with a checkerboard so transparency is visible, you click a layer to select it, drag to position it, and crosshair guides plus a coordinate readout tell you exactly where you're putting it. The x/y values write straight back into the layer's position widgets, so what you see is what runs.

The inputs that matter

One required input: background. Everything else is optional and appears as you use it - connect layer_1 and layer_2 shows up, up to five. For each layer you get:

  • layer_N_x / layer_N_y - position, set by dragging on the canvas. Range goes to ±8192, so partially off-screen placement is allowed on purpose.
  • layer_N_scale and layer_N_opacity - the obvious ones, 0.01–10 and 0–1.
  • layer_N_blend - normal, multiply, screen, overlay, or add. Five modes is a deliberate small set; if you need exotic blending this isn't the node.
  • anchor_point - whether x/y means the layer's top-left corner or its center. Default is top_left; flip it if you're positioning by middle.

Outputs

A single composited IMAGE batch. If your background is a video, single-frame foreground layers repeat across the whole batch automatically - batch size alignment is handled for you, which is where compositing pipelines usually fall apart.

Troubleshooting

The trap people hit first: feeding a foreground without an alpha channel. An RGB layer composites as a solid rectangle, because there's no transparency to reveal the background. Get an alpha channel onto the asset (mask-to-RGBA, or BiRefNet background removal) before it reaches this node. Also, the canvas positions layers in pixels relative to the background - if you swap in a different-size background later, re-drag, because positions don't rescale.

Installing

This is one node out of the TrentNodes pack (60+ nodes under the Trent/ menus), so install once for everything. ComfyUI Manager → search "Trent Nodes" → Install is the easy route; if Manager flags the pack (a day-one repo rename left a registry duplicate it still distrusts), clone manually:

cd ComfyUI/custom_nodes
git clone https://github.com/TrentHunter82/TrentNodes
cd TrentNodes
pip install -r requirements.txt

Restart ComfyUI. The node needs nothing beyond torch (ComfyUI's own) - the canvas is plain frontend JS.

CategoryTrent/Compositing

Inputs (8)

NameTypeDefaultDescription
backgroundIMAGEBase layer; all foreground layers composite on top
anchor_pointoptCOMBOtop_leftWhether x,y refers to the layer top-left corner or center
layer_1optIMAGEForeground layer 1; supports RGBA for transparency
layer_1_xoptINT0-8192–8192Layer 1 horizontal position; set by dragging on canvas
layer_1_yoptINT0-8192–8192Layer 1 vertical position; set by dragging on canvas
layer_1_scaleoptFLOAT1.000.01–10Layer 1 scale factor
layer_1_opacityoptFLOAT1.000–1Layer 1 opacity
layer_1_blendoptCOMBOnormalLayer 1 blend mode

Outputs (1)

NameTypeDescription
compositedIMAGEComposited image batch with all layers blended onto background