Code Monkey home page Code Monkey logo

awesome-python-scientific-audio's Introduction

Python for Scientific Audio Awesome

Build Status

The aim of this repository is to create a comprehensive, curated list of python software/tools related and used for scientific research in audio/music applications.

Contents

Audio Related Packages

  • Total number of packages: 72
  • Python version compatibility: 69 63 (²indicates a python 2 only package, ³indicates a python 3 only package; the remaining package support python 2+3).

Read-Write

  • audiolazy :octocat: 📦 - Expressive Digital Signal Processing (DSP) package for Python.
  • audioread :octocat: 📦 - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
  • mutagen :octocat: 📦 - Reads and writes all kind of audio metadata for various formats.
  • pyAV :octocat: - PyAV is a Pythonic binding for FFmpeg or Libav.
  • (Py)Soundfile :octocat: 📦 - Library based on libsndfile, CFFI, and NumPy.
  • pySox :octocat: 📦 - Wrapper for sox.
  • PySynth :octocat: - simple midi-to-wav synthesizer.
  • stempeg :octocat: 📦 - read/write of STEMS multistream audio.
  • tinytag :octocat: 📦 - reading music meta data of MP3, OGG, FLAC and Wave files.
  • audiomate³ :octocat: 📦 - Loading different types of audio datasets.

Transformations - General DSP

Feature extraction

  • aubio :octocat: 📦 - Feature extractor, written in C, Python interface.
  • audiolazy :octocat: 📦 - Realtime Audio Processing lib, general purpose.
  • essentia :octocat: - Music related low level and high level feature extractor, C++ based, includes Python bindings.
  • muda :octocat: 📦 - Musical Data Augmentation.
  • python_speech_features :octocat: 📦 - Common speech features for ASR.
  • pyYAAFE :octocat: - Python bindings for YAAFE feature extractor.
  • speechpy :octocat: 📦 - Library for Speech Processing and Recognition, mostly feature extraction for now.

Speech Processing

Perceptial Models - Auditory Models

Source Separation

  • beta_ntf² :octocat: - Non-Negative Tensor factorisation using PARAFAC.
  • commonfate :octocat: 📦 - Common Fate Model and Transform.
  • NUSSL² :octocat: 📦 - Various source separation algorithms + framework.
  • NTFLib :octocat: - Sparse Beta-Divergence Tensor Factorization.
  • NIMFA :octocat: 📦 - Several NMF flavors.
  • pyFASST² :octocat: 📦 - Wrapper for Flexible Audio Source Separation Toolbox.

Music Information Retrieval

  • Catchy :octocat: - Corpus Analysis Tools for Computational Hook Discovery.
  • dejavu² :octocat: 📦 - Audio fingerprinting and recognition.
  • Madmom :octocat: 📦 - MIR packages with strong focus on beat detection, onset detection and chord recognition.
  • mir_eval :octocat: 📦 - Common scores for various MIR tasks. Also includes bss_eval implementation.
  • msaf :octocat: 📦 - Music Structure Analysis Framework.
  • librosa :octocat: 📦 - General audio and music analysis.
  • rp_extract² :octocat: - Rhythm Pattern music feature extractor.

Deep Learning

Symbolic Music - MIDI - Musicology

  • Music21 :octocat: 📦 - Toolkit for Computer-Aided Musicology.
  • Mido :octocat: 📦 - Realtime MIDI wrapper.
  • mingus² :octocat: 📦 - Advanced music theory and notation package with MIDI file and playback support.
  • Pretty-MIDI :octocat: 📦 - Utility functions for handling MIDI data in a nice/intuitive way.

Realtime applications

Web Audio

  • TimeSide² :octocat: - high level audio analysis, imaging, transcoding, streaming and labelling.

Audio related APIs and Datasets

Wrappers for Audio Plugins

Tutorials

Books

Scientific Papers

Other Resources

Related lists

There is already PythonInMusic but it is not up to date and includes too many packages of special interest that are mostly not relevant for scientific applications. Awesome-Python is large curated list of python packages. However, the audio section is very small.

Contributing

Your contributions are always welcome! Please take a look at the contribution guidelines first.

I will keep some pull requests open if I'm not sure whether those libraries are awesome, you could vote for them by adding 👍 to them.

License

License: CC BY 4.0

awesome-python-scientific-audio's People

Contributors

faroit avatar fzalkow avatar semihsmg avatar stefan-balke avatar yannickjadoul avatar ynop avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.