ComfyUI Node

(SP) Loudness

How loud is this, actually? A LUFS meter in your graph

By c0ffymachyne·Created 2 years ago·Updated about a year ago· 22
(SP) Loudness
  • audio_input
  • loudness

(SP) Loudness is the measuring tape of this pack: it tells you how loud a piece of audio perceives, in LUFS (Loudness Units relative to Full Scale), and nothing else. It doesn't change anything, doesn't have any parameters to fiddle with, and doesn't even need a knob. You plug audio in, you get one number out.

That sounds useless until you realize it's the missing diagnostic. LUFS is the perceptual loudness standard - the one streaming platforms and broadcasters actually use - and it's genuinely different from "how big is the waveform on screen." A bass-heavy clip can look huge and measure quiet; a bright voice can look small and measure loud. This node hands you the real number, which turns guesswork into decisions.

The single output

  • loudness - a FLOAT, the integrated loudness of the whole clip in LUFS. Typical music sits around -14 to -9 LUFS; quiet podcast-style speech might be -20 or lower. Negative numbers are normal - LUFS is measured relative to full scale, so 0.0 is basically the loudest thing that can exist without clipping.

There are no inputs except audio_input. The measurement uses pyloudnorm's integrated loudness meter, the same algorithm family the Normalizer node uses for its lufs mode - so the two nodes agree with each other, which is convenient.

What to actually do with it

Wire the loudness FLOAT into a text display node (or a value viewer) and you've got a live LUFS meter in your graph. Use it to:

  • Check whether a generated clip is wildly off from your target before you normalize - if it's already at -14, don't bother.
  • Verify the pack's own effects did their quiet job: most of the processors here measure input LUFS and re-normalize output to match, and this node is how you confirm they didn't drift.
  • A/B two settings honestly. The human ear is terrible at judging level; a number isn't.

That's the whole node. It's a utility, not a headline feature - but once you've got it in your graph you'll miss it when it's not there.

Installing it

Same as the rest of the pack. ComfyUI Manager → "Install Custom Nodes" → search ComfyUI Signal Processing, or by hand:

cd ComfyUI/custom_nodes
git clone https://github.com/c0ffymachyne/ComfyUI_SignalProcessing

then restart ComfyUI. Dependencies from requirements.txt (scipy, pyfar, torchaudio, pyloudnorm, cupy-cuda11x, ...) - pyloudnorm does the actual measurement. Manager installs the list for you. The repo labels itself a work in progress, and if the pack won't load, the pinned cupy-cuda11x is the usual culprit; fix that and this meter appears with everything else.

CategorySignal Processing

Inputs (1)

NameTypeDefaultDescription
audio_inputAUDIO

Outputs (1)

NameTypeDescription
loudnessFLOAT