▦ S42 CutFlow Split Screen
Before/after, side-by-side, 2x2 grid, or diagonal — one compositor to rule them
- clip_a
- clip_b
- clip_c
- clip_d
- clip
- frame_count
- info
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), anddiagonal(a corner-to-corner split). Thegrid_4mode 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.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_a | IMAGE | First clip (top/left). | |
| clip_b | IMAGE | Second clip (bottom/right). | |
| layout | COMBO | vertical_2 | 'horizontal_2' = top/bottom. 'vertical_2' = left/right. 'grid_4' = 2x2 grid (needs clip_c and clip_d). 'diagonal' = diagonal split. |
| border_width | INT | 20–20 | Border/gap between panels in pixels. |
| border_color | STRING | #FFFFFF | Border color (hex). Click the swatch to open color picker. |
| split_position | FLOAT | 0.500.1–0.9 | Where to split. 0.5 = even split. 0.3 = 30/70 split. |
| clip_copt | IMAGE | Third clip (for grid_4 layout). | |
| clip_dopt | IMAGE | Fourth clip (for grid_4 layout). |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| clip | IMAGE | — |
| frame_count | INT | — |
| info | STRING | — |