Re:Pedalboard: Spotify’s Audio Effects Library for Python
by jcelerier on Wednesday September 08, 2021 @02:14PM
(#28461005)
you can do that trivially with sox (http://sox.sourceforge.net/sox.html)
alias fx="sox - -t wav -"
cat foo.wav | fx overdrive | fx reverb | play -
considering that sox has existed since the early 1990's, I'd wager that the demand for that isn't exactly huge(note that in practice you'd directly use sox's play command to apply effects as it's certainly muuuuuuuuuuuch more efficient than to spin up a ton of processes which'll read from stdin/stdout)
Re:Pedalboard: Spotify’s Audio Effects Library for Python
by dimatura on Wednesday September 08, 2021 @02:51PM
(#28461481)
I've never actually used sox for fx, I wonder how good they are. (I have used it plenty for resampling, normalization, trimming, etc). But regardless, there's thousands of VSTs out there -- a lot more options than whatever sox has built in.
Re:Pedalboard: Spotify’s Audio Effects Library for Python
by jcelerier on Wednesday September 08, 2021 @02:57PM
(#28461544)
IIRC Sox can apply plugins, maybe not vst but lv2 or ladspa
Re:Pedalboard: Spotify’s Audio Effects Library for Python
by xorcist on Thursday September 09, 2021 @11:31AM
(#28470790)
sox filters are generally high quality, they weren't designed to run in real time.
Re:Pedalboard: Spotify’s Audio Effects Library for Python
by gregsadetsky on Wednesday September 08, 2021 @02:18PM
(#28461065)
That's an interesting idea that you should be able to build on top of Pedalboard -- i.e., implement a CLI that accepts input and output file paths (and optionally support piped data, as in your example) and expose the VST plugin names and their options i.e.
$ cat sound.wav | pedalboard --compressor --compressor-threshold-db=-50 --gain --gain-db=30 | aplay
Re:Pedalboard: Spotify’s Audio Effects Library for Python
by PaulDavisThe1st on Wednesday September 08, 2021 @02:11PM
(#28460967)
That's easy to do if you first strip the WAV formatting stuff and then at the end add back the format information.
You can't really do it without that, because sound.wav contains both actual audio data and "metadata".
In the real world however, almost nobody who has done this sort of thing actually wants to do it that way. The processing always has a lot of parameters and you are going to want to play with them based on the actual contents of sound.wav. Doing this in realtime (listening while fiddling) is much more efficient than repeatedly processing then listening.
cat sound.wav | distortion | reverb | aplay