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.

Input

Accessing signals from different sources.

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

Generators

Generating basic signals on-the-fly.

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

Windowing

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

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

FFT

Frequency analysis using Fast Fourier Transform.

  • forward
  • inverse
  • spectrogram

Filtering

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

Legend

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