SonarCustomNoise
One node, 38 kinds of noise
- sonar_custom_noise_opt
- SONAR_CUSTOM_NOISE
If you only install one noise node from the ComfyUI-sonar pack, this is it. SonarCustomNoise is the atomic unit of blepping's "noise toybox" - you pick one of 38 noise types, set a factor, and out pops a SONAR_CUSTOM_NOISE that you can feed into a Sonar sampler, a NoisyLatentLike, SamplerConfigOverride, or chain into any of the pack's other noise nodes. Everything else in the pack is basically this node wrapped in another idea.
Why you'd reach for it
Stock ComfyUI hands you one kind of starting noise: plain Gaussian. That's fine for most gens, but the type of noise you start from genuinely shapes what comes out - colored noise changes texture and contrast behavior, pyramid noise changes the scale of early structure, and structured noise is a whole lever for img2img-style composition. This node is the door to all of it, and because it plugs into the custom-sampling pipeline rather than replacing your KSampler, it's about as low-risk an experiment as this pack offers.
How it works
Under the hood it's dead simple: pick a noise_type, it generates a latent-sized noise tensor of that flavor, and factor scales it. The interesting part is the chain input. There's an optional sonar_custom_noise_opt socket - plug another SonarCustomNoise into it and you get a chain where both noises are combined. Then rescale comes into play: set it non-zero and this item plus everything chained to it get their factors scaled so they add up to that value. Set rescale to 1.0 with two chained items at factor 1.0 and you get a clean 50/50 split without doing mental math.
The inputs that matter
The noise list is long - gaussian, brownian, collatz, distro, green_test, grey, several highres_pyramid variants, laplacian, onef_greenish, and 26 more. The author is refreshingly honest in the README: the "pink" noise might not be what a signal-processing textbook calls pink noise. These are best-effort implementations, some borrowed from Clybius's Extra-Samplers and adapted. Don't treat the names as precise specs - treat them as flavors to taste.
The three knobs you'll actually touch:
noise_type- the flavor. Gaussian is the safe default;green_testis the author's own favorite for the DPM++ SDE sampler.factor- overall strength. Can be negative, which is a quick way to flip things around.rescale- keep at 0 unless you're chaining multiple noise items and want the mix to add up exactly.
Output is SONAR_CUSTOM_NOISE, a pack-internal type. Wire it to a Sonar sampler's custom noise input, another noise node, or the SONAR_CUSTOM_NOISE to NOISE converter.
Where people get burned
The README calls this out: if you connect a custom noise node to a Sonar sampler, a NoisyLatentLike, or a SamplerConfigOverride, it overrides whatever noise type you selected in the node. You'll wire one up, wonder why your noise_type dropdown isn't doing anything, and this is why.
Install
ComfyUI Manager, search "ComfyUI-sonar", install, restart. Manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/blepping/ComfyUI-sonar
Then restart ComfyUI. No model files, no pip dependencies beyond what ComfyUI already ships - it's pure torch. One honest caveat from the README: inputs change fairly often, so if you're chasing reproducibility, note the git revision you generated with. And if a generation's seed doesn't reproduce across different GPUs, that's a known quirk of how this pack generates noise (GPU vs CPU), not you doing it wrong.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| factor | FLOAT | 1.000-10000–10000 | Scaling factor for the generated noise of this type. |
| rescale | FLOAT | 0.0000–10000 | When non-zero, this custom noise item and other custom noise items items connected to it will have their factor scaled to add up to the specified rescale value. When set to 0, rescaling is disabled. |
| noise_type | COMBO | gaussian | Sets the type of noise to generate. |
| sonar_custom_noise_optopt | SONAR_CUSTOM_NOISE,OCS_NOISE | Optional input for more custom noise items. The following input types are supported: SONAR_CUSTOM_NOISE, OCS_NOISE |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SONAR_CUSTOM_NOISE | SONAR_CUSTOM_NOISE | A custom noise chain. |