Nodes/DJZ-Nodes/Fast Video Interlaced Upscaler V4
ComfyUI Node

Fast Video Interlaced Upscaler V4

The fast video upscaler people actually run on 8GB laptops

By MushroomFleet·Created 2 years ago·Updated 5 months ago· 77
Fast Video Interlaced Upscaler V4
  • images
  • IMAGE
modebalanced
input_height720
input_width1280
scale_factor1.5
enable_motion_comptrue
batch_size4
precisionhalf

Here's a real-world data point: a r/comfyui user upscaled a 960×540 clip to 1920×1080 with this exact node on an 8GB VRAM laptop - about 80 seconds for a 9-second 24fps clip, and down to ~31 seconds after switching precision to full and tweaking the workflow. That's the pitch for VideoInterlaceFastV4: it's the "fast" version of the pack's interlaced upscaler, trading the fancy field-simulation of V2 for raw speed, and it's the one people genuinely run for quick video upscales on modest hardware.

How it works

Four mode presets trade quality against speed, each mapping to a different pipeline:

  • fastest - pure bilinear upscaling via torch.nn.functional.interpolate. Nothing else. Millisecond-fast, softest result.
  • fast - Lanczos upscaling through OpenCV (INTER_LANCZOS4), no motion compensation.
  • balanced (default) - Lanczos plus a cheap temporal motion compensation: each frame is blended with its neighbors at ~20%, which smooths flicker and gives that slightly video-y, stable feel.
  • quality - balanced's pipeline plus a Sobel edge enhancement pass for extra perceived sharpness.

You tell it the source input_height / input_width, set scale_factor (1.5 default, up to 4.0), and it computes the target size and processes frames in batch_size chunks (default 4, up to 16) so a long clip doesn't blow up VRAM. The precision option (half vs full) is worth knowing - half uses fp16 on GPU for speed; the reddit poster found full precision "works better" on their card, so if output looks off, switch to full.

enable_motion_comp toggles the neighbor-blending in balanced/quality. Keep it on unless you see ghosting - it's what makes the upscale look temporally coherent rather than each frame fighting its neighbors (the KB's upscaling essay hammers this: video upscaling is "more pixels over time," and the frames have to agree).

The inputs

images, mode, input_height, input_width, scale_factor, plus optional enable_motion_comp, batch_size, precision. Output is one IMAGE tensor at the target resolution.

Installing

Part of DJZ-Nodes (Drift Johnson / MushroomFleet):

cd ComfyUI/custom_nodes
git clone https://github.com/MushroomFleet/DJZ-Nodes
cd DJZ-Nodes
pip install -r requirements.txt

Or search "DJZ-Nodes" in ComfyUI Manager. Requires opencv-python (in the pack's requirements) for the Lanczos path.

Honest take

This is a convenience upscaler, not a restoration one. It adds pixels; it doesn't invent detail. If your source is already-decent 720p and you need a quick 1080p deliverable, V4 on balanced is the right tool - fast, memory-friendly, no model download. If you're upscaling genuine 240p garbage, a generative model (SeedVR2-class) is the correct tool per the KB, and no Lanczos will save you. Start with balanced + half precision, flip to full precision if the result looks smeared, and feed it frames from a video loader like the pack's LoadVideoDirectory.

Categoryimage/upscaling

Inputs (8)

NameTypeDefaultDescription
imagesIMAGE
modeCOMBObalanced4 options: fastest, fast, balanced, quality
input_heightINT720480–4320
input_widthINT1280640–7680
scale_factorFLOAT1.51–4
enable_motion_compoptBOOLEANtrue
batch_sizeoptINT41–16
precisionoptCOMBOhalf2 options: full, half

Outputs (1)

NameTypeDescription
IMAGEIMAGE