Your first time on this page? Allow me to give some explanations.
Awesome Scientific Audio
Curated list of python software and packages related to scientific research in audio
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you faroit & contributors
View Topic on GitHub:
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
Expressive Digital Signal Processing (DSP) package for Python
cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding for Python
Python wrapper around sox.
Python I/O for STEM audio files
Read music meta data and length of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA and Wave files with python 2 or 3
Python library for handling audio datasets.
octocat:](https://github.com/quodlibet/mutagen) :package: - Reads and writes all kind of audio metadata for various formats.
octocat:](https://github.com/mikeboers/PyAV) - PyAV is a Pythonic binding for FFmpeg or Libav.
Transformations - General DSP
An audio digital processing toolbox based on a workflow/pipeline principle
Gammatone-based spectrograms, using gammatone filterbanks or Fourier transform weightings.
A fast MDCT implementation using SciPy and FFTs
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 wrapper for rubberband
octocat:](https://github.com/python-acoustics/python-acoustics/) :package: - useful tools for acousticians.
octocat:](https://github.com/Muges/audiotsm) :package: - real-time audio time-scale modification procedures.
octocat:](https://github.com/pyFFTW/pyFFTW) :package: - Wrapper for FFTW(3).
octocat:](https://github.com/grrrr/nsgt) :package: - Non-stationary gabor transform, constant-q.
octocat:](https://github.com/jiaaro/pydub) :package: - Manipulate audio with a simple and easy high level interface.
octocat:](https://github.com/scikit-signal/pytftb) - Implementation of the MATLAB Time-Frequency Toolbox.
octocat:](https://github.com/PyWavelets/pywt) :package: - Discrete Wavelet Transform in Python.
octocat:](https://github.com/bmcfee/resampy) :package: - Sample rate conversion.
Expressive Digital Signal Processing (DSP) package for Python
This library provides common speech features for ASR including MFCCs and filterbank energies.
Audio features extraction
SpeechPy - A Library for Speech Processing and Recognition: http://speechpy.readthedocs.io/en/latest/
octocat:](https://github.com/aubio/aubio) :package: - Feature extractor, written in C, Python interface.
A Python library for audio data augmentation. Inspired by albumentations. Useful for machine learning.
octocat:](https://github.com/bmcfee/muda) :package: - Musical Data Augmentation.
DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.
gentle forced aligner
Praat in Python, the Pythonic way
Neural building blocks for speaker diarization: speech activity detection, speaker change detection, overlapped speech detection, speaker embedding
Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications
Python interface to the WebRTC Voice Activity Detector
A python package for calculating the PESQ.
Python implementation of the Short Term Objective Intelligibility measure
A Python wrapper for the high-quality vocoder "World"
Speech recognition module for Python, supporting several engines and APIs, online and offline.
octocat:](https://github.com/readbeyond/aeneas/) :package: - Forced aligner, based on MFCC+DTW, 35+ languages.
octocat:](https://github.com/persephone-tools/persephone) :package: - Automatic phoneme transcription tool.
octocat:](https://github.com/MontrealCorpusTools/Montreal-Forced-Aligner) - Forced aligner, based on Kaldi (HMM), English (others can be trained).
Perceptial Models - Auditory Models
Inner ear models for Python
Audio library for modelling loudness
octocat:](https://github.com/brian-team/brian2) :package: - Spiking neural networks simulator, includes cochlea model.
octocat:](https://github.com/csteinmetz1/pyloudnorm) - Audio loudness meter and normalization, implements ITU-R BS.1770-4.
Sparse Beta-Divergence Tensor Factorization Library
octocat:](https://github.com/interactiveaudiolab/nussl) :package: - Holistic source separation framework including DSP methods and deep learning methods.
Music Information Retrieval
Python tools for the corpus analysis of popular music.
octocat:](https://github.com/CPJKU/madmom) :package: - MIR packages with strong focus on beat detection, onset detection and chord recognition.
octocat:](https://github.com/craffel/mir_eval) :package: - Common scores for various MIR tasks. Also includes bss_eval implementation.
octocat:](https://github.com/urinieto/msaf) :package: - Music Structure Analysis Framework.
kapre: Keras Audio Preprocessors
Data manipulation and transformation for audio signal processing, powered by PyTorch
Symbolic Music - MIDI - Musicology
Mingus is a music package for Python
octocat:](https://github.com/cuthbertLab/music21) :package: - Toolkit for Computer-Aided Musicology.
octocat:](https://github.com/olemb/mido) :package: - Realtime MIDI wrapper.
Python game programming in Jupyter notebooks.
Play and Record Sound with Python
Scalable audio processing framework written in Python with a RESTful API
Audio related APIs and Datasets
A Python wrapper around the Soundcloud API
octocat:](https://github.com/marl/medleydb) - Parse medleydb audio + annotations.
Wrappers for Audio Plugins
octocat:](https://github.com/scipy-lectures/scipy-lecture-notes) - Highly recommended tutorial, covers large parts of the scientific Python ecosystem.
Short overview of equivalent python functions for switchers.
Python Data Science Handbook: full text in Jupyter Notebooks
John C. Glover, Victor Lazzarini and Joseph Timoney, Linux Audio Conference 2011.
Video](https://www.youtube.com/watch?v=MhOdbtPhbLU) - Brian McFee, Colin Raffel, Dawen Liang, Daniel P.W. Ellis, Matt McVicar, Eric Battenberg, Oriol Nieto, Scipy 2015.
Video](https://www.youtube.com/watch?v=37R_R82lfwA) - Hervé Bredin, Ruiqing Yin, Juan Manuel Coria, Gregory Gelly, Pavel Korshunov, Marvin Lavechin, Diego Fustes, Hadrien Titeux, Wassim Bouaziz, Marie-Philippe Gill, ICASSP 2020.
Audio Signal Processing, Python based course from UPF of Barcelona and Stanford University.
Masters Course Material (University of Rostock) with many Python examples.