General Processing

In this first category different signal processing algorithms can be found. Although these algorithms can be considered general purpose and can be applied to different domains, there is a clear focus on spectral processing of audio and more precisely on the Spectral Modeling Synthesis (SMS) technique (see Annex B).


The Processing classes included in this category are used to extract different features from the input signal. All the necessary algorithms related to the SMS analysis process are included. Therefore, we can find Processings for: window generation, signal shifting, performing the FFT, detecting and tracking spectral peaks, detecting the fundamental frequency, extracting the spectral envelop, performing the LPC autocorrelation, and segmenting the audio signal.

The spectral analysis and the SMS analysis Processings represent a special kind of Processing that do not encapsulate a single algorithm but rather use existing simple Processings to build a new one out of their composition. Such Processings are called Processing Composites. In the case of the spectral analysis Processing is composed from the following Processings: window generator, circular shift, FFT and audio multiplier. The SMS analysis Processing adds another layer of composition as it includes the previously commented spectral analysis plus other Processings such as spectral peak detection or fundamental frequency detection.


Transformations are divided into general purpose transformations and those that can only be applied to the output of the SMS analysis process. General transformations include some time-domain algorithms such as delay, normalization or envelope modulator. It also includes spectral transformations like frequency domain filtering by applying an ideal function or an spectral envelope.

But using the SMS model more interesting transformations can be applied also in the spectral domain [Amatriain et al., 2002b]. The repository offers SMS-based transformations such as time-stretch, morphing or pitch shifting. These transformations are sub-categorized under the Transformations->SMS category.


The synthesis algorithms are all the necessary for the SMS model. Nevertheless, some of them (such as the inverse FFT or the overlap and add) can be applied to different spectral models.


Generators are special Processings that produce but do not consume data. The CLAM repository of generators includes algorithms like oscillators, wave generators or ADSR (attack-decay-sustain release) envelopes.