Working with VSTs

en

Contents

Working with VSTs and VSTi Plugins[edit]

VST and VSTi are industry standard plugin formats supported in most digital audio workstations. A VST can be anything from a tiny sound effect (similar to LADSPA) to an advanced instrument. VST can be both expensive and free.

Luckily, these powerful plugins work in LMMS 99% of the time. Because most VSTs are written to be Windows compatible, VSTs tend to work better on Windows LMMS installations. Linux LMMS installations require Wine installed before these plugins can be used. If your computer does not already have Wine getting it is usually as simple as searching for the package "Wine" and installing it from the package manager.

Opening a VST in LMMS takes just three steps:

  1. Add the Vestige instrument from the toolbar on the left
  2. Browse to the VST or VSTi plugin from the instrument plugin window. Only .dll and .exe formats are supported.
  3. Wait for the VST to load. Depending on how large or complex the plugin is, this may take a while. On slower machines or when loading larger plugins, LMMS may freeze. Just be patient!

You can also browse for a specific VST dll in the Sidebars file-browser(s) My-Home or My-computer. Here you simply browse for the dll of your choice, and then just drag it into either song-editor, or Beat&Bass-editor. Again -Be patient, and let the VST load to 100%, before you continue with your project.

A list of tested VSTs can be found on the Tested VSTs page. In this section, you can find several recommended VSTs that are available for free. If you have found a VST that works well with LMMS, you can aid the community greatly by adding it to the list or making a thread or the forum.

A word of advice: Don't download every VST you stumble across. You will end up with a massive list of VSTs that you will probably never fully learn how to use. Limit yourself to having VSTs you know you will use and practice using them, you will get better results using that method.

How to use VeSTige Instrument Presets[edit]

For this section, download and install the VST Synth1. You can find Synth1 here. When downloading other VSTs, you should try to download them from their official sites. However in useful resources you can find several safe sites dedicated to hosting VSTs for download.

So why Synth1? Synth1 is our proof-of-concept-VST. If you find a VST that refuses to work in LMMS, yet Synth1 works, LMMS will not be able to handle that particular VST.

When you download VSTs, unpack them in the folder you have entered as your default VST folder in the preferences of your LMMS installation.

VST-PLUGIN DIRECTORY is where LMMS will look for VSTs

In Synth1's case, it will need to be installed. This is not always the case with VSTs, but for the few that ask for you to specify the installation folder, be sure to always use the same one. It is also recommended that you use a subfolder structure for the various VSTs. This is especially important for VSTs that have their own banks and/or multiple files they require to run. How many files end up in the folder depend on how advanced the VST happens to be, but there will always be at least a .DLL file. This .DLL is the actual plugin.

So... lets load one instance of Synth1. Normally you will load VSTs into already open projects, and it is important that you always save before loading VSTs. I offer this warning because depending on how big the VST is, it runs the potential of crashing LMMS.

  1. In LMMS, click on the Instrument plugins button on the left sidebar. This should open up a list of built in instruments. Loading from this list opens the instrument in its default state - something that is very important for successfully opening VSTs in LMMS.
  2. Locate VeSTige in the list and drag it into your project.
  3. Open the instrument GUI (eg. click on the instrument in the song-editor).
  4. To the right of the text "No VST Plugin loaded" there is a folder symbol.
  5. Click on this symbol.
  6. Browse to the VST folder where your VST is located.
  7. Click on the DLL and wait for LMMS to load the VST.

When it loads, The VSTs GUI will open. Be careful when opening and closing VST GUIs. This action has a tendency to freeze LMMS, so use the "Show/Hide" button whenever you need to hide the GUI.

If you successfully loaded Synth1, you should now be able use it in your project! You can also automate the dials and sliders in your VSTs. Directly below the folder icon there is a wrench-icon. Clicking on it will show the interface for the VST's controllers. You can CTRL+drag any of these dials into an automation-track or connect them to a controller, such as an LFO.

The Synth1 LMMS dial array. For instance, filter-amount is the second dial in the third row

