Nodes/ComfyUI Video Tiler/Video Tile Merge
ComfyUI Node

Video Tile Merge

Put the video back together — feathering, blending, and where your seams go

By maDcaDDie2000·Created 6 months ago·Updated about a month ago· 19
Video Tile Merge
  • tile_config
  • tiles
  • IMAGE
feather0.125
feather_curvelinear
blend_modealpha_over
merge_deviceauto

Slicing a video into tiles is only half the job. The other half - the half where people actually get visible seams - is putting it back together without the grid showing. Video Tile Merge is the pack's reconstruction node, and it's where the tile_config geometry and your feather settings finally pay off.

The mechanism is exactly what you'd want a merge to be: the node writes processed tiles into a single output buffer, and in the overlap regions it builds geometric alpha ramps whose width is controlled by feather. A tile's edges get weighted down toward the neighbor's, so no hard boundary survives. It also means the output is a real full-frame tensor again - [B,H,W,C] - which is what you'll encode.

The inputs that matter

  • tile_config - must come from the same slicer that produced the tiles. Mixing configs is the fastest way to a scrambled video.
  • tiles - the processed tile list, in slicer order.
  • feather - 0 to 0.5, the fraction of local tile width (horizontal ramps) and height (vertical ramps) used for the blend. Default 0.125 is a sane start. Seeing seams? Nudge it up.

Three optional knobs earn their keep:

  • blend_mode - alpha_over (painter order with a coverage gate) vs weighted_average (sum of weight×color over sum of weight). For symmetric, order-independent blending, weighted_average is the one that makes seams genuinely vanish.
  • feather_curve - linear, ease_in, ease_out, ease_in_out. Reshapes only the alpha mask, not tile positions. Easing makes the blend ramp feel less "mechanical" on strong edges.
  • merge_device - auto (keeps the first tile's device), cpu (system RAM), or cuda. If VRAM is your bottleneck, cpu keeps the merge out of the card entirely.

What comes out

Just the IMAGE - merged full frame batch. Wire it to a preview, a video encoder (the pack is VideoHelperSuite-compatible), or straight into Video Tile Reference Color Match if you're doing the full color-alignment pass.

Install

Standard for the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/maDcaDDie2000/comfyui-video-tiler

Restart, and you'll find it under Video Tiler. No extra dependencies, no models to download. Apache 2.0, vibe-coded, not actively maintained - if you hit a bug, the source is small and readable enough to patch yourself.

Where people get burned

The biggest trap is feeding a tile_config from a different slice than the tiles - the geometry won't match the crops and you'll get nonsense. Second is the "feather zero, blame the pack" move: no overlap means no ramp, and no ramp means seams. Third is forgetting that the merge is the memory summit of the whole in-memory workflow - the output frame exists as one tensor, and on very long clips that can still want serious RAM. When the in-memory path won't fit, that's exactly what the disk-backed merge nodes in this pack exist for.

CategoryVideo Tiler

Inputs (6)

NameTypeDefaultDescription
tile_configTILE_CONFIGSame TILE_CONFIG from the slicer that produced the tiles (version v3–v5 supported).
tilesIMAGEProcessed tile batch list (INPUT_IS_LIST). Same order as slicer tile list.
featherFLOAT0.1250–0.50–0.5: fraction of local tile width (horizontal ramps) and height (vertical ramps). Hard cap 50% per axis.
feather_curveoptCOMBOlinearRemaps geometric seam alpha (linear default). Easing reshapes only the mask, not tile positions.
blend_modeoptCOMBOalpha_overalpha_over: painter order + coverage gate. weighted_average: sum(weight×color)/sum(weight) with same geometry weights.
merge_deviceoptCOMBOautoauto keeps the first tile device. cpu uses system RAM for merge/output; cuda uses VRAM when available.

Outputs (1)

NameTypeDescription
IMAGEIMAGEMerged full frame batch [B,H,W,C]. Wire to preview, encode, or Reference Color Match.