Skip to content

Plugin OS compatibilities and, alas, incompatibilities

EvilDragon edited this page Apr 3, 2021 · 13 revisions

We work as hard as we can to make sure all the versions of Surge work with your favorite DAWs on your favorite operating systems. As of 1.7.0, we ship VST3 and AU - while VST2 and LV2 are in the codebase, they are not distributed through Surge installers - and ship them on Windows (32 and 64 bit), macOS, and Linux. This document gives you a guide on which to pick and points out some known incompatibilities and workarounds. We keep it up to date as users report progress or issues.

The general guidance we provide is:

  • on macOS, prefer in order: AU, VST3 then VST2
  • on Windows prefer VST3 over VST2
  • on Linux, use VST3

There are some exceptions to this rule.

We have a list of known DAW issues.

  • In Cakewalk (Windows-only) and Tracktion (Windows and Linux), the zoom system is broken; see the notes on Zoom below
  • Surge doesn't show GUI at all in energyXT (Windows-only DAW)

Linux situation is much less complicated than it was some time ago. It's like this:

  • VST3 is now supported on all major Linux DAWs, and is preferred plugin format to use!
  • VST2 works in the hosts we have tried, but cannot zoom below 100%
  • LV2 sort of works, but has a collection of difficulties in modifying internal state which may make saving and restoring plugin state - especially in Ardour - inconsistent. We do not recommend using the LV2 plugin at this point in time!

Special note: What to do with a host with broken zoom?

Some hosts have issues with zooming for one reason or another. If you use the Zoom menu, you might find the resulting larger or smaller UI clipped or misdrawn. This is generally caused by (1) the VST2 API not really supporting zoom, so we have wedged it in; (2) DAW support being uneven in some versions and (3) these zoom problems are a bad combination of being super hard and super boring to debug and fix.

But the default zoom mechanism means when you start a new Surge instance with a default zoom value set, the plugin will draw properly. So if you are in a host which does not properly support zoom, the right steps are:

  1. See if it is listed above; if not, open a GitHub issue for us (here)[https://github.com/surge-synthesizer/surge/issues].
  2. Instantiate Surge. It will draw properly. Click the Zoom button on the GUI and pick Set Default Zoom Level to...
  3. In the box enter your new default zoom level. For instance, “150” for 150% zoom.
  4. Remove Surge instance then reinstantiate it. Now Surge should appear at 150% zoom level, as will all other instances in the future.

If you wish, you can also edit ~/Documents/Surge/SurgeUserDefaults.xml and adjust the zoom accordingly, if you are the kind of person who is comfy editing XML configuration files directly.