I know it was only announced an hour ago, but what are the JUCE plans to support macOS 11 and ARM processors? I assume once the Projucer is updated then the generated Xcode projects will create universally binaries and everything will ‘just work’?
I started my JUCE career for the last processor change. Not really looking forward to doing it again, but I guess that’s life.
This time it’ll probably be kind of easy. The ARM code (SIMD) is already in juce for iOS and we all know how universal builds work from i386/x64. I expect this transition to be much less trouble than the whole Notarization party. My personal problem will be being forced to use XCode 12 and loosing 32 bit compatibility for good + some 3rd party libs with Intel-only SIMD intrinsics that will loose performance.
It was suggested that also plugins will be run under rosetta, wondering if this also applies for AudioUnits and co. This would be interesting for legacy software.
If the old rosetta is any indication then yes they will of course run, but real-time performance was really terrible under rosetta. The common techniques to emulate a different instruction set conflict with the requirements of real-time processing.
The keynote mentioned that the code is “converted” (don’t remember if that’s the word they used) by Rosetta 2 only once upon installation of non-native apps, with JIT compilation only kicking in for “interpreted” code like Java or JavaScript
The Juce team might want to order a Developer Transition Kit (DTK) from Apple to test everything before new Macs eventually hit the market. Supplies seem to be limited.
Yep, we’ll have access to a developer kit to test that everything is working before the hardware goes to market. We’re anticipating that there will be minimal changes required to JUCE, but as always it’s a bit of an unknown.
Has anyone seen if all iOS apps will work on Mac OS 11? If it’s not down to developer choice then this could have huge implications for plugin devs and pricing structures if desktop DAWs go down the AUv3 route! Most developers as far as I can tell sell their plugins for cheaper on iOS. If anyone can enlighten me on this I’d be grateful as even though it’s still early days, I can’t find anything that confirms if all apps will work or if it’s down to developer choice.
I think I saw somewhere that by default all iOS apps will run on macOS, but developers can opt out. So you’ll be probably able to launch your existing iOS AUv3 on your mac unless developers block it. However the iOS Apps probably run in some kind of sandbox inside macOS and it seems very unlikely it’ll be possible to use AUv3 apps inside regular Desktop hosts.
If you sign in to your Apple developer account you’ll be asked to agree to new terms which contain:
All newly created and existing compatible iPhone and iPad apps will be made available on Mac. Your compatible apps will be published on the Mac App Store on Apple Silicon Macs unless you end their availability
You can then opt-out on a per-app basis via App Store Connect.
We’re not going to retrospectively implement macOS 11 and Xcode 12 support in JUCE 5. Whilst we’re still learning the details from Apple it looks like there will be a fair amount of build configuration management required.