In-house Python Library for Acoustic Signal Processing (LASP): fractional octave filter banks, Fourier analysis, code for doing acoustic measurements and beamforming tools. http://code.ascee.nl/ASCEE/lasp
Go to file
2020-10-18 14:09:51 +02:00
fftpack Added some comments, first change to doxyfile 2018-12-29 13:57:32 +01:00
img First work on SLM. Seems to be working properly without pre-filtering and bandpass bank 2020-01-20 12:10:24 +01:00
lasp Let SLM work without filterbank. 2020-10-16 18:33:22 +02:00
scripts Daq measurement interface changed to permanently work with UlDaq. Should become a choice in future. Simultaneous output and input not yet working. Probably the DAQ API is not working properly with threads. We should find a minimum working example of simultaneous input/output. Then, the UlDAQ and RtAudio details should be abstracted away in a common interface, written in C++ 2020-09-18 08:52:56 +02:00
test Added Second Order Sections filterbank. Works much better that Fir filterbank. Does not need decimation. Easy generation of filters with scipy.signal.butter. 2020-01-03 21:11:56 +01:00
.gitattributes Split up GUI in different Widgets, added revtime, added figure list possibilities, added Qt Resources, added About panel, added lots of comments, export and import of measurements 2018-05-02 16:29:53 +02:00
.gitignore Accidentally added binary file to git 2020-10-06 20:38:46 +02:00
CMakeLists.txt Set default FFT lib to FFTW 2020-10-18 14:09:51 +02:00
Doxyfile Some markup improvements and comments. 2019-01-05 12:13:05 +01:00
LICENSE Initial commit 2018-03-05 20:58:03 +01:00
README.md Exposed AvPowerSpectra explicitly. Comment improvements. Line breakages, etc. Added 10s and infinite to TimeWeighting types. 2019-03-28 21:26:11 +01:00
setup.py Big change to new stream configuration. Possibility to include output channels back to input 2020-08-03 20:17:52 +02:00

Library for Acoustic Signal Processing

Welcome to LASP: Library for Acoustic Signal Processing. LASP is a C library with a Python interface which is supposed to process (multi-) microphone acoustic data in real time on a PC and output results.

The main goal of this library will be the processing of data from an array of microphones real time, on a Raspberry PI. At the point in time of this writing, we are yet unsure whether the Raspberry PI will have enough computational power to this end, but may be by the time it is finished, we have a new faster generation :).

Current features that are implemented:

  • Compile-time determination of the floating-point accuracy (32/64 bit)
  • Fast convolution FIR filter implementation
  • Sample rate decimation by an integer factor of 4.
  • Octave filterbank FIR filters designed to comply with IEC 61260 (1995).
  • Averaged power spectra and power spectral density determination using Welch' method. Taper functions of Hann, Hamming, Bartlett and Blackman are provided.
  • A thread-safe job queue including routines to create worker threads.
  • Several linear algebra routines (wrappers around BLAS and LAPACK).
  • A nice debug tracer implementation
  • Third octave filter bank FIR filters designed to comply with IEC 61260 (1995).
  • Slow and fast time updates of (A/C/Z) weighted sound pressure levels

Future features (wish-list)

  • Conventional and delay-and-sum beam-forming algorithms

For now, the source code is well-documented but it requires some additional documentation (the math behind it). This will be published in a sister repository in a later stage.

If you have any question(s), please feel free to contact us: info@ascee.nl.

Installation

Compilation

Archlinux

Compiling the code on Archlinux requires the following packages to be available:

  • openblas-lapack (AUR)
  • Python 3.7
  • Numpy (Python-numpy)
  • Cython

Ubuntu / Linux Mint

Only tested with Linux Mint 18.04, we require the following packages for compilation:

  • build-essential
  • cython
  • python3-numpy
  • libopenblas
  • libclalsadrv-dev
  • libopenblas-base
  • libopenblas-dev

Dependencies

Ubuntu / Linux Mint

Only tested with Linux Mint 18.04. The following Dependencies are required for Ubuntu: