Native Apple Silicon AAX
-
@Dan-Korneff said in Native Apple Silicon AAX:
Working here
Cool thanks for the info. It is working on the Pro Tools Native Apple Silicon version on M1 device, right?
-
@Fortune I've just created AAX plug-ins - Is there something specific I need to do to create Native M1 versions?
-
@DanH You have to use the latest AAX SDK - version 2.5.0
-
@Fortune thanks. Do these have to be shipped separately to the older version or does it create both Native / Non Native (Intel) versions at the same time?
-
@DanH I haven't tried yet but it should be the universal binary for both Intel & Apple Silicon.
-
@DanH both versions are included in one binary. (Which is why the file is almost twice the size)
-
Sorry that it's a bit off-topic, but anyone knows how to export AUv3? Every time i try it's still AUv2. So sad about that.
-
@Dan-Korneff Thanks! Any special build instructions for the AAX SDK? I've done what I did before but can't export the AAX... The README included is from 2022, which seems so on brand lol!
-
@Dan-Korneff Which AAX SDK version are you using?
-
@Steve-Mohican AAX SDK 2.4.1
-
@Dan-Korneff said in Native Apple Silicon AAX:
@Steve-Mohican AAX SDK 2.4.1
So the Hise exported AAX plugin is running Natively in Apple Silicon Pro Tools, right?
.......................................................................
This is the Libs folder in the AAX SDK 2.4.1:
.......................................................................
This is the Libs folder in the AAX SDK 2.5.0 (The latest one):
I am not sure if the AAX SDK 2.4.1 is Native Apple Silicon
-
@Steve-Mohican said in Native Apple Silicon AAX:
I am not sure if the AAX SDK 2.4.1 is Native Apple Silicon
Compilation for arm64 is first introduced in AAX SDK 2.4.0.
So AAX SDK 2.4.1 is ok for Native Silicon AAX exports, though the folder structure of version SDK 2.5.0 is different.
You can test your AAX builds whether they are x64 or Universal (x64 & arm64), with this APP: https://petegates.com/pgptprefs.html
You should see the Universal architecture type.
-
Okay so I'm getting a bit stuck trying to compile the 2.50 SDK on MacOS (possibly because I dont really know what Im doing...)
So I have:
-
Downloaded the 2.5.0 sdk and unzipped it to my HISE tools\SDK folder...
-
Gone to aax-sdk-2-5-0/Libs/AAXLibrary/MacBuild
-
loaded AAXLibrary.xcodeproj into XCode...
-
Run Compile-> for profiling
..which worked.
..but I cant see any output (especially not in x86_64_arm64/Release)
am I doing something wrong?(I guess thats a yes right there) do I need to set up some config in XCode at step 3?
-
-
@Lindon I had the same, couldn't be arsed to figure it out... Previous SDK worked ok. What are the benefits for 2.5.0?
-
@DanH when you say "previous SDK worked ok":
- does the previous deliver universal binaries?
- if so where would I down load this "previous SDK"?
-
1 - Apparently so
2 - I guess you'll have to see if it's you Avid account / Developer tools page - maybe they have an old link on there. I just checked mine but can't see it :/ -
@Lindon said in Native Apple Silicon AAX:
@DanH when you say "previous SDK worked ok":
- does the previous deliver universal binaries?
- if so where would I down load this "previous SDK"?
As I previously mentioned above, the previous SDK version (2.4.1) works here for Universal Binaries.
Thr only advantage of 2.5.0 is ATMOS mix channel support for FX plugins. If you don't use ATMOS channel routing, 2.4.1 is the one to go with.
Previous versions should appear in Avid's Developers Area.
-
@orange speaking of which, @Christoph-Hart can we please add multichannel routing so we can make ATMOS plugs?
-
@orange cept it doenst anymore its 2.50 only here....
..or am I looking in the wrong place?
-
...grrrrrrrr
Well now it will start to compile butfalls over pretty badly..
▸ Compiling include_juce_audio_plugin_client_AAX.mm ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:312:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_1'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_1: ~~~~~~~~ ^~~~~~ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:313:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_2'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_2: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:314:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_3'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_3: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:312:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_1: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:313:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_2: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:314:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_3: ^ ▸ Compiling include_juce_audio_plugin_client_AAX.mm ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:312:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_1'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_1: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:313:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_2'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_2: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:314:22: use of undeclared identifier 'AAX_eStemFormat_Reserved_3'; did you mean 'AAX_eStemFormat_Stereo'? case AAX_eStemFormat_Reserved_3: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:312:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_1: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:313:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_2: ^ ❌ /Users/lindonparker/HISE/JUCE/modules/juce_audio_plugin_client/AAX/juce_AAX_Wrapper.cpp:314:22: duplicate case value 'AAX_eStemFormat_Stereo' case AAX_eStemFormat_Reserved_3: ^ ** BUILD FAILED **
Has anyone got an AAX SDK that builds successfully, and builds native plugins?