a.setScale() and a.setCutoff() map FFT bin values to 0–1 via a noise gate and a ceiling threshold
Each audio input and environment differs in base volume. a.setCutoff(v) sets a floor — bin values below this are clamped to 0 (like a noise gate). a.setScale(v) sets the ceiling — the amplitude at which a bin reaches its maximum value of 1. Values above the ceiling are still clamped to 1 (acting like a limiter with auto-gain). The visual representation when a.show() is active displays two horizontal lines across the bin graph: the lower line is the cutoff, the upper is the scale. Calibrating these for the room removes ambient noise reactions and ensures the full 0–1 range is used.
Examples
In a noisy room: call a.show() to see the bin graph, then increase a.setCutoff() until ambient noise is below the lower line. Then set a.setScale() so that a loud sound at performance level just reaches the upper line.
Assessment
Explain what a.setCutoff(0.1) and a.setScale(0.5) would each do to the resulting a.fft values for a medium-volume input. Which parameter is analogous to a noise gate and which to a compressor’s gain ceiling?