Spotify has quickly become a preferred audio streaming service among thousands of users worldwide. Widening its services into the music industry, Spotify has open-sourced its Python framework, Pedalboard.
The Pedalboard is a Python library for adding effects to audio and supports many common effects outside the box. Essentially, it was built by Spotify’s Audio Intelligence Lab to allow creators to use studio-quality audio effects within Python and TensorFlow.
DAWs and the Landscape
Up until now, music and podcast producers have generally been using DAW – digital audio workstation, software packages that allow them to edit, manipulate and perfect audios. Currently, they are used in the majority of the audios we listen to today, including the content on Spotify. However, while DAWs enable musicians with flexible performance and enhanced control over audio quality, they are not made for programmers.
Spotify’s Pedalboard allows programmers to leverage the “power, speed and sound quality” of DAWs in their code. Marketed as a new Python package, Pedalboard meets the criteria to bridge the gap between professional audio software and Python code.
JUCE is the industry-standard framework for performant and reliable audio applications and is the leading framework for multi-platform audio applications. Pedalboard is built on top of JUCE, allowing it to have remarkable speed and quality. Additionally, the built-in convolution operator allows for high-quality simulation of speakers and microphones. Finally, the package supports several built-in audio effects, third party VST3® and Audio Unit plugins to increase sonic possibilities.
Pedalboard, inspired by pedalboards used by guitar players, includes the stylistic effects found on the instrument. The programmer has the freedom and control to alter sounds with these effects and augmentations. The package also offers volume control tools like a noise gate, compressor, and limiter; and stylistic tools like distortion, phaser, filter, and reverb. The effects can be saved by grouping plugins together into a pedalboard to speed up the process.
Machine Learning and Pedalboard
The Pedalboard is a programmer’s heaven with the ML and content creation related functions it has.
Given its speed, Pedalboard increases the speed of data augmentation and ensures enhanced results. It can be leveraged on models to increase the size of the training data and performance by taking a small dataset and augmenting it with audio effects. The engineering team had taken to a blogpost to claim, “Pedalboard has been thoroughly tested in high-performance, and high-reliability ML use cases at Spotify, and is used heavily with TensorFlow.”
It also makes scripting audio effects applications with Python codes accessible. This makes it possible to automate some parts of the audio creation process – a feature that hasn’t been available with most tools to date. Additionally, the coding process assists the user in creating a line of workflow commands to apply a third-party plugin without launching DAW or importing/exporting audio. This reduces the steps involved in the process with better results.
Creativity is an integral part of the music creation process, requiring human input and not computation. Pedalboard ensures that it is supporting software for the artists and their creativity without hindering it. In fact, musicians and producers only need a little bit of Python knowledge to leverage its creative effects. This process would be a lengthy and time-consuming flow with DAW, but Pedalboard is easier for Python beginners. As a result, Spotify has placed Pedalboard as a bridge between code and music.
The results of the tests run on Pedalboard by Spotify found that the common developer hardware is up to 300 times faster than the Python audio effects packages present in the market today. The company has been using Pedalboard internally to process millions of audio hours for over a year and have now open-sourced the software.The pedalboard is also ‘stage ready’ for macOS, Windows and Linux. Find Pedalboard’s code and documentation on GitHub.
Subscribe to our NewsletterGet the latest updates and relevant offers by sharing your email.
I am a Liberal Arts graduate who enjoys researching new topics and writing about them. An aspiring journalist, I love to read books, go on a drive on rainy days and listen to old Bollywood music.