Quickly/Easily Getting More LV2 Plugins

#1

This topic is in the same general direction as this great post, which, if followed successfully, gets you LOTS (300+) more effects/plugins to play with (though not all of them work right out of the box):

The above method is a bit involved, and I wondered if I could achieve something similar, but with less leg-work, as it were.


More than 200 Plugins, Quick!

The most direct method I’ve found to get proper software for your system installed, is to install from the packages available in the repositories on your system, with a package manager.

Checking apt for lv2 plugins

We can query the apt repositories in a roundabout way for available lv2 plugins:

sudo apt-get update
apt-cache search lv2 | grep -Pi "lv2.*plugin|plugin.*lv2"

You can take a look at what’s available yourself when you are running through this.
At the time of writing, there are 33 packages in the list.

Install the lv2 plugins

Now that we know there’s a bunch packages with lv2 plugins available, we can get them installed with some help from awk and some command substitution:

  • Note: This command installs a broad range of packages, some of which just contain example plugins. See the Notes section at the end for a stricter grep/install command
sudo apt-get install $(apt-cache search lv2 | grep -Pi "lv2.*plugin|plugin.*lv2" | awk '{print $1}')

Fix the pathing with symlinks

After getting the packages installed, we have only one problem left to handle:
The debian packages install the lv2 plugins to /usr/lib/lv2 , but MODEP expects them to be in /usr/local/modep/.lv2 .

I wrote a short script, sys_lv2_to_modep_lv2.sh, to symlink all the system LV2 directories to where MODEP expects to find the things. It is available on my github.

You can download the script onto your pi (curl, scp, wincsp, etc), then make sure it’s executable, and then run it.
Any directory under /usr/lib/lv2 which does not exist under /usr/local/modep/.lv2 will be symlinked into the MODEP LV2 dir.

# download, scp, or winscp the above script onto the pi
# change directory to where ever the file is downloaded to, and:
chmod 755 ./sys_lv2_to_modep_lv2.sh
./sys_lv2_to_modep_lv2.sh

When running the script, you may be prompted to enter your password for some sudo actions (making the symlinks), as the directories we are working with are not writable as your regular user.

Reboot

After all the above is said and done, you should be able to reboot your pi, and when the web GUI comes back up, you should see a plethora of new pedals to play with.

Most of the plugins that get added in this way do not have anything more than a basic tin-can looking interface. They display on the board with Inputs, Outputs, and an On/Off switch, but nothing else.

To get to the knobs of these pedals, you can click the gear icon above it, and do everything you would expect… fiddle with knobs and switches, adjust ranges, assign things to MIDI CC, etc.

Afterward

There’s lots of new things to play with; I’ve just been scraping the surface since yesterday.

One pretty excellent effect I have found so far is a plugin from Steve Harris, “ViNyl (Vinyl Effect)” - WONDERFUL for getting some great lo-fi noise into the signal.

All the steps above could be rolled in to one handy bash script, but I felt like it was better to illustrate some of the logic along the way.

Notes

  • Grep/install strictness

The approach that I followed on my Pi, and documented above, added some plugins that are just “examples”, and meant more for the folks who develop these plugins, rather than the folks that want to use them on a pedalboard.

We can exclude this range of packages with another grep statement:

apt-cache search lv2 | grep -Pi "lv2.*plugin|plugin.*lv2" | grep -Piv "^lib|library|example|dummy|specification"

And then the install command becomes:

sudo apt-get install $(apt-cache search lv2 | grep -Pi "lv2.*plugin|plugin.*lv2" | grep -Piv "^lib|library|example|dummy|specification" | awk '{print $1}') 

Rock on!

7 Likes