[Sticky] Will Unify ever run natively on Apple Silicon?
How can I get added to the Unify M1 beta testing group? Also does the current build include any bridging for non-M1 native plugins? If not, can it be used alongside the current release version? I understand if those questions are only answerable in the beta forum.
Send email to John at UnifySupport@PlugInGuru.com to request the M1 beta.
On ARM processors, MacOS already supports automatic bridging of Audio-Unit plug-ins only. Unify has no bridging of its own for VST/VST3.
The stand-alone Unify app can be used alongside the v2.8 installation, but once you install the beta plug-ins (including Unify itself and all the bundled plug-ins), you're stuck with them.
@getdunne Ok, I guess I'm not quite ready for the beta in that case. I haven't even scanned any AU plugins into Unify and also all of my custom subsets point to VST/VST3 plugins and would need to be recreated. My current DAW of choice, Bitwig, runs in M1-native mode and includes bridging of non-M1-native VST/VST3 plugins. I hope that bridging will be a serious consideration as I don't think any of the currently Unified third-party patches will work with the AU-bridging solution.
I'd love to be able to add universal bridging to Unify, but it's a HUGE job, quite possibly beyond our means.
You are correct that MacOS's in-built AU bridging will not help run Unify run libraries that target VST or VST3 plug-ins.
If Bitwig is your DAW of choice, and it does bridging as you describe, just continue using the existing Intel-only version of Unify. Bitwig will bridge it, and Unify can continue to load all VST and VST3 plug-ins in Intel mode as always.
@getdunne Yes, that's what I'm doing now and it actually work's quite well. However, I'm starting to encounter plugins that don't like running in Unify when it's bridged. For instance, MeldaProduction MSoundFactory doesn't like being run within bridged Unify.
MeldaProduction MSoundFactory doesn't like being run within bridged Unify.
Could you report your findings to Melda? Please tell them to contact UnifySupport@PlugInGuru.com to request an NFR license for Unify for testing.
@getdunne This may be useful for continuing to optimize Unify for Apple Silicon:
Thank you. These Apple documents can sometimes provide useful hints, but my problem is that I use JUCE. All the platform-specific code is buried deep in the JUCE library, is very difficult to understand and even more difficult to change, and worse, any changes I make are likely to get reverted every time JUCE itself is revised.
Congratulations on the Apple-Silicon ready release of Unify. I'm having really good success with it so far. I was able to salvage the x64-bit standalone version by renaming the Mac app before installing 1.8.2. I am now able to load both versions independently. This brings me to a suggestion for providing something similar for the legacy x64 VSTis. Is there anyway that we could get a final legacy release of Unify v1.8.0 which has a different VST identifier? It could be called Unify-Legacy or something.
This would allow DAWs to recognize it as a separate VSTI and we could still load the patches from x64-only VSTs that may never be updated like BreakTweaker, Razer, Largo, etc. It would also be ideal if it could continue using the settings for the normal Unify install. It would also be nice if we could hide libraries in the Apple Silicon release or maybe we could move them to a subfolder that is only read by the legacy version if you decide to release one.
Again congrats and thanks for all of the hard work!
Interesting suggestions. You begin to see just how complicated it is to support Apple's latest architectural changes. We don't have all the answers, and we can't even claim to know what all the issues are. That's why we're classifying this as a "public beta".
The problem with things like "VST identifier" is that every DAW is different in terms of how it will handle such things. I don't even have every DAW to test with, and we could go broke trying to be compatible with everything ever made by other companies.
I am continuing to look into possibilities for how to handle Intel-only VST/VST3 plug-ins on ARM Macs. Your idea is interesting, but there may also be other ways that are ultimately less disruptive.
I'm doing a bit more testing and I've just discovered a hidden feature of my primary DAW. Bitwig allows you to specify Preferred formats. It will automatically hide VST2 versions if a VST3 version also exists. Similar to what I did with the standalone version of Unify, I renamed the VST versions of Unify 1.8.0 before installing 1.8.2. Initially, the old, renamed VSTs were not appearing in Bitwig. However, after changing the Preferred formats setting to show All plug-ins. Surprisingly, I then saw the renamed VSTs in addition to the VST2 version of 1.8.2. I'm now able to see and load both the old and new versions of Unify simultaneously within Bitwig.
Like you mentioned, every DAW will handle these situations differently. I just wanted to point out a possible workaround for this one DAW. I'm still interested in seeing what you'll be able to come up with in the future.
I like to add my voice to the above comments by saying what a wonderful job you have done on the Apple Silicon version of Unify. DAMM is it super silly fast now huh‽! 🙂
I wanted to let you know one thing I've found which isn't a Unify problem as such, but it will cause an issue with purchased PlugInGuru Kontakt/Unify libraries so I thought I'd better post my findings here.
I thought I'd fire up the Unified Del Norte library, but Kontakt couldn't load itself as part of the patch. Interesting I thought, as NI say Kontakt is Universal now. It's not, it's almost Universal!!! The Kontakt Application is, so is the AU component & the VST3 but NOT the VST, crazy huh‽ I used the lipo command to verify my theory...
lipo -archs /Applications/Native\ Instruments/Kontakt/Kontakt.app/Contents/MacOS/Kontakt
lipo -archs /Library/Audio/Plug-Ins/Components/Kontakt.component/Contents/MacOS/Kontakt
lipo -archs /Library/Audio/Plug-Ins/VST3/Kontakt.vst3/Contents/MacOS/Kontakt
lipo -archs /Library/Audio/Plug-Ins/VST/Kontakt.vst/Contents/MacOS/Kontakt
I'm guessing that the VST version will never be Universal due to Steinberg licensing and all of that jazz. I seem to recall that on other libraries you've had to supply them as VST3 patches in order to keep cross platform compatibility as the VST version of the plugin was no longer available... so my question is, do you have an in-house built tool that can take a Unified library and change the VST plugin to point to the VST3 version of the plugin instead therefore keeping cross platform compatibility whilst also keeping Apple Silicon Kontakt compatibility as well? I hope that makes sense!!
Keep up the good work and enjoy your new house mate, you've earned it big time 🙂
Well, isn't that frustrating! Steinberg has managed to convince people that VST3 is somehow sufficiently better than VST2.x, that even major plug-in vendors like Native Instruments are starting to drop support for the latter. I'm pretty sure this is not a licensing issue, and it just goes to show what a mess results from the need to support multiple, proprietary formats in the first place. This is one of the reasons I'm hoping the unrestricted CLAP format takes off.
It might be helpful if you were to inform NI directly about this, explaining how unified libraries require a specific format (in this case VST2.x), and so for them to choose not to make the Kontakt VST universal causes a substantial loss of capability for you. In my experience, they're quite responsive, especially the Kontakt team. This might just be an interim stage for them, and perhaps they will eventually provide universal versions for all formats, especially if customers request it.
Fair point man, will do! 🙂
Great to see this AS native version. Thank you, Dr. Dunne!
Is there a way to change the UI of Unify in Pro Tools?
There was a CPU on M1 spike avoiding tip in one of Skippy's last videos... something to mark in Unify's settings.
I can't find it anymore. Will it solve the problems?
I have spikes as hell... made some combo orchestral instruments using one Kontakt7, one Audiomodeling instrument, a Fabfilter Q3 and a Valhalla Room in a Unify instance. I can't play monophonic lines without crackling. And I need about 50 of those instruments. It was demanding but doable on my previous Intel Mac. That's why I bought the Ultra... :-/
Check the box "Max Thread Priority (experimental)" at the top right in Settings. On an M1 Ultra Mac it should be checked by default. Please tell me if it was not.
This spiking behavior is affecting everyone using M1 Ultra, and the whole audio industry is mystified about what's causing it. It's not only Unify that is affected. What we do know is that it's not about the Ultra being "less powerful" than an Intel CPU; it seems to be something very subtle. I'm very sorry Unify is giving you grief on your new machine. I'm confident we'll track it down eventually, but I can't predict when.
Which DAW are you using (or are you using the Unify stand-alone app)? What are your sample rate and buffer size settings? You can usually reduce CPU issues by increasing buffer size to e.g. 512 or even 1024.
Is there a way to change the UI of Unify in Pro Tools?
Sorry for the late response. I didn't see this until now. (Sometimes this forum software does really weird things.)
You probably have Unify's GUI Size set to something other than 100%. Try running the Unify stand-alone app, set it to 100%, then quit and load up the Unify plug-in in Pro Tools again, and it should look correct.