LMMS can save and load VST presets! Lets take a look at how:

  1. Name the instrument.
    1. Quite often this leads to 'names' like Thunder-bolt, Imo, that is a bad 'name'. Try to express what the instrument actually is or can! -So a name like RoughScratchBass will be much more useful, than 'Thunder-bolt'..
  2. In the LMMS VeSTige instrument window, click the save icon.
  3. In the save window that opens, create a new folder called "VeSTige" in the "presets" folder, located in your LMMS installation. You can then make subfolders for specific VSTs if you'd like. This keeps things tidy and structured, but is completely optional.

Loading saved VST presets is just as easy as saving them:

  1. Remember to always save the project first!
  2. Load a new VeSTige-plugin into the project, from sidebar.
  3. Open the VeSTige GUI. It should open to the default GUI. Having the instrument GUI open shows that it is the "Active Instrument".
  4. The VST preset will be wherever you saved it. If you saved it in the "lmms\presets\VeSTige" folder you should be able to access it from the left sidebar.
  5. Right-clicking the preset will open a menu, choose "Send to Active Instrument Track"
  6. Wait for it to load.

If it loaded correctly, you will now be able to use the preset in your project!

VSTs & Linux[edit]

To use VSTs on Linux, You also need WINE.

The best way to install LMMS and wine is through the package manager.

Depending on the distro you use, you might need to add an repository which has wine and LMMS.

It is recommanded to Install wine first and then lmms.

The Distro that most has full success with:
KXStudio "lmms-vst-full - Linux Multimedia Studio - full VST support Using Wine"
KXStudio


In context of Zorin a set of cmd was posted.
I post them here, and i suspect that they will work fine in all installs:


sudo apt-get install apt-transport-https software-properties-common wget libglibmm-2.4-1v5
wget https://launchpad.net/~kxstudio-debian/ ... o1_all.deb
wget https://launchpad.net/~kxstudio-debian/ ... o1_all.deb
sudo dpkg -i kxstudio-repos_9.4.1~kxstudio1_all.deb
sudo dpkg -i kxstudio-repos-gcc5_9.4.1~kxstudio1_all.deb

You can then install LMMS with VST support by running the following commands in a Terminal window:

sudo apt-get update
sudo apt-get install lmms-vst-full


Other Packs:

Ubuntu: https://apps.ubuntu.com/cat/applications/synaptic/

openSUSE: https://en.opensuse.org/YaST_Software_Management

Fedora: https://fedoraproject.org/wiki/Package_ ... ent_system In respect to Fedora, see the special info down this page.

If all went well, you should see Vestige under instrument plugins.

Drag vestige into the song editor. Click on the folder icon of vestige, and browse to the .dll file.

One of the problems with not getting it to work, can occour if WINE cant locate the VST.

To use the VST support with Wine, you have to assign /usr/lib/lmms to some drive letter using Wine configuration (winecfg). Otherwise, Wine cannot load VST plugin (VeSTige).

That should take care of this localisation issue.

For synth1 and other vst, you might need to run an .exe file first, through wine. (remember that not all vst will work) See the readme file or manual of the vst. Most vst will however work by just loading the .dll file through Vestige.

If vestige is not showing under the instrument plugins, there is prob an issue with wine. To solve this, a distro specific forum is the best place to ask for help. ( or contact the package manager )

Some vst you might want to use like easy Q, are a bit more tricky. You can't have the .dll in any folder you like. The .dll file needs to be in the exact place stated under settings. Fx mixer master channel, click add effect, and the vst should show in that list.

If it does not show this vst might not work at all, but most likely the .dll file is not in the exact place stated under settings.

In some circumstances, it may be necessary to make configuration to WINE.

We here list some of the methods that has worked for users with specific packs:
COMPILE LMMS 1.2 RC3 IN UBUNTU (17.04): To avoid broken dependencies, you should uninstall wine before to start, in case you already have it.

mkdir build target
cd build
sudo apt-get install build-essential cmake libsndfile1-dev  libfftw3-dev \
libvorbis-dev libogg-dev libmp3lame-dev libasound2-dev libjack- jackd2-dev \
libsamplerate0-dev libsdl-dev libstk0-dev stk libfluidsynth-dev  portaudio19-dev \
libfltk1.3-dev libwine-dev:i386 wine32-tools:i386 
libxinerama-dev libxft-dev libgig-dev git qtbase5-dev \
qttools5-dev-tools qttools5-dev
cmake .. -DCMAKE_INSTALL_PREFIX=../target/ -WANT_VST=ON 
-DWANT_QT5=OFF make -j4 make install


