Manual: Known Issues
This chapter is devoted to addressing compatibility issues that OpenMPT has with certain plugins. The list is by no means complete, and it certainly is not our goal to compile a general list of buggy plugins. Keep in mind that there are many plugins out there that only work with a couple of plugin hosts (because the plugin author was lazy, did not conform to the VST “standard”, only tested their plugin with one host, etc.). The best way to test if a plugin is buggy or just not compatible with OpenMPT is to load the plugin into a similar host (Renoise, Psycle, MadTracker, etc.) and check if they behave identically.
General[edit]
Plugins with hundreds of parameters[edit]
Plugins like Boris K.’s INTRO or Novaflash’s Oxytocin have too many controls for use with MIDI macros. Macros can only be used to control the first 384 parameters.
Workaround: If you need to automate plugin parameters, use these plugins only in MPTM format and access the controllers with Parameter Control Events, in which the limit is 1000.
SynthEdit 1.4 plugins[edit]
Plugins made with SynthEdit 1.4 versions before February 2020 may crash when loading two different SynthEdit 1.4 plugins consecutively and opening both plugins’ editor panels.
Workaround: Use OpenMPT’s built-in plugin bridge, and ask the plugin author to recompile their plugin with the latest SynthEdit version.
SynthMaker plugins[edit]
Some plugins made with SynthMaker, such as Angular Momentum Freehand or SynthSchool Odyssey, will not render parameter or pitch wheel changes correctly during export (most notably, automation will happen in much more coarse steps), even though the track itself will play perfectly during normal playback.
Workaround: Use a recording plugin like Voxengo Recorder and put it at the end of your master plugin chain. Then, play the complete song in the tracker (do not use the export feature). Using slow render may also improve (but not completely remedy) the situation.
Older JUCE plugins[edit]
Plugins based on older versions of the JUCE framework will be unable to open drop-down menus and similar controls when running inside the plugin bridge.
Workaround: If no newer version of the plugin is available, the only way to use those user interface elements is by running the plugin natively in OpenMPT.
Plugins that make use of the full MIDI note range[edit]
Some instrument plugins, notably drum plugins such as Toontrack EZDrummer, make full use of the 128 MIDI note range, but OpenMPT cannot access the highest 8 notes, which has the side effect of not being able to play the highest octave of the instrument plugins.
Workaround: You can use MIDI macros to send arbitrary notes to plugins. For example, you could use the parametered macro 9c z v to trigger any of the 128 MIDI notes and 9c z 0 to stop it.
Crackling and clicking plugins[edit]
With some plugins like Synful Orchestra and older versions of jBridge, semi-random clicks can be heard when using the plugin. This problem does also occur in other VST hosts that use a varying plugin buffer length.
Workaround: None. Notify the plugin authors of the problem. Upgrade to the latest version of jBridge or use OpenMPT’s own plugin bridge.
Freezing plugin GUIs[edit]
By default, OpenMPT declares to not be DPI-aware. However, on Windows 10 version 1809 and newer, it requests the operating system to render certain UI elements at a higher resolution, so that the user interface is not completely blurry at higher DPI settings. Some older plugin GUIs do not appear to be compatible with this upscaling mode.
Workaround: Change the hidden setting Display.UseGDIUpscaling to 0.
Specific Plugins[edit]
Farbrausch V2[edit]
While the V2 can be automated through VST parameters, parameter changes are not made visible in the plugin GUI instantly. Likewise, OpenMPT does not get notified of parameter changes made through the plugin GUI, so recording parameter changes does also not work. Furthermore, the V2 is very unstable when being used together with other plugins (for example it might freeze the host when closing the module), or when loading multiple instances of V2. Those problems are true for all other hosts as well, due to the way V2 works.
Workaround: Use OpenMPT’s built-in plugin bridge to separate V2 from other plugins. If you cannot use the bridge, only ever load one V2 instance (several instances of the plugin’s “single” version will also work). If you want to use V2’s sounds in songs together with other plugins, render its output to a sample slot from a separate module.
Genny Beta[edit]
This plugin uses parameter values outside the nominal 0...1 range without notifying the host about it, so some parameters cannot be automated properly.
Workaround: Different parameter sets can be used by copying the patch to another preset slot and assigning each copy to a different MIDI channel.
Kontakt 2[edit]
Kontakt might have many issues when being used from OpenMPT, including GUI, rendering, and “dropped” output over several notes. However, it seems like more recent versions of Kontakt behave more stable in OpenMPT, even without resorting to “host plugins” like Chainer. (Note: Since these issues have been reported, VST support in OpenMPT has been revamped considerably, so they might be no longer true).
Workaround: Use the latest version of Kontakt to avoid problems. Also, for rendering problems, set the “Slow Render” checkbox in the Wave Export dialog. Users have also suggested using Xlutop’s Chainer VST for older versions, and loading Kontakt into one of its slots; Chainer will then process the VST instrument and send its output to OpenMPT.
MDE-X[edit]
Some effects in Korg’s legacy DSP collection (in particular the mastering limiter) may crash under random conditions which depend on the sound card latency and period settings.
Workaround: Try varying the latency and period settings until the plugin no longer crashes. The latest 64-bit version of the plugin should no longer have this issue.
Roland (Edirol) Orchestral[edit]
This plugin does not make use of the VST parameter mechanism, so plugin settings have to be adjusted using MIDI CCs instead. Furthermore, the performance data (plugin settings) is not saved, so re-opening a module using Orchestral will not recall the previous settings (this is a plugin issue, not an issue of OpenMPT).
Workaround: Use MIDI messages to transmit controller data. Read the plugin’s manual to see its MIDI Implementation Chart. In most cases you can Ctrl-click on the target GUI control to see which MIDI CC# the control is accessed by, then assign the MIDI CC to a macro.
RS-MET Plugins[edit]
Several older RS-MET plugins have been found to be incompatible with Windows 10.
Workaround: Find up-to-date replacements, or set the OpenMPT / Plugin Bridge executable’s compatibility settings to Windows 8 or older.
Synth1[edit]
Due to a bug in the 64-bit version of Synth1, it must be used through OpenMPT’s plugin bridge on Windows 8 and newer.
Workaround: Use the plugin bridge for Synth1 64-bit, or use the 32-bit version of the plugin.