DIGIT Image Loader
Pull the latest rendered frame back into the graph
- image
- filepath
- frame
Most loaders make you pick a file. This one picks the latest frame from a VFX shot/task directory and loads it as an IMAGE tensor - which is the whole point of pairing it with the DIGIT Image Saver. Point the Saver and the Loader at the same shot and task, and your workflow becomes a loop: generate, save, reload the newest frame, iterate on it. You never type a filename, because there's nothing to type.
The production use case is obvious: a compositor drops a new reference plate or a paint over into the shot folder, and your ComfyUI graph picks it up on the next run without anyone touching the canvas. The solo use case is nearly as good - it's a "load the latest render" node that saves you from digging through folders after every generation.
How it works
It scans the target directory and finds the highest-numbered frame (default frame_mode latest), loads it, and hands you the image plus its filepath and frame number. The load order is: browse_path (highest priority, must stay inside PROJEKTS) → uploaded image → a connected filepath → pipeline scan. So if you wire the Image Saver's filepath output in, it loads that exact file rather than scanning - handy when you want the file that was just saved, not the highest number.
The inputs:
- projekts_root, project, shot, folder - the path controls, same PROJEKTS convention as the Saver.
- format - what to scan for:
png,jpg,exr,tif,tiff,webp. - frame_mode -
latest(highest frame number) orpinned(loads the exactframevalue). - frame - used only when
frame_modeispinned. Default 1001. - on_missing -
error(raises when nothing's there) orblank(returns a 1x1 black image so the graph doesn't hard-fail while the first frame is still cooking).blankis the friendlier choice for loop workflows. - browse_path / upload_image - manual escapes when you want something specific.
- filepath - optional direct-path input, typically from a Saver node.
Outputs: image (the tensor), filepath (full path), and frame (the loaded frame number). EXR loads are handled too - full 32-bit float, BGRA→RGBA conversion and alpha un-inversion automatic, so an EXR written by the Saver round-trips without you doing color math.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/thedepartmentofexternalservices/comfyui-digit.git
cd comfyui-digit
pip install -r requirements.txt
(Or ComfyUI Manager → search comfyui-digit → install.) Restart ComfyUI, look under DIGIT.
Common issues
The node implements IS_CHANGED based on the source path and frame mode, which means it re-runs when the file situation changes - that's what makes "load the latest frame" actually work instead of caching a stale image. If it seems stuck on an old frame, the usual culprit is that the folder it's scanning has nothing newer; check the filepath output to see exactly what it resolved.
The on_missing: error default will hard-fail a workflow that starts before the first frame exists. If you're building a loop that saves and reloads in one graph, flip it to blank first. And remember the project dropdown only shows #####_-prefixed folders - if your project folder isn't showing up, that's the naming pattern it's looking for.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| projekts_root | COMBO | 1 options: /root/PROJEKTS | |
| project | COMBO | 1 options: | |
| shot | COMBO | 1 options: | |
| folder | COMBO | 1 options: comfy/comp | |
| format | COMBO | 6 options: png, jpg, exr, tif, tiff, webp | |
| frame_mode | COMBO | latest | latest loads the highest frame number; pinned loads the exact frame widget. |
| frame | INT | 10010–99999999 | — |
| on_missing | COMBO | error | error raises when no frame is found; blank returns a 1x1 black image. |
| browse_pathopt | STRING | Absolute path to an image file on the filesystem. Highest priority. | |
| upload_imageopt | COMBO | Upload or select an image from ComfyUI's input folder. | |
| filepathopt | STRING | — | |
| subfolderopt | STRING | comfy | — |
| taskopt | STRING | comp | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| filepath | STRING | — |
| frame | INT | — |