NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #4354 most downloaded on PyPI
A Python library for adding effects to audio.
Last release 25 days ago
09 Sep 2026
Release timing varies
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
77 releases · first in 2021
One column per quarter.
Add support for Python 3.15 by @psobot in #504
Full Changelog: v0.9.24...v0.9.25
Add num_threads to AudioFile::encode .
Add ability to specify codec-specific options. by @psobot in #480
Full Changelog: v0.9.22...v0.9.23
Add cp314-manylinux_aarch64 wheel to build matrix by @thiger7 in #456
cp314-manylinux_aarch64 wheel to build matrix by @thiger7 in #456Full Changelog: v0.9.21...v0.9.22
Add support for reading WAV files containing ADPCM, A-law, µ-law, or 64-bit float data.
Full Changelog: v0.9.20...v0.9.21
Update lockfile after Python version requirements update by @hyperc54
Add support for Python 3.14 and drop support for Python 3.9.
Full Changelog: v0.9.18...v0.9.19
Warning This version was yanked from PyPI due to a segfault that could occur in MP3 reading, writing, or compression code paths. Please upgrade to v0.
Warning
This version was yanked from PyPI due to a segfault that could occur in MP3 reading, writing, or compression code paths. Please upgrade to v0.9.19 or newer.
Full Changelog: v0.9.17...v0.9.18
Don't segfault on zero-channel MP3s. by @psobot in #381
input_signal variable in test_returned_sample_count being too short by @hyperc54 in #385Full Changelog: v0.9.16...v0.9.17
This is a maintenance release to reduce binary sizes on PyPI, and should have identical functionality to v0.9.15 (which will be deleted from PyPI).
This is a maintenance release to reduce binary sizes on PyPI, and should have identical functionality to v0.9.15 (which will be deleted from PyPI).
To reduce binary size load on PyPI, Python 3.8 is no longer supported as of Pedalboard v0.9.16.
In addition, the following platforms are now only supported with Python 3.12:
universal2 fat binariesmusllinux)Support for these less-often-used platforms will be moved to newer Python versions over time, targeting the release that is currently in the bugfix stage according to the Python release schedule.
Add pedalboard.io.AudioStream support for Linux (@sarmentow, https://github.com/spotify/pedalboard/pull/368)
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.13...v0.9.14
Add support for Python 3.13rc1 and drop support for Python 3.7 and PyPy.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.12...v0.9.13
Improve error message for bad seek positions.
preset_data property to get/set .vstpreset data directly (@kmontag, https://github.com/spotify/pedalboard/pull/351)reported_latency_samples to expose VST/AU latency.Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.11...v0.9.12
Allow passing NumPy arrays as impulse responses to the Convolution plugin.
<sup>you didn't think that I'd let such a small change be v1.0.0, did you?</sup>
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.9...v0.9.10
Allow MIDI messages for all external instrument plugins (@kmontag, https://github.com/spotify/pedalboard/pull/345)
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.8...v0.9.9
Cache last channel layout when calling AudioFile.write.
AudioFile.write. (https://github.com/spotify/pedalboard/pull/338)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.7...v0.9.8
Add check for empty name_chars list when normalizing param names (@ryansdavis, https://github.com/spotify/pedalboard/pull/331)
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.6...v0.9.7
Add binary state field to VST3 and AU plugins by @kmontag.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.5...v0.9.6
Allow accessing AudioFile metadata after closing.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.4...v0.9.5
Add metadata fields for VSTs and Audio Units.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.3...v0.9.4
## What's Changed * Add AudioFile::encode. (https://github.com/spotify/pedalboard/pull/303) Full Changelog: https://github.com/spotify/pedalboard/comp
AudioFile::encode. (https://github.com/spotify/pedalboard/pull/303)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.2...v0.9.3
Avoid deadlocks and nondeterministic results when using the same AudioFile in multiple threads.
AudioFile in multiple threads. (https://github.com/spotify/pedalboard/pull/298)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.9.1...v0.9.2
Added wheels for Alpine Linux (musllibc) for Python 3.8 and 3.9.
Added wheels for Alpine Linux (musllibc) for Python 3.8 and 3.9.
Release the GIL when reading from BytesIO objects.
BytesIO objects. (https://github.com/spotify/pedalboard/pull/291)ResampledReadableAudioFile. (https://github.com/spotify/pedalboard/pull/293)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.9...v0.9.0
Fix incorrect behaviour on shutdown of some VST3 plugins (@gloriajjl, https://github.com/spotify/pedalboard/pull/285)
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.8...v0.8.9
Release the GIL when calling .read() on a ResampledReadableAudioFile.
.read() on a ResampledReadableAudioFile. (https://github.com/spotify/pedalboard/pull/283)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.6...v0.8.7
Ensure that generated FLAC files have seek tables.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.5...v0.8.6
Properly support parsing MP3 files without headers.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.4...v0.8.5
Raise any Python exceptions thrown during seek operations on file-like objects.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.3...v0.8.4
Add .tell() method to WriteableAudioFile.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.2...v0.8.3
## What's Changed * Add support for Python 3.12. (https://github.com/spotify/pedalboard/pull/237) Full Changelog: https://github.com/spotify/pedalboar
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.1...v0.8.2
Upgrade to RubberBand v3.3.0 and expose extra options in time_stretch.
time_stretch. (https://github.com/spotify/pedalboard/pull/251)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.8.0...v0.8.1
Add pedalboard.time_stretch for time stretching.
pedalboard.time_stretch for time stretching. (https://github.com/spotify/pedalboard/pull/249)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.9...v0.8.0
Improved MP3 compatibility by using an adaptive parser.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.8...v0.7.9
Add explicit error message when swapping the samplerate and num_channels arguments on AudioFile.
samplerate and num_channels arguments on AudioFile. (https://github.com/spotify/pedalboard/pull/238).resampled_to a no-op if the file already has the desired sample rate. (https://github.com/spotify/pedalboard/pull/239)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.7...v0.7.8
Return an integer for AudioFile.samplerate when possible, and allow passing a floating-point value to AudioFile.read.
AudioFile.samplerate when possible, and allow passing a floating-point value to AudioFile.read. (https://github.com/spotify/pedalboard/pull/236)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.6...v0.7.7
Add support for instrument plugins that require event loops to run on start.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.5...v0.7.6
Enable musllinux builds for Python 3.10 and 3.11.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.4...v0.7.5
Added support for external instrument plugins.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.3...v0.7.4
Seeking through resampled audio files (i.e.: via `resampled_to`) has been optimized to run in effectively constant time, rather than linear time (with
resampled_to) has been optimized to run in effectively constant time, rather than linear time (with respect to the seek point). (https://github.com/spotify/pedalboard/pull/215)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.2...v0.7.3
Better handle misbehaving file-like objects when writing audio files.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.1...v0.7.2
Fix FLAC reading when seeking forward in a file or stream.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.7.0...v0.7.1
Add experimental live audio support.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.9...v0.7.0
Fix parsing of low-sample-rate MP3 files.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.8...v0.6.9
Remove errant debugging print() statement when loading some VSTs.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.7...v0.6.8
Empty sample buffers are no longer errantly returned when seeking certain FLAC files.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.6...v0.6.7
Allow backwards compatibility when setting float parameters to strings.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.5...v0.6.6
Explicitly ignore "dB" and "dBTP" when used as a value suffix by VST and AU plugins.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.4...v0.6.5
Patch MP3 parser to correctly ignore Lyrics3 data.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.3...v0.6.4
Fixed an incompatibility with asyncio.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.2...v0.6.3
Fix parameter inference for Valhalla Supermassive.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.1...v0.6.2
Add workaround for loading certain misbehaving plugins.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.6.0...v0.6.1
Fix ineffective getter/setter on NoiseGate (@iCorv, https://github.com/spotify/pedalboard/pull/144)
NoiseGate (@iCorv, https://github.com/spotify/pedalboard/pull/144)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.10...v0.6.0
Added Python 3.11.0-rc1 support.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.9...v0.5.10
Fixed exceptions and crashes when including None in a PluginContainer.
None in a PluginContainer. (https://github.com/spotify/pedalboard/pull/140)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.8...v0.5.9
Fixed a thread safety issue in MP3Compressor.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.7...v0.5.8
Allowed Pedalboard to compile against JUCE 6.15+ on Red Hat. (@rm-star, https://github.com/spotify/pedalboard/pull/121)
IIRFilter subclasses. (https://github.com/spotify/pedalboard/pull/124)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.6...v0.5.7
tl;dr: A couple bug fixes, smaller binary wheels, and better support for autocomplete and type hints in IDEs. 🎉
tl;dr: A couple bug fixes, smaller binary wheels, and better support for autocomplete and type hints in IDEs. 🎉
<img width="611" alt="image" src="https://user-images.githubusercontent.com/213293/178762715-579b7071-a946-47ac-994e-977078bd970b.png">
__repr__ to PitchShift. (https://github.com/spotify/pedalboard/pull/102)README.md (@nashaad, https://github.com/spotify/pedalboard/pull/107)Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.4...v0.5.5
Fix AudioFile behaviour when overwriting existing audio files.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.3...v0.5.4
Handle plugin parameter value parsing better for plugins that expose Hz/kHz values.
Full Changelog: https://github.com/spotify/pedalboard/compare/v0.5.2...v0.5.3
Your coding agent can read these notes before it upgrades. Set up the MCP server →