Skip to content

andreimatveyeu/awesome-python-audio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Python Audio and Music 🎵

A curated list of Python tools, libraries, and resources for audio and music processing, analysis, synthesis, and playback.

Analysis and Visualization

  • aubio: a library for audio and music analysis
  • audio-fingerprint-identifying-python: The Shazam-similar app, that can identify the song using audio fingerprints & spectrum analysis and Fast Fourier transform
  • audioFlux: A library for audio and music analysis, feature extraction.
  • AudioLazy: Expressive digital signal processing (DSP) package for Python
  • AudioOwl: Fast and simple music and audio analysis using RNN in Python
  • BregmanToolkit: Audio and Music Analysis and Synthesis in Python
  • Essentia: C++ library for audio and music analysis, description and synthesis, including Python bindings
  • freesound-python: Freesound API wrapper to retrieve information and analysis descriptors
  • librosa: Python package for music and audio analysis
  • Madmom: Madmom is an audio signal processing library written in Python with a strong focus on music information retrieval (MIR) tasks.
  • mir_eval: Evaluation functions for music/audio information retrieval/signal processing algorithms.
  • paura: Python AUdio Recording and Analysis (paura)
  • pyAudioAnalysis: Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications
  • Pyo: Python DSP module with advanced analysis functionalities
  • Realtime_PyAudio_FFT: Realtime audio analysis in Python, using PyAudio and Numpy to extract and visualize FFT features from streaming audio.
  • scipy.signal: Signal processing routines for SciPy
  • Spleeter: Deezer source separation library including pretrained models.
  • timeside: TimeSide is a Python framework enabling low and high level audio analysis, imaging, transcoding, streaming and labelling.

Audio Manipulation

  • audiomentations: Audio data augmentation
  • audioread: Backend-agnostic decoding of sound files
  • babycat: An audio manipulation library for Rust, Python, WebAssembly, and C.
  • matchering: Open Source Audio Matching and Mastering
  • Matchering-cli: Simple Matchering 2.0 Command Line Application
  • noisereduce: Noise reduction using spectral gating in Python
  • numpy & scipy.io.wavfile: Read/write and manipulate WAV files
  • pedalboard: ython library for working with audio: reading, writing, rendering, adding effects, and more.
  • pyAudioProcessing: Audio feature extraction, classification, segmentation
  • pydsm: Toolkit for sound manipulation using Deep Learning
  • PyDub: Manipulate audio with a simple and easy high level interface
  • PythonAudioEffects: A Python library that can apply: darth vader, echo, radio, robotic, and ghost effects to audio samples.
  • pytorch/audio: Data manipulation and transformation for audio signal processing, powered by PyTorch
  • simpleaudio: Playback and recording functionality
  • SoundDevice: Play and record audio without resorting to C libraries
  • soundfile: Read and write sound files
  • SoX: Python wrapper for SoX, Swiss Army knife of sound processing
  • wave: Read and write WAV files (standard library module)

Datasets

Audio

  • AudioSet: Large-scale dataset of manually annotated audio events
  • Birdsong: Dataset of annotated bird songs and calls
  • ESC-50: Environmental sound classification dataset
  • Free Spoken Digit Dataset: Dataset of spoken digits in English
  • Freesound Dataset: A free audio dataset of spoken digits. Think MNIST for audio.
  • RAVDESS: Audio-visual dataset of emotional speech and song
  • Speech Commands: Dataset for speech command recognition
  • TIDIGITS: Spoken digit dataset for speech recognition
  • UrbanSound8K: 8,000 urban sound samples categorized into 10 classes
  • VCTK: Multispeaker speech dataset for voice technologies
  • VoxCeleb: Large-scale speaker identification dataset

Music

  • AcousticBrainz: Dataset for computational music analysis
  • Beatport EDM Key: Dataset for electronic dance music tracks and their musical key
  • DALI: Dataset of lyrics and audio with time alignments
  • DEAM: MediaEval Affective Impact of Movies Task dataset for music emotion recognition
  • FMA: Free Music Archive dataset for music analysis
  • hsmusic: Huge symbolic music dataset
  • IRMAS: Instrument recognition in musical audio signals
  • Jamendo Audio Tagging: Dataset for multi-label audio tagging
  • MAESTRO: MIDI dataset for training music generation models
  • MagnaTagATune: Dataset for music annotation and audio tagging
  • MedleyDB: Dataset for multi-track mixing
  • Musdb18: Dataset for music source separation
  • NSynth: Large-scale and high-quality dataset of annotated musical notes
  • Open MIC: Open Music Instrument Classification challenge dataset
  • RWC Music Database: Musical instrument sound, genre, rhythm databases
  • symbolic-music-datasets: Symbolic music datasets
  • The Million Song Dataset: Massive collection of audio features and metadata

Music Theory and Composition

  • Abjad: Abjad is a Python API for building LilyPond files. Use Abjad to make PDFs of music notation
  • AthenaCL: AthenaCL is an algorithmic composition tool by Christopher Ariza. This is a Python 3 fork of it, since the original codebase is no longer maintained.
  • maelzel: A framework for computer music in python
  • MIDIUtil: A pure Python library for creating multi-track MIDI files
  • mingus: Advanced music theory and notation package
  • music21: Toolkit for computer-aided musical analysis
  • Musical-scales: Retrieve a scale based on a given mode and starting note.
  • MusicMaker: A Music Maker using Python - Audio Description Language
  • MusPy: Toolkit for symbolic music generation
  • pychord: Handle and transform musical chords
  • pyHarmonySearch: Harmony search algorithm for musical composition
  • PyTheory: Toolset for music theory concepts like scales and chords
  • scamp: a Suite in Python for Computer-Assisted Music

Playback and Streaming

  • audioread: cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding for Python
  • audiostream: Audio API for streaming raw data to speakers
  • beets: music library manager and MusicBrainz tagger
  • discord.py: Python wrapper for the Discord API, including music streaming capabilities
  • Mopidy: Extensible music server written in Python
  • Mopidy-YouTube: Mopidy extension for playing music from YouTube
  • mpv: Python interface to MPV for audio and video playback
  • MusicBot: Discord music bot written in Python
  • pyAV: Pythonic bindings for FFmpeg's libraries for audio and video processing
  • pygame.mixer: Pygame module for sound loading and playback
  • pyglet: Cross-platform windowing and multimedia library
  • pyradio: Command line internet radio player
  • Python-SoundDevice: Play and Record Sound with Python
  • Spotipy: Python client for the Spotify Web API

Synthesis and Generation

  • Audioguide: Program for concatenative sound synthesis
  • ctcsound: Python Bindings for Csound using ctypes. Can be used from python2.x and python3.x as well.
  • FoxDot: Python-based live coding environment for sound synthesis
  • Magenta: Machine learning for the creative process, including music synthesis
  • Mido: MIDI objects for Python
  • musicautobot: Music generation with transformers
  • Nsynth: Neural audio synthesis model
  • Pippi: Computer music composition library
  • pyfluidsynth: Python bindings for FluidSynth, a software synthesizer for audio signals from SoundFonts
  • PySynth: Simple music synthesizer written in Python
  • Python-audio: Jupyter notebooks about audio signal processing with Python
  • Python-musical: Python module for procedural music creation.
  • WaveGAN: Generative model for raw audio

Tutorials

librosa

PyDub

Releases

No releases published

Packages

No packages published

Languages