Frame Interpolate (Umbra UI)
Frame Interpolate — smooth slow-mo without blowing up your VRAM
- interp_model
- images
- images
Frame interpolation turns a 12fps clip into a 48fps one by synthesizing the in-between frames - the "make it slow-motion smooth" step at the end of every AI-video workflow. Frame Interpolate (Umbra UI) runs ComfyUI's native interpolation but adds the thing that normally bites people: careful low-VRAM model placement and OOM-safe batching, so it doesn't die the moment your clip gets long or your card gets small.
How it works
It's a wrapper around ComfyUI's built-in interpolator, and the mechanism is the interesting half:
- Model placement. It takes an
INTERP_MODEL- that's the type produced by ComfyUI'sInterpolationModelLoader-family nodes for models like RIFE/FILM, which you load fromComfyUI/models/interpolation_models/. Before sampling it moves the model to the right device and dtype, and it frees memory for the activation footprint up front - a "reliable device handoff," in the source's words. - Multi-frame synthesis. For each adjacent pair of frames it computes
multiplier - 1intermediate frames. If the model supportsforward_multi_timestep(the batched multi-frame path), it uses that; otherwise it runs each timestep individually. - OOM resilience. If a batched call hits an out-of-memory error, it halves the batch and retries instead of crashing - and if a multi-frame call OOMs, it falls back to single-frame interpolation for that pair. Low-VRAM cards get the result, just slower.
- Progress. ComfyUI's progress bar and a
tqdmbar both track the run, so you can see the pair-by-pair count.
Inputs: interp_model (the loaded INTERP_MODEL), images (your frame batch as an IMAGE tensor), and multiplier (2–16, default 2 - how many times the frame count multiplies). Output: the interpolated images tensor, ready for a video encode node. If the input has fewer than 2 frames or multiplier is below 2, it passes the images straight through untouched - a polite no-op rather than an error.
The input a beginner sets
Just multiplier - 2 is the sane default (doubling frames is already a big jump in smoothness). 4 and up produce genuinely buttery slow-mo but multiply both VRAM and runtime by roughly the same factor, and each added frame is another chance for artifacts on fast motion.
Installing it
Part of Umbra-Nodes, the ComfyUI companion pack for Umbra Studio (NocturneLabs' open-source local AI suite). ComfyUI Manager → search "Umbra Nodes", or:
cd ComfyUI/custom_nodes
git clone https://github.com/Nocturne-Ai-Labs/Umbra-Nodes
Restart ComfyUI. No pip deps, but you need an interpolation model (a RIFE or FILM .pkl/.pth) in ComfyUI/models/interpolation_models/, and a loader node to produce the INTERP_MODEL.
Gotchas
The failures here are mostly upstream: an empty INTERP_MODEL (model not loaded) and a frames count mismatch. Make sure the images input is a sequence of frames - a single still image interpolates to nothing useful. Fast-moving subjects are where interpolation lies most: sweeping motion between two frames gets ghosted or smeared intermediates, and there's no setting here that fixes it, only lower multipliers and cleaner source footage. And if your run OOMs anyway, drop the multiplier rather than the frame count - that's what the batched path is protecting you from.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| interp_model | INTERP_MODEL | — | |
| images | IMAGE | — | |
| multiplier | INT | 22–16 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |