Nodes/ComfyUI_FDGuidance/FrequencyDecoupledGuidance (Animation)
ComfyUI Node

FrequencyDecoupledGuidance (Animation)

Pick your frequencies, keep the color honest

By silveroxides·Created about a year ago·Updated 7 months ago· 8
FrequencyDecoupledGuidance (Animation)
  • model
  • MODEL
enabledtrue
levels4
freq_guidance_high8.0
freq_guidance_low1.0
apply_apg_projectionfalse
parallel_weight1.00
interpolation_modebilinear

If the pack's FDG_APG_PatcherAnimation is the sports car, this is the honest daily driver. It's the animation variant of the base Frequency-Decoupled Guidance node - the pure version of the FDG paper (arXiv:2506.19713) - with a couple of knobs instead of a dashboard full. You get the same core idea: split the prediction into frequency bands, guide the high frequencies hard to keep detail and texture, let the low frequencies sit calm so the image doesn't burn. Then it does it on 5D video latents instead of flat images.

What it does differently

Where the APG nodes work on the raw model output (the noise prediction), this one operates on the denoised image estimates - cond_denoised / uncond_denoised, the x0 predictions. That's closer to the paper's own formulation: build a Laplacian pyramid of both denoised predictions, apply a per-band guidance scale (freq_guidance_high on the finest band down to freq_guidance_low on the coarsest, interpolated across levels), rebuild a guided image, then map it back into the sampler's prediction space with a scaling factor derived from the conditional-vs-unconditional difference. And just like its sibling, it detects 5D input, flattens (B, C, T, H, W) frames to a batch for the pyramid math, and reshapes back. No temporal convolutions - each frame is treated independently, which is fine for FDG.

The difference you'll feel day to day: no momentum, no eta, no norm clamping. Just levels (1–8, default 4), freq_guidance_high (default 8), freq_guidance_low (default 1), and an optional APG section:

  • apply_apg_projection (default off): toggle on Adaptive Projected Guidance to reduce oversaturation, per the tooltip. Off by default here, unlike the APG nodes where it's always on - this is the "I just want FDG, maybe" version.
  • parallel_weight (default 1): only does anything when APG is enabled; it scales the parallel (prompt-aligned) component of the guidance projection. Lower it toward 0 to cut more saturation.

One MODEL output feeds the KSampler. Keep CFG above 1 or the patch never engages - at exactly 1 ComfyUI skips the unconditional pass and a custom CFG function has nothing to work with.

Using it and installing

Drop it between your video model loader and sampler, defaults first, and only raise freq_guidance_high if textures look soft. interpolation_mode defaults to bilinear; switch to nearest or area if animated detail gets a soft shimmer. No extra dependencies, no model files, nothing to download:

cd ComfyUI/custom_nodes
git clone https://github.com/silveroxides/ComfyUI_FDGuidance

Restart ComfyUI and it appears under Guidance/Patchers as "FrequencyDecoupledGuidance (Animation)" - Manager can find it via "FDGuidance" too. MIT licensed, from the same silveroxides account that does the Chroma-GGUF quantizations.

Which one to pick? For video where you want to stabilize frame-to-frame guidance or fight oversaturation hard, reach for FDG_APG_PatcherAnimation - it's this node plus momentum and proper APG. For a clean frequency-guidance boost with the option to toggle APG on later, start here. And remember: these are the animation variants for a reason. The base stills nodes in this pack will error on 5D latents, so don't cross the streams - use the version with video in its name.

CategoryGuidance/Patchers

Inputs (8)

NameTypeDefaultDescription
modelMODEL
enabledBOOLEANtrue
levelsINT41–8
freq_guidance_highFLOAT8.0-20–20
freq_guidance_lowFLOAT1.0-20–20
apply_apg_projectionBOOLEANfalseApply Adaptive Projected Guidance (APG) to reduce oversaturation.
parallel_weightFLOAT1.00-4–4Weight for the APG parallel component. Only used if APG is enabled.
interpolation_modeCOMBObilinear7 options: nearest, linear, bilinear, bicubic, trilinear, area, +1

Outputs (1)

NameTypeDescription
MODELMODEL