Noise Layer [Normalized Sum] ππ π
Stacking noise layers without babysitting the balance
- prev_noise_layers
- mask_optional
- NOISE_LAYERS
Noise Layers build the pack's custom noise scheduling - the README's line for it is "custom noise scheduling via Noise Types, Noise Layers, and seed_override/seed_offset/batch_offset." Chain a few of these together and you're composing a deliberate noise recipe instead of taking whatever single draw the sampler would otherwise give you. This is the "just works" member of the noise-layer family: it sums layers together with weights that stay automatically in proportion, so you don't have to manually rebalance the total the way its sibling, Noise Layer [Add Weighted], requires.
How it compares to its siblings
Three noise-layer nodes exist for three different jobs. Replace fully overrides a previous layer within its region - no blending at all. Add Weighted blends with an open-ended weight (up to 10) and needs a separate balance_multiplier afterward to keep the combined noise sane. This one, Normalized Sum, keeps noise_weight capped at a proper 0-to-1 fraction and normalizes the sum automatically, so mixing several layers together stays balanced without any extra rebalancing step. If you just want to combine two or three noise sources cleanly without thinking about variance math, this is the one to reach for.
The inputs and outputs that matter
Required: batch_offset (default 0) - shifts which frame this layer's pattern starts from, noise_type - the noise-generation strategy for this layer, seed_gen_override - how this layer derives its seed independent of the base sampling seed, seed_offset (default 0), and noise_weight (default 0.5, range 0β1) - this layer's proportional share of the combined mix.
Optional: prev_noise_layers (NOISE_LAYERS) to chain another layer underneath this one, mask_optional (MASK) to restrict this layer to a region, and seed_override (default 0) for a fully explicit seed rather than an offset.
Output is a single NOISE_LAYERS, which only fits Sample Settings' noise_layers input.
How to install it
ComfyUI Manager: search AnimateDiff Evolved, confirm the author is Kosinkadink, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved
then restart. No model download tied to this node - pure noise configuration on top of whatever motion setup you already have working.
Common issues & troubleshooting
Added a layer and nothing visibly changed. Confirm the NOISE_LAYERS output reaches Sample Settings' noise_layers slot, and that Sample Settings itself feeds your loader or Use Evolved Sampling. This connector chain fails silently rather than throwing an error when left half-wired.
Layer's contribution feels weaker than expected even at noise_weight near 1. Because this node normalizes the sum across all your stacked layers, a single layer's actual influence depends on how many other layers and how much weight they're carrying too - 1.0 here isn't "full strength in isolation," it's "this layer's full proportional share of the mix."
Wanted more control over the exact blend ratio. That's the tradeoff for the automatic balancing - if you need an open-ended weight that can dominate the mix or a separate rebalancing dial, use Noise Layer [Add Weighted] instead. If you don't need blending at all and just want one layer to fully override another, use Replace.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| batch_offset | INT | 00β9007199254740991 | β |
| noise_type | COMBO | 5 options: default, constant, empty, repeated_context, FreeNoise | |
| seed_gen_override | COMBO | 5 options: use existing, comfy, comfy [gpu], auto1111, auto1111 [gpu] | |
| seed_offset | INT | 0-9007199254740991β9007199254740991 | β |
| noise_weight | FLOAT | 0.5000β1 | β |
| prev_noise_layersopt | NOISE_LAYERS | β | |
| mask_optionalopt | MASK | β | |
| seed_overrideopt | INT | 00β18446744073709550000 | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| NOISE_LAYERS | NOISE_LAYERS | β |