Chromagram:

Filter: Extension

Octave chroma band based representation of energy in a signal; Chromagram for nTET tuning systems with any base reference

Source: Chromagram.sc

A chromagram, measuring the energy at particular chroma within an nTET tuning system.

Possible extension: TODO: Could have arbitrary tuning systems if precalculated the exact fft bin + interpolation data.

fft |
input fft chain, that is, from an FFT UGen |

fftsize |
FFT size, required for initialisation |

n |
Equal divisions of an octave, e.g. n=12 is 12TET, 12 steps in an octave |

tuningbase |
Base frequency or tuning; will correspong to index 0 in results (conventionally, this would be a 'C' in 12TET, but its an arbitrary reference) |

octaves |
Number of octaves considered from tuning base up |

integrationflag |
Whether to integrate from frame to frame, off by default |

coeff |
Coefficient of integration |

octaveratio |
Default of 2 is a 'normal' octave; other ratios are possible, e.g. Bohlen-Pierce scale uses 13 equal divisions over the ratio of 3 for a 'tritave' |

perframenormalize |
Defaults to off, but if set to 1 will normalize each frame with respect to itself (as long as there is non-negligible power), potentially providing a more robust measure for comparison between frames (each frame will have then a normalized distribution over chroma, independent of volume) |

helpfile source: /usr/local/share/SuperCollider/Extensions/SC3plugins/SCMIRUGens/HelpSource/Classes/Chromagram.schelp

link::Classes/Chromagram::

link::Classes/Chromagram::