Feature overview

This page provides an overview of Aquila library features. The following list is a short presentation of what is (or will be) possible with the Aquila DSP library. As the third version is under development, not everything listed here is available at the moment (at least, not in Aquila 3). However, there are some features which had been already implemented in Aquila 2 and just haven't been ported yet, so stay tuned.

This section will be updated as soon as new features are incorporated into the library.


Accessing signals from different sources.

  • C++ array or vector
  • text file
  • .wav file
  • raw PCM data


Generating basic signals on-the-fly.

  • sine
  • rectangular
  • triangular/sawtooth
  • white noise
  • pink noise


Applying different window functions for smoother transformations of finite-length signals.

  • rectangular
  • Hamming
  • Hann
  • Barlett
  • Blackman
  • flat-top


Frequency analysis using Fast Fourier Transform.

  • forward
  • inverse
  • spectrogram


Digital filter design and usage.

  • frequency-domain filters
  • FIR
  • IIR

Feature extraction

Reducing signals into easily comparable forms.

  • energy
  • power
  • MFCC
  • HFCC

Other algorithms and tools

Miscellaneous library features.

  • Dynamic Time Warping (DTW)
  • classifying


  • already implemented in Aquila 3
  • implemented in Aquila 2, will be ported to 3
  • not done yet, coming soon