Nodes/S42 CutFlow/▦ S42 CutFlow Split Screen
ComfyUI Node

▦ S42 CutFlow Split Screen

Before/after, side-by-side, 2x2 grid, or diagonal — one compositor to rule them

By GeekyGhost·Created 6 months ago·Updated 4 months ago· 3
▦ S42 CutFlow Split Screen
  • clip_a
  • clip_b
  • clip_c
  • clip_d
  • clip
  • frame_count
  • info
layoutvertical_2
border_width2
border_color#FFFFFF
split_position0.50

Split Screen is the "show two things at once" node - original vs enhanced, model A vs model B, before vs after an effects chain. Where the pack's Side-by-Side node is a diagnostic comparison tool with labels, this one is the creative composition version: it tiles clips into one frame with a visible divider, and it'll do four-up grids and a diagonal split, not just the classic two-up. If you make any kind of comparison content, this is the node you'll reach for.

The layout choices

  • clip_a and clip_b are the two required clips (top/left and bottom/right respectively).
  • layout - the fun one. vertical_2 (left/right, the default), horizontal_2 (top/bottom), grid_4 (a 2×2 grid that needs clip_c and clip_d wired in from the optional inputs), and diagonal (a corner-to-corner split). The grid_4 mode is genuinely handy for showing one clip under four different grades or filters without leaving the graph.
  • split_position (float, 0.1–0.9, default 0.5) - where the split lands. 0.3 gives you a 30/70 split, which is the "show the result bigger than the original" trick for before/after content.
  • border_width (int, default 2) and border_color (hex, default #FFFFFF) - the divider line. A white divider reads clearly on any content; set width 0 if you want a seamless edge-to-edge join.

How it works

Resolution matching and tiling on standard IMAGE batches - it normalizes the clips so they sit together cleanly, then composites them per frame with the divider drawn in. Outputs are clip (the composited batch), frame_count, and info. Because everything's deterministic and batch-based, you can drop it at the end of a chain and it'll tile whatever the two branches produced without extra setup.

Installing it

The one-time S42 CutFlow install covers it:

cd ComfyUI/custom_nodes/
git clone https://github.com/GeekyGhost/S42-CutFlow.git
pip install -r S42-CutFlow/requirements.txt   # Windows portable: python_embeded\python.exe -m pip

Or ComfyUI Manager, search S42 CutFlow, install, restart. It lives under S42 CutFlow/Composition.

Gotchas

A couple of things worth knowing. First, the color picker for border_color is broken in this pack right now - the README calls it out explicitly - so you'll be typing hex by hand. Second, a 2×2 grid means each cell is a quarter of the frame, so at default resolutions the detail is small; run your grid_4 inputs through Quick Preview-sized clips or accept the thumbnail look. Third, if your two clips have different lengths, the output follows whichever length the compositor keeps - trim to match upstream if sync matters. And for actual A/B judgment calls, don't forget the pack's Side-by-Side node exists too: Split Screen is for finished comparison content, Side-by-Side is for honest evaluation (it labels the two inputs for you). Which one you want depends on whether you're shipping the frame or still deciding.

CategoryS42 CutFlow/Composition

Inputs (8)

NameTypeDefaultDescription
clip_aIMAGEFirst clip (top/left).
clip_bIMAGESecond clip (bottom/right).
layoutCOMBOvertical_2'horizontal_2' = top/bottom. 'vertical_2' = left/right. 'grid_4' = 2x2 grid (needs clip_c and clip_d). 'diagonal' = diagonal split.
border_widthINT20–20Border/gap between panels in pixels.
border_colorSTRING#FFFFFFBorder color (hex). Click the swatch to open color picker.
split_positionFLOAT0.500.1–0.9Where to split. 0.5 = even split. 0.3 = 30/70 split.
clip_coptIMAGEThird clip (for grid_4 layout).
clip_doptIMAGEFourth clip (for grid_4 layout).

Outputs (3)

NameTypeDescription
clipIMAGE
frame_countINT
infoSTRING