Classes | UGens > FFT

SpecCentroid : UGen : AbstractFunction : Object

Spectral centroid


Given an FFT chain, this measures the spectral centroid, which is the weighted mean frequency, or the "centre of mass" of the spectrum. (DC is ignored.)

This can be a useful indicator of the perceptual brightness of a signal.

Class Methods



an FFT chain.

Inherited class methods

Instance Methods

Inherited instance methods


A Blip oscillator is ideal for demonstrating this because the number of harmonics is directly manipulated: as the number of harmonics increases, the centroid is pushed higher. In the example, left-to-right changes the number of harmonics, but up-to-down changes the fundamental pitch; note the different effects of these two on the centroid.

b = Buffer.alloc(s, 2048, 1);
x = {
    var in, chain, freq, rq, centroid;

    //freq =, 1000);
    freq =, 100, 1);
    in =,, 100, 1));
    chain = FFT(LocalBuf(2048), in);
    centroid =;
    in.dup * 0.1