Pedalboard Logo License: GPL v3 Documentation PyPI - Python Version Supported Platforms Apple Silicon support for macOS and Linux (Docker) PyPI - Wheel Test Badge Coverage Badge PyPI - Downloads DOI GitHub Repo stars

pedalboard is a Python library for working with audio: reading, writing, rendering, adding effects, and more. It supports most popular audio file formats and a number of common audio effects out of the box, and also allows the use of VST3® and Audio Unit formats for loading third-party software instruments and effects.

pedalboard was built by Spotify’s Audio Intelligence Lab to enable using studio-quality audio effects from within Python and TensorFlow. Internally at Spotify, pedalboard is used for data augmentation to improve machine learning models and to help power features like Spotify’s AI DJ and AI Voice Translation. pedalboard also helps in the process of content creation, making it possible to add effects to audio without using a Digital Audio Workstation.

Documentation

Features#

  • Built-in audio I/O utilities (pedalboard.io)

  • Built-in support for a number of basic audio transformations, including:

    • Guitar-style effects: Chorus, Distortion, Phaser, Clipping

    • Loudness and dynamic range effects: Compressor, Gain, Limiter

    • Equalizers and filters: HighpassFilter, LadderFilter, LowpassFilter

    • Spatial effects: Convolution, Delay, Reverb

    • Pitch effects: PitchShift

    • Lossy compression: GSMFullRateCompressor, MP3Compressor

    • Quality reduction: Resample, Bitcrush

  • Supports VST3® instrument and effect plugins on macOS, Windows, and Linux (``pedalboard.load_plugin` <https://spotify.github.io/pedalboard/reference/pedalboard.html#pedalboard.load_plugin>`_)

  • Supports instrument and effect Audio Units on macOS

  • Strong thread-safety, memory usage, and speed guarantees

    • Releases Python’s Global Interpreter Lock (GIL) to allow use of multiple CPU cores

      • No need to use multiprocessing!

    • Even when only using one thread:

      • Processes audio up to 300x faster than pySoX for single transforms, and 2-5x faster than SoxBindings (via iCorv)

      • Reads audio files up to 4x faster than librosa.load (in many cases)

  • Tested compatibility with TensorFlow - can be used in tf.data pipelines!

Installation#

pedalboard is available via PyPI (via Platform Wheels):

pip install pedalboard  # That's it! No other dependencies required.

If you are new to Python, follow INSTALLATION.md for a robust guide.

Compatibility#

pedalboard is thoroughly tested with Python 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, and 3.12 as well as experimental support for PyPy 3.7, 3.8, and 3.9.

  • Linux

    • Tested heavily in production use cases at Spotify

    • Tested automatically on GitHub with VSTs

    • Platform manylinux and musllinux wheels built for x86_64 (Intel/AMD) and aarch64 (ARM/Apple Silicon)

    • Most Linux VSTs require a relatively modern Linux installation (with glibc > 2.27)

  • macOS

    • Tested manually with VSTs and Audio Units

    • Tested automatically on GitHub with VSTs

    • Platform wheels available for both Intel and Apple Silicon

    • Compatible with a wide range of VSTs and Audio Units

  • Windows

    • Tested automatically on GitHub with VSTs

    • Platform wheels available for amd64 (x86-64, Intel/AMD)

Reference#

Documentation#