A list of awesome open-source Acoustic packages and resources.
Read the detailed scope of this list in SCOPE.md.
Important
Contributions are more than welcome
- General Tools
- Signal Processing
- Room Acoustics
- Environment
- FEM, Materials, Vibrations
- Soundscape
- Bioacoustics
- Databases
- Music
- Health
- Education
- AeroAcoustics
- AI, Machine Learning
- Books
- Hardware
- Seismology
| Package | Description | Language |
|---|---|---|
| Acoustic Toolbox | A Python library for acousticians. | Python |
| MoSQITo | MoSQITo is a unified and modular development framework of key sound quality metrics favoring reproducible science and efficient shared scripting among engineers, teachers and researchers community. | Python |
| Pyfar | python package for acoustics research | Python |
| PyTTA | Python in Technical Acoustics and Vibration | Python |
| friture | Real-time audio visualizations (spectrum, spectrogram, etc.) | Python |
| ITA Toolbox | An open source MATLAB toolbox for acoustics developed by the Institute of Technical Acoustics of the RWTH Aachen University | Matlab |
| k-Wave | A MATLAB toolbox for the time-domain simulation of acoustic wave fields | MATLAB |
| k-Wave-python | A Python interface to k-Wave GPU accelerated binaries | Python |
| Mesh2HRTF | Open software for the numerical calculation of head-related transfer functions | C++ |
| SQAT | SQAT is an open-source repository of MATLAB codes containing the implementation of key metrics for quantitative sound quality analysis. | AGS Script |
| Package | Description | Language |
|---|---|---|
| PyOctaveBand | [Python3] Octave-Band and Fractional Octave-Band filter. For signal in time domain. | Python |
| Acoular | Acoular - Acoustic testing and source mapping software | Python |
| CleanTiPy | An open-source implementation of CLEAN-T acoustic imaging technique | Python |
| paderwasn | Paderwasn is a collection of methods for acoustic signal processing in wireless acoustic sensor networks (WASNs). | Python |
| Package | Description | Language |
|---|---|---|
| Pyroomacoustics | Pyroomacoustics is a package for audio signal processing for indoor applications. It was developed as a fast prototyping platform for beamforming algorithms in indoor scenarios. | Python |
| DEISM | Diffraction Enhanced Image Source Method (Python) | C++ |
| Virtual Acoustics | creates audible sound from a purely virtual situation | C++ |
| I-Simpa | An Open Source software for 3D sound propagation modelling | C++ |
| edg-acoustics | Wave-based room acoustic modeling package with the DG method | Python |
| CHORAS | The Community Hub for Open-source Room Acoustics Software (CHORAS) | None |
| Diffusion | This is a diffusion equation model for room acoustics predictions, developed in Python. | Python |
| EAVR-v2 | The Eindhoven Acoustic Virtual Reality (EAVR) Toolkit, interactively teach students principles in the field of acoustics, by changing various aspects of the VR environment | C# |
| Chalmers Auralization Toolbox | The Chalmers Auralization Toolbox | MATLAB |
| pyrato | Python Room Acoustics Tools | Python |
| PyRoomStudio | An open-source Python GUI for 3D acoustic simulations | Python |
| pachyderm | A plugin for Rhinoceros 3D that provides a collection of numerical and geometrical simulation techniques | C# |
| Package | Description | Language |
|---|---|---|
| NoiseModelling | A open-source model to compute noise maps. | Java |
| NoiseCapture | Android App dedicated to the measurement of environmental noise. | Java |
| Code_Tympan | Code_TYMPAN is a software developed by EDF R&D to simulate noise in industrial sites. | C++ |
| HRISK | This is a QGIS plugin, which implements NoiseModelling and helps estimate the health risks posed by (road traffic) noise. | Python |
| Ono Sensor | OnoSensor (Open Noise Sensor) empowering communities through complete noise monitoring — From acquisition to distributed networked storage and visualization. | JavaScript |
| Sparrowpy | Sound Propagation with Acoustic Radiosity for Realistic Outdoor Worlds | Python |
| Package | Description | Language |
|---|---|---|
| OURS | Dutch calculation method for railway vibrations | Pascal |
| Code_Aster | Code_Aster is a general-purpose finite element software package for numerical simulation in structural mechanics, heat transfer, and fluid dynamics. | Python |
| FEniCS | Next generation FEniCS problem solving environment | C++ |
| pyOMA2 | Python module for conducting operational modal analysis | Python |
| bempp-cl | A fast Python based just-in-time compiling boundary element library | Python |
| VIBRA | Vibroacoustic Analysis using the Finite Element Method | Assembly |
| Package | Description | Language |
|---|---|---|
| Soundscapy | A python library for soundscape assessments | Python |
| scikit-maad | Open-source and modular toolbox for quantitative soundscape analysis in Python | Python |
| sottek-hearing-model | An implementation of the Sottek Hearing Model psychoacoustic sound quality metrics defined in ECMA-418-2. | Python |
| Package | Description | Language |
|---|---|---|
| BirdNET | BirdNET analyzer for scientific audio data processing. | Python |
| BirdNET-Pi | A realtime acoustic bird classification system for the Raspberry Pi 5, 4B 3B+ 0W2 and more. Built on the TFLite version of BirdNET. | PHP |
| PAMGuard | Detection, Classification, and Localisation of marine mammal and other bioacoustic signals | Java |
| AudioMoth | A minimal project on which all AudioMoth firmware can be built. | C |
| vak | A neural network framework for researchers studying acoustic communication | Python |
| warbleR | streamline acoustic analysis in R | R |
| Acoupi | Python toolkit to implement bioacoustics classifier on embedded systems. | Python |
| Crowsetta | A tool to work with any format for annotating animal sounds | Python |
| Package | Description | Language |
|---|---|---|
| Soundata | Python library for downloading, loading & working with sound datasets | Python |
| DCASE | Collection of DCASE related datasets | HTML |
| xeno-canto | A community-driven site for sharing and discovering bird sounds | |
| The International Soundscape Database | The International Soundscape Database contains the results of a series of soundscape assessment campaigns carried out across Europe and China. | |
| room-impulse-responses | A list of publicly available room impulse response datasets and scripts to download them. | Shell |
| BirdSet | A benchmark dataset collection for bird sound classification | Jupyter Notebook |
| Package | Description | Language |
|---|---|---|
| librosa | Python library for audio and music analysis | Python |
| pyAudioAnalysis | Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications | Python |
| madmom | Python audio and music signal processing library | Python |
| audioFlux | A library for audio and music analysis, feature extraction. | C |
| Package | Description | Language |
|---|---|---|
| tascar | toolbox for acoustic scene creation and rendering | C++ |
| openMHA | The open Master Hearing Aid (openMHA) | C |
| Cape4all | Open Hardware Multichannel Sound Interface for Hearing Aid Research on Beaglebone Black | None |
| Package | Description | Language |
|---|---|---|
| Acoucou | A platform for learning about acoustics | HTML |
| SoftwareProfesionalAcustica | Jupyter notebooks de la asignatura de Software Profesional en Acústica del Máster de Matemática Industrial (M2i) | Jupyter Notebook |
| AcousticsML | Tutorial on using machine learning for acoustics. This tutorial covers a wide range of machine learning approaches for acoustic applications. | Jupyter Notebook |
| Package | Description | Language |
|---|---|---|
| AeroAcoustics.jl | A Julia package for Aeroacoustics | Julia |
| WAPE | Wide Angle Parabolic Equation model with arbitrary Mach number | MATLAB |
| Package | Description | Language |
|---|---|---|
| PANN | Pretrained audio neural networks (PANNs) for audio pattern recognition | Python |
| YamNet | A TFLite-compatible fork of YAMNet from tensorflow/models | Jupyter Notebook |
| CLAP | Learning audio concepts from natural language supervision | Python |
| PANN with 1/3 octaves | PANN with 1/3 octaves for soundscape source classification | HTML |
| BEATs | Large-scale Self-supervised Pre-training Across Tasks, Languages, and Modalities | Python |
| Package | Description | Language |
|---|---|---|
| Understanding Acoustics | An Experimentalist’s View of Sound and Vibration | book |
| Nonlinear Acoustics | Introductory text on the theory of nonlinear acoustics authored by experts on their respective topics | book |
| Aviation Noise Impact Management | A view into the state-of-the-art research on aviation noise and related annoyance | book |
| Exploring Animal Behavior Through Sound: Volume 1 | Introduces standard terminology, procedures, equipment, and analysis tools for animal bioacoustic studies. | book |
| Exploring Animal Behavior Through Sound: Volume 2 | Organized into nine chapters by taxonomy — invertebrates, insects, amphibians, reptiles, fishes, birds, and mammals (subterranean, terrestrial, and marine) — it delves into sound production, sound reception, sound function, and the impacts of noise on these creatures. | book |
| Marine Mammal Acoustics in a Noisy Ocean | Explores the fundamentals of ocean acoustics, revealing the intricate sources of underwater noise that challenge marine life | book |
| Beginning DYNA[mics] with code_aster | A practical introduction to mechanical DYNAmic [misc]ellaneous using code_aster | book |
| Package | Description | Language |
|---|---|---|
| acoustic-camera | This project uses Acoular to implement an acoustic camera for the miniDSP UMA-16 microphone array, with optional integration of transformer model results for enhanced audio analysis. | Python |
| Package | Description | Language |
|---|---|---|
| ObsPy | ObsPy: A Python Toolbox for seismology/seismological observatories. | Python |
| Pyrocko | An official read-only mirror of https://git.pyrocko.org/pyrocko/pyrocko. A seismology toolkit for Python. | Python |