Video Filter Batch (Buff)
A whole color-grade stack in one node, with a wet/dry knob
- images
- images
- filter_info
Twenty-two named film looks, twelve effects, three simultaneous effect slots, and a final wet/dry mix - in a single node that runs entirely in the backend. VideoFilterBatch is the "I want this clip to look like it went through a colorist's hands" node, and it saves you the usual pilgrimage through five separate filter packs.
If you've been grading video in ComfyUI for a while, you know the friction: you assemble a chain of single-purpose nodes, and if any of them is browser-only the whole pipeline breaks when you run it through the API. This node sidesteps that - everything is tensor math in the backend, so a workflow that uses it exports and runs identically over the API. The KB's post-processing.md calls this layer out: classic filters and color are exactly where a single composable node beats a tangle of single-use ones.
How it works
Pick a filter_preset for the look - teal_orange, bleach_bypass, film_noir, cyberpunk, golden_hour, kodak_portra, matrix_green, and a couple dozen more. preset_strength controls intensity (1.0 is the designed look, above 1 exaggerates it). Then layer up to three effects via effect_1/2/3 - sharpen, vignette, film_grain, glitch, chromatic_aberration, lens_distortion, motion_blur, posterize, duotone, bloom, scanlines, rgb_split - each with its own strength. global_strength is the final wet/dry mix between your original batch and the filtered result, which is the safest dial in the node: dial it to 0.3 and you get a hint of the look instead of a faceful.
Two details show the author cared. seed makes the grain and glitch effects deterministic - same seed, same noise, reproducible exports. And motion_blur is genuinely temporal: it blends adjacent frames and motion-masks so static frames stay mostly clean instead of getting smeared everywhere. The effect_stack text input is the API-friendly escape hatch - add film_grain:0.35 on its own line for effects beyond the three dropdown slots.
Inputs and outputs
images in, and the two outputs are images (filtered) plus a filter_info string that logs what actually got applied - handy when you're debugging a stack and can't remember which of six effects you enabled.
Install and gotchas
From BuffMcBigHuge's pack - ComfyUI Manager (search "ComfyUI-Buff-Nodes") or:
cd ComfyUI/custom_nodes
git clone https://github.com/BuffMcBigHuge/ComfyUI-Buff-Nodes
Restart ComfyUI. No dependencies beyond stock.
Watch a few things: preset names with _ in the dropdown are the same values used in API JSON, so don't be surprised when chromatic_aberration shows up in a workflow file. preset_strength above 1 will push colors hard - that's intentional, and the wet/dry knob is your safety net. And while the effect names overlap with standalone filter packs, this is self-contained; you don't need anything else installed for these looks. It's the node to grab when "just make this clip look like a movie" is the whole brief.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | Input ComfyUI IMAGE batch [frames, height, width, channels]. | |
| filter_preset | COMBO | none | Color grade preset. Use none when only applying effects. |
| preset_strength | FLOAT | 1.000–2 | Preset strength. 1.0 is the designed look; values above 1 exaggerate it. |
| effect_1 | COMBO | none | First optional effect in the chain. |
| effect_1_strength | FLOAT | 1.000–3 | Strength for effect_1. |
| effect_2 | COMBO | none | Second optional effect in the chain. |
| effect_2_strength | FLOAT | 1.000–3 | Strength for effect_2. |
| effect_3 | COMBO | none | Third optional effect in the chain. |
| effect_3_strength | FLOAT | 1.000–3 | Strength for effect_3. |
| global_strength | FLOAT | 1.000–1 | Final wet/dry mix between the original image batch and the filtered result. |
| seed | INT | 00–18446744073709550000 | Seed for grain and glitch effects. |
| effect_stackopt | STRING | Optional extra effect chain, one per line. Examples: film_grain:0.35 vignette:0.8 chromatic-aberration:0.5 | |
| duotone_shadowopt | STRING | #161026 | Shadow color for the duotone effect as #RRGGBB. |
| duotone_highlightopt | STRING | #ffd166 | Highlight color for the duotone effect as #RRGGBB. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| filter_info | STRING | — |