SuperCollider CLASSES


Spectral centroid
Inherits from: UGen : AbstractFunction : Object


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

*kr (buffer)



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(b, in);

centroid =;, in.dup * 0.1);