ComfyUI Node

UniST Video

Style-transfer a whole clip without the flicker (square-only, naturally)

By FuouM·Created 2 years ago·Updated about a year ago· 15
UniST Video
  • src_video
  • style_video
  • out_img
do_cropfalse
size512

UniST Video is the second half of the UniST story in ComfyUI-StyleTransferPlus: the exact same transformer model, but wired for actual video. You feed it a frame sequence and a style reference and it returns a stylized frame sequence. It exists because UniST was trained with a temporal-consistency objective on groups of three consecutive frames, and to get flicker-free results you have to respect that grouping.

Here's the pack author's own framing, and it's worth taking literally:

The Video node is "more native" than the Image node for batched images (video) inputs. The model works with batch=3 (3 consecutive frames), so we split the video into such.

So the mechanism difference is simple and concrete: the image node processes each frame alone; this node slices your batch into triples of consecutive frames and runs them through the model together, so the temporal-consistency machinery kicks in. That's the difference between "stylized clip that shimmers" and "stylized clip that holds together."

What it actually takes

ComfyUI represents video as a batch of IMAGE tensors, so this node's inputs are still typed IMAGE - you'd feed it from a Load Video / frame-loader node. The inputs:

  • src_video - the content frame sequence.
  • style_video - style frames. It's named "video" because it's a batch; a single style frame in a batch of 1 works fine.
  • size - square edge length (default 512).
  • do_crop - resize-then-center-crop to square.

Output: out_img (IMAGE), a batch matching your input frame count → straight into a Video Combine/Save node.

And the same caveat as its sibling applies: square-only. The model resizes everything to size×size. Plan your content and style as squares, or use do_crop and accept the crop.

Install

Same pack, same three files:

cd ComfyUI/custom_nodes
git clone https://github.com/FuouM/ComfyUI-StyleTransferPlus

or ComfyUI Manager → search ComfyUI-StyleTransferPlus → install → restart.

ComfyUI/custom_nodes/ComfyUI-StyleTransferPlus/models/unist/UniST_model.pt
ComfyUI/custom_nodes/ComfyUI-StyleTransferPlus/models/unist/dec_r41.pth
ComfyUI/custom_nodes/ComfyUI-StyleTransferPlus/models/unist/vgg_r41.pth

If you already set up UniST, these are downloaded and you're done.

Common issues

  • Flicker between frames - you probably fed the whole clip to the image node. Use this one, which batches by 3.
  • Wrong frame count / shape errors - make sure src_video and style_video are actual batches; a single unbatched image on src_video won't make sense here.
  • Load error - the three models/unist/ files, inside the pack folder, exactly as named.

The honest workflow note

Styling a whole video frame-by-frame with UniST Video is possible but it's not the pack's recommended path. The README's advice for video in general: generate one or two stylized keyframes, then propagate the style to the rest of the clip with ComfyUI-EbSynth (same author, same ecosystem). UniST Video is for when you genuinely want every frame network-styled - expect it to be slow at decent size. For most people, EbSynth on keyframes is the smarter route.

CategoryStyleTransferPlus

Inputs (4)

NameTypeDefaultDescription
src_videoIMAGE
style_videoIMAGE
do_cropBOOLEANfalse
sizeINT512

Outputs (1)

NameTypeDescription
out_imgIMAGE