Skip to content

Fundamental algorithms for manipulating and filtering digital signals.

License

Notifications You must be signed in to change notification settings

petiaccja/DSPBB

Repository files navigation

Digital Signal Processing Building Blocks

Language License Build & test Quality Gate Status Coverage

DSPBB is a modern C++17/20 library for digital signal processing. DSPBB is not geared towards any specific signal processing domain such as audio processing or seismology, it only aims to provide the building blocks that can help build any signal processing application.

Key features

  • Signal and system classes
  • Arithmetic and math on signals
  • Waveform generation
  • Statistics
  • Filtering:
    • FFT
    • IIR filter design
    • FIR flter design
    • Running signals through filters
    • Resampling
    • Windowing

Development status

The library now implements most of the features that I was planning and is largely covered by unit tests. It's currently in a consolidation phase where I'm adding smaller features, ironing out problems, and improving ergonomy as I start using it in larger projects. As such, I'm expecting moderate, but breaking changes to the interface.

User guide

License

DSPBB is distributed under the MIT license, therefore can be used in commercial and non-commercial projects alike with very few restrictions. The dependencies of DSPBB are also distributed under premissive MIT or BSD licenses.