Version 1.3 / 1.4 FAQ

This is the main version of SynthEdit. Please back up your older SynthEdit projects before using this version.

Requirements

New Features (64-bit version)

  • Export 64-bit VST3 and Mac Audio Unit plugins.
  • Latency compensation.
  • Improved oversampling.
  • Improved DPI awareness (looks better on Ultra-HD and Retina displays).
  • More modules.

Notes:

1 - Since SynthEdit 1.2 modules (SEMs) are stored in two locations:

64-bit SynthEdit:

  • C:\Program Files\SynthEdit 1.4\modules - Modules shipped with SynthEdit only.
  • C:\Program Files\Common Files\SynthEdit\Modules - 3rd-party add-on modules from other vendors. Please copy your 3rd-party modules here.

32-bit SynthEdit:

  • C:\Program Files (x86)\SynthEdit 1.4\modules - Modules shipped with SynthEdit only.
  • C:\Program Files (x86)\Common Files\SynthEdit\Modules - 3rd-party add-on modules from other vendors. Please copy your 3rd-party modules here.

Don't copy SynthEdit's own SEMs to the common folder (the ones already in C:\Program Files (x86)\SynthEdit 1.2\modules. If you are using SynthEdit 1.1 alongside Version 1.2, leave your existing module folder as-is. Version 1.2 will not access these.

2 - If you experience crashes at start-up this may be caused by a problematic module. Temporarily move your modules folder elsewhere. Then try starting SynthEdit again.

Know Issues:

  • Playing 'Keyboard' module doesn't work from PC keyboard.

  • To avoid overloading your graphics card, SynthEdit will open only 5 windows at a time.

Known Issues (64-bit)

  • The 64-bit version requires 64-bit modules. Most of your older modules are probably 32-bit.  The 64-bit version will load projects created in the 32-bit version, but some modules will be inactive if you don't have a 64-version of them.
  • 64-bit SynthEdit plugins use a new drawing API. 64-bit GUIs (Control panels) do not support all controls, some types of controls will not show, some controls will look different in a VST3 plugin. 64-bit plugins support only images less than 16384 x 16384 pixels in size ( 8192 x 8192 on Windows 7). Fonts may render slightly differently, text is sometimes wider or narrower or smoothed differently.
  • 64-bit SynthEdit will export both VST2 and VST Version 3 Plugins (VST3 is the newest type of VST plugin). 32-bit SynthEdit will export only VST Version 2 plugins.
  • 64-bit Plugins have reduced support for MIDI. Only Note, Controller and SYSEX messages can be received by a plugin, plugins do not currently send any MIDI. This is due to a limitation of the VST3 Plugin format.
  • The "Embedded files" feature works differently in SE 1.2 (and later), these files are merely copied alongside the exported plugin's other files. The reason for this is Microsoft Windows increased security which prevents files being extracted from a VST at runtime. This feature has been renamed "Copy Additional Files" to better explain what it does.
  • Mac export is currently experimental, some features may not work. Some modules are not available for Mac yet.
  • Some modules from the older version of SynthEdit are not compatible with VST3: e.g. Float-Scaler (please replace with Float-Scaler2).
  • Oversampling a synthesizer will not work unless the oversampled container contains a Patch-Automator module.
  • 64-bit SynthEdit does not support loading VST Plugins into SynthEdit (32-bit does).

Presets

The VST3 plugin format has a new approach to presets. Presets are now stored individually on disk. i.e. They are not stored privately inside each plugin.  This new approach does not mesh well with how SynthEdit has managed presets in the past. For example, the "Ignore Program Change" feature does not work at all in VST3 plugins.

Also, with VST3 it's normally the "host" (DAW) that has the responsibility of choosing and loading presets. A plugin itself is not required to show any list of presets, nor required to provide any kind of preset browser. It is for compatibility with VST3 DAWs that SynthEdit exports your plugins presets as individual files (*.vstpreset). You usually ship these with your plugin to the end-user.

Despite VST3 plugins not needing to manage presets themselves, we have had many requests for a preset-browser that works in VST plugins.  To help with these issues, SynthEdit 1.4 has a new module, "Preset Browser", that can browse VST presets on disk. This module also allows you to categorize presets into groups of similar presets. It can also load and save presets in several formats.

Using the Patch Browser

The simplest way to use the patch browser is to connect a Popup Menu module, this will not only list the available presets, but also group them into categories (if you are using that feature).

Patch BrowserAlternately you can create a patch browser using List Box modules. The Menu-to-Listboxes module can be used to separate the categories and presets into two lists.

Patch Browser B

Setting categories

Each preset can be tagged with a category. To set the categories on presets, hook up a Text Entry sub-control to the Preset Browser as below. In the Text-Entry3, type in a category.

Patch Browser C

Loading and Saving presets

To give the end-user control over the loading and saving of presets from disk, hook up a Popup Menu module like so...

Patch Browser D

Sharing presets between different plugin formats

To convert presets between the various different preset formats like *.vstpreset and *.aupreset, SynthEdit offers a generic format, the *.xmlpreset which can be used to move presets between SynthEdit, Audio Unit plugins, and VST plugins. This format is also a plain-text format, so it provides the opportunity for power-users to tweak the presets manually if you wish.

Presets in VST2 Plugins

  The VST2 plugin standard requires plugins to hold presets internally and provide the list of presets to the DAW.  To aid this, when saving 64-bit VST2 plugins SynthEdit stores all presets from your project as "Factory Presets" inside the plugin.
   In VST2 plugins the  "Patch Browser" module behaves differently: It presents a list of the internal (factory) presets, but in addition adds any external preset files (in the *.vstpreset format). This allows the user to choose from both factory-presets and user-saved presets. If the same preset name exists in the factory list and on disk, only the disk-based preset is shown. This prevents double-ups from appearing on the list.

Upgrading older projects

Newer versions of SynthEdit will generally open projects made with an older version. However, if you encounter problems loading files from Versions earlier than 1.1 please try loading and saving it into SynthEdit Version 1.1 first. SynthEdit 1.1 is better at upgrading very old project files. Once the project is upgraded to 1.1, it should upgrade further OK.

New Graphics Code

Older versions of SynthEdit were tied tightly to the Windows Platform. With the introduction of Mac support, SynthEdit needed a new graphics layer that worked on both Windows and Mac OSX. SynthEdit 1.2 introduced this new API called "GMPI-GUI". The new API is "virtualized", that is module developers need to write graphics code only once, and this code is portable to any operating system.

This new API takes advantage of improvements in graphics technology by building on top of Microsoft DirectX. Graphics are now smooth (anti-aliased), fast (hardware accelerated) and resolution-independent (looks good on "retina" and "ultra-HD" displays). To ease the learning curve, and to reduce the overheads of virtualization GMPI-GUI's API is very similar to Microsoft Direct-2D. On Mac OSX, GMPI-GUI translates Direct-2D commands into the Mac graphics API (Core Graphics).

Currently, GMPI-GUI is enabled only in 64-bit plugins. Working in SynthEdit you will still see the old graphics rendering. This provides excellent compatibility with your existing projects but can be confusing when your 64-bit plugin ends up drawing slightly different than it did in SynthEdit.

SynthEdit 1.4 consolidates all drawing onto GMPI-GUI which will improve the performance of scrolling and animation in SynthEdit. It will also enable new features like zooming in and out on your project.

SE Version 1.3 Does not understand "ultra-HD" monitors (aka "retina" displays). These are displays with more pixels than standard HD (high density). Also known as High DPI monitors. The result is the GUI within SynthEdit 1.3 will look half the size that it does in a DAW like Cubase.
  SynthEdit 1.4 rectifies this issue. The Graphics in SynthEdit 1.4 will look exactly the same when exported as a VST plugin.

More about Direct-2D

https://msdn.microsoft.com/en-us/library/windows/desktop/dd370987.aspx

https://www.youtube.com/watch?v=HGokM9AikzM