Acoular Workshop: Accessible and Reproducible Microphone Array Signal Processing with Python
* Presenting author
Abstract:
Acoular is an open software package for the analysis of multichannel signals from arrays of microphones or other sensors. While its development started in 2007, it was released in 2015 as open source software under a permissive New BSD 3-Clause license. Since then, it has mustered a worldwide user base and has seen constant improvement and addition of new features. This contribution gives an overview about Acoular and the implemented processing algorithms. Possible use cases for time and frequency domain processing are acknowledged. It is explained how Acoular is designed to be easily adaptable and extendable using an object-oriented paradigm. As it is not uncommon to deal with huge amounts of data and high loads in array signal processing, Acoular implements a number of techniques to meet this challenge. A brief insight is given into those, including out-of-core processing, lazy evaluation techniques, parallel computing and transparent and persistent caching of intermediate and final results. Finally the important question of getting reproducible results is addressed and some efforts are introduced to ensure consistent results over multiple operating systems, Python versions and Acoular releases.