A thread for special issues with Ubuntu 16.04 offers a solution
http://lmms.io/forum/viewtopic.php?f=7&t=6104&p=23784#p23784
Install Wine and configure it to Win7, as described on this page:
http://nickhumphreyit.blogspot.pt/2013/ ... -lmms.html


Building LMMS x64 on Fedora
Users has reported the need for extended wine-packages

To built LMMS in Fedora, first look for

libwinecrt0.a 

on your system with the following command:

sudo find /usr -name libwinecrt0.a

You will most probably get

/usr/lib64/wine/libwinecrt0.a 

only, which is 64 bit. you need to install 32 bit version too. To find those 32 bit packages look up the repositories, as follows:

dnf search wine| grep i686

You will get several package names including wine.i686 and wine-devel.i686, Install them as follows:



sudo dnf install wine.i686 wine-devel.i686

Be careful not to install every wine-related package you see as some conflict with each other and you might need to erase some to install some.


After using the find command of step 1, you will also see

/usr/lib/wine/libwinecrt0.a, 


which shows the location of 32 bit wine version. Change the patch in CMakeLists.txt as follows:

if("${WINEBUILD_OUTPUT}" MATCHES ".*lib64/wine/libwinecrt0.a.*")SET(EXTRA_FLAGS ${EXTRA_FLAGS} -nodefaultlibs /usr/lib/i386/wine/libwinecrt0.a -luser32 -lkernel32 -lgdi32)

Problems with WINE[edit]

So we said : "To get VSTs working on LMMS, you need Wine."

The issue is, sometimes Wine doesn't work! Our User Douglas writes here how he managed to solve this for Debian:

"After struggling with this for a bit (only three years), I finally figured it out. At first I thought that it was an issue with LMMS and Debian, but it turns out it was an issue with Wine! Here are the steps I took to fix it:

1. Uninstall Wine

2. Go to https://wine-staging.com/installation.html

3. Follow the instructions for installing the wine-staging package
3b Install wine-staging, wine-staging-amd64, and winehq-staging

4. It should be done, assuming I didn't forget anything... simply run LMMS (make sure you have lmms-vst-full 1.1.3 from KXStudio), and VSTs should be working now!

I don't know if this is important (it probably isn't), but I still have wine64 installed. I doubt that it is required, but it is possible.

If you use a different Linux than Debian, and you have had WINE problems, but this guide also help you, then we would very much like to know about it, on the forum!

Instrument tabs[edit]

The instrument-plugin for VST's is empty because it is not supported. VSTs creates sound in a way, that makes ENV/LFO unable to change the sound. It is however very few VSTs that do not have their own envelope and LFO controls, and since these can be automated, you have similar functionality! It could be wise to restrict yourself to a handful of good VSTs - You simply have to know the one you use in details anyway! You can use all the features on the FUNC tab, and you can also use effects on VSTs, so there is nothing different from other instruments there.


VST related problems[edit]

Most problems with VSTs are occurring when a project loads. It is especially sinister when re-loading a promising big project, to just get a popup telling you that LMMS has to close, because VST-xyz caused a problem!
Do not worry. Your project can be rescued!
All you have to do, is to remove the problem VST-dll from the VST-path, for example temporarily cut the dll file to another folder. LMMS will then just load without the VST, and no notes are lost.

The five point VST test[edit]

In order to never face this kind of problem, always test before you use a VST for an actual project!

  1. Output: The VST should make sound, in a predictable and expected way. Does changes in knobs and sliders produce expected output?
  2. Reload: Does changes in settings on the VST UI persists after a reload? -Will it reload?
  3. UI & Automation: Does the VST-knobs connect to LMMS' knobs?
  4. Saving: Can you save and load presets (both as fxp and lmms-presets? - In fact only one of these options is needed)
  5. Banks: If it uses banks, can it load these, and can you add new items to the bank?

If you successfully have tested the VST, for these 5 points, you can add it to the VST Database!

Navigation[edit]

How To:


Attribution. In addition to the history page this article is based on the previous article for the 0.4 series.

Prev: Working with Effects and the Mixer Up: Manual Next: Using MIDI