Amplitude To Float or Int
Turn the amplitude curve into numbers ComfyUI can actually use
- amplitude
- FLOAT
- INT
AMPLITUDE is the pack's private currency - a per-frame series that comes out of BatchAmplitudeSchedule (or ClipAmplitude / TransientAmplitudeBasic). Nothing else in ComfyUI understands that type. AmplitudeToNumber is the bridge: it takes the amplitude series and hands you the same values back as a plain FLOAT and a plain INT, which is what the rest of your graph can consume.
This is the "feed it to the control nets" node, to borrow how the community describes the pack's purpose. Every animation parameter you want to modulate - denoise, ControlNet weight, IPAdapter weight, a prompt-schedule value - wants a number, and this is how the music becomes one. On its own it does nothing visually, but it's the difference between audio-reactive ideas and audio-reactive workflows.
What it outputs
One FLOAT and one INT, but here's the thing beginners trip on: they're not single numbers. You get the whole per-frame series - a value for every frame the FFT split your track into. The FLOAT output is the amplitude cast to float; the INT output is the same values truncated. Both are arrays, so wire them into nodes that accept a float/int array (the pack's own example workflow feeds the FLOAT output into FloatArrayToGraph just to preview it), or into a scheduling/loop node that walks the frames.
Inputs: just amplitude (AMPLITUDE). That's the whole interface - there are no knobs.
The classic gotcha
Watch the INT output after you've normalized. NormalizeAmplitude squashes everything into 0–1, and an integer truncated from a number below 1.0 is zero - so a perfectly healthy curve can look like an all-zeros INT. If you're about to debug an all-zero integer output, that's not a bug, that's truncation. Use the FLOAT output for real work, or boost the values first with NormalizedAmplitudeToNumber's add_to/add_ceiling knobs before converting.
Install
It ships with the pack. ComfyUI Manager → search ComfyUI-AudioScheduler, or:
cd ComfyUI/custom_nodes
git clone https://github.com/a1lazydog/ComfyUI-AudioScheduler
Restart ComfyUI. No model downloads; the only dependencies are matplotlib, numpy, pandas, pydub, and scipy. If a LoadAudio → this node workflow throws a type error, you're missing the AudioToAudioData adapter in between - that's the current pipeline, and it's the most common thing to get wrong when following older examples.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| amplitude | AMPLITUDE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| FLOAT | FLOAT | — |
| INT | INT | — |