September 7, 2021
In order to add effects to the audio in Python we have opened the structure of the sourced pedalboard, Spotify. Pedalboard makes it easy to use studio-quality audio effects in your code instead of your digital audio workstation (DAW).
If you ask a music or podcast producer where they spend most of their time, they’ll say DAW – an app that lets them edit, manipulate, and perfect their audio. DAWs are powerful software packages that are currently used to produce large portions of audio. Most of the music or podcast content you hear on Spotify is probably processed by popular DAWs like Ableton Live, Logic Pro3, Or Pro Tools3, Or newer, more readily available tools like soundtrap or anchor. These apps are optimized for high performance and audio quality, and give producers both incredible flexibility and control over their audio.
This ability to play with sound usually goes to DAWs and these apps are made for musicians, not programmers. But what if programmers want to use DAW’s power, speed, and sound quality in their code? Engineers and researchers at Spotify’s Audio Intelligence Lab find themselves with that exact need as part of their state-of-the-art audio research. They found that each existing solution met some (but not all) of the criteria they needed – so instead, they created their own. Enter Padboard, A new Python package.
Pedalboard is a Python audio effects library designed to bridge the gap between professional audio software and Python code. It is built on top of JUCE, for industry-standard structure performance and reliable audio applications. Just like a professional DAW, the pedalboard supports many built-in audio effects, as well as third-party VST33 And audio unit plugins. And like a DAW, Pedalboard prioritizes speed and quality: in basic testing of common developer hardware, it’s 300 times faster than the currently widely used packages for Python audio effects.
Similar to the pedalboard used by guitar players, the pedalboard has a variety of common stylistic effects and enhancements that you can use to change the sound. You will find basic tools for volume control, such as noise gates, compressors and limiters, as well as more stylistic tools such as distortion, phaser, filter and reverb. The pedalboard even includes a built-in convolution operator for high-quality simulation of speakers and microphones. If that’s not enough, no VST33 Or the Audio Unit Effects plugin can be loaded to provide access to more golden possibilities. Once you’ve found the word you’re looking for, you can save your effects by combining plugins into one padboard, which has the added benefit of speeding up processing.
We’ve got a lot of great uses for pedalboards on Spotify so far, including:
- Machine Learning (ML): Pedalboard dramatically speeds up the process of data growth for audio and gives more realistic results. Using the pedalboard, to greatly increase the size of your model’s training data and increase your model’s performance, it’s easy to take a small dataset and augment it with audio effects – reverse, compression, distortion, and more. The pedalboard has been thoroughly tested for high-performance and high-reliability ML use in Spotify and is widely used in tensorflow.
- Content creation: The pedalboard makes it easy to apply audio effects with a small amount of Python code. This can help automate parts of the audio creation process. Implementing a VST33 Or turn on your DAW with the Audio Unit plugin anymore, import the audio, and it doesn’t need to be exported; A few lines of code can do this in one command, or as part of a larger workflow.
- Creativity: Artists, musicians and producers can create new creative effects using padboards with some Python knowledge that will be extremely time consuming and difficult to produce in DAW. And for those just starting out with Python, Pedalboard is a great place to start, as it provides a bridge between code and music.
Spotify has a long tradition of contributing to open source software and our research labs are active participants in the open source and academic community. To continue that tradition, we are sourcing the project after nearly a year of internal use in the hope that it will open up new possibilities for researchers, engineers, musicians and tinkers. The pedalboard is “stage ready” – it supports MacOS, Windows and Linux out of the box, and we’ve used it to process millions of hours of audio internally on Spotify.
If you are interested in using the pedalboard, it is ready now. You can find its code and documentation on GitHub, where we welcome contributions to the code. Installing a pedalboard on your computer is as simple as running a command: Pip install pedalboard. We can’t wait to hear what you use the pedalboard for!
VST is a registered trademark of Steinberg Media Technologies GmbH.