VSTPluginTestHost for Apple Silicon

please find attached a preview version of the VSTPluginTestHost compiled for the new Apple macintosh computers with Apple M1 chips.
Use this for native tests on these machines.

VST3PluginTestHost-AppleSilicon.pkg.zip (10.2 MB)

Thanks a lot Arne!

The host works fine on my Silicon Mac. My plugin also works fine

Question: When I launch VSTPluginTestHost on a Silicon Mac are the plugins also forced to run in Silicon?

Just a minor issue (affects VSTPluginTestHost from VST SDK 3.7 aswell):
If you rename VSTPluginTestHost on the Mac it doesn’t run. " ‘skin.srf’ is no valid skin file for this application"
Note: I had installed it twice and renamed it to have different versions available for testing (Intel vs Silicon).

Thanks for the information. Will see if we can support this.

I just got a MacBook Air M1 laptop and have successfully compiled one of my plugins without any change (from my previous builds on x86) and I can see that the architecture is arm64 (I definitely need to make a universal build but I just wanted to see what would happen if I just did a build without any change at all)

> lipo -archs ~/Library/Audio/Plug-Ins/VST3/SAM-SPL\ 64_Debug.vst3/Contents/MacOS/vst-sam-spl-64

I am using the VSTPluginTestHost that you included in this thread:

> lipo -archs /Applications/VST3PluginTestHost.app/Contents/MacOS/VST3PluginTestHost
x86_64 arm64

When I open the tool there is no plugin at all to load (I do not have any other plugin besides this one on my new laptop). There is no error message or anything.

Do you know what is going on?


Have you tried to run your plug-in thru the validator? Does it work?

Yes it works. But the validator is built as well (so its arch is arm64). I did not try with a validator built with x86 though.

I rebuilt my project to create a universal binary as well (x86_64 arm64) for the plugin and it loads fine with VSTPluginTestHost (x86_64 arm64).

That doesn’t explain why a non universal build (arm64) does not load with VSTPluginTestHost (x86_64 arm64)…

So here is my new issue:

  • I successfully build a universal binary on Apple Silicon for my plugin:
file ~/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin
/Users/ypujante/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit bundle x86_64] [arm64]
/Users/ypujante/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin (for architecture x86_64):	Mach-O 64-bit bundle x86_64
/Users/ypujante/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin (for architecture arm64):	Mach-O 64-bit bundle arm64
  • I then copy this universal binary on my old Intel mac (10.14.6).

  • If I use VST3PluginTestHost then it doesn’t show up

  • If I use the validator tool there is an error:

./bin/Debug/validator ~/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin
* Loading module...


Invalid Module!
Could not create Bundle for path: /Users/ypujante/Library/Audio/Plug-Ins/VST3/JambaTestPlugin_Debug.vst3/Contents/MacOS/pongasoft_JambaTestPlugin

And then:

  • if I build by plugin on old mac (x86_64 only) and copy to new M1 mac

  • the validator tool fails as well

  • VST3PluginTestHost (universal) doesn’t show it either

I thought the purpose of building a universal binary was to be able to deploy it on both platforms. But universal plugin does not work on Intel and Intel plugin does not work on M1.

What a mess :frowning:

So to summarize what I have so far:


This is no longer part of the SDK git? The document seems to reference it so information on where to get the latest version in the git should be good to have.

The VST3PluginTestHost is not part of the open source SDK release. You have to download the SDK from the Steinberg website to get the test host.

Yes. But you can have links to where it can be downloaded from.
It is part of the documentation. But not where to get it.

check this VST 3 Links - VST - Steinberg Developer Help