I’m trying to build my plugin for AAX. I have Pro Tools 12.
• I have the AAX SDK (newest, 2p2p1) and my JUCE path has been set.
• My build config is set to build AAX (JUCE preprocessor)
When I build the plugin (VS2013), despite there being ‘no errors’, there is no AAX file/folder output - nor is there one ‘copied’ to my AAX directories automatically.
What am I missing?
EDIT: SOLUTION FOUND!
I finally figured it out. There’s a lot of steps from beginning a JUCE project to testing it in Pro Tools, so to help people in the future figure this out, I will describe exactly what I did to get from zero to finish:
#1. Apply/get a developer.digidesign.com account
Although Pro Tools is owned by Avid now, for audio plugin developers, they still use the DigiDesign name (for the time being). Make sure it’s a Digi account and not an Avid one - the avid.developer.com account is only for video developers I read.
#2. Download the AAX SDK
Once your digidesign developer account has been activated, download the latest SDK.
#3. Download Pro Tools Development Build
You need a special version of Pro Tools (the Development Build) to test ‘unsigned’ AAX plugins. Plugins from companies that do not yet have PACE (iLok) licensing purchased are referred to as ‘unsigned’, and normal Pro Tools will not accept these plugins (with an error saying the ‘plugin is not valid’). To get PT Dev build, login to your digidesign developer account, and at the top, go to:
Downloads → Pro Tools-> Development Builds
and download the latest Windows version (make sure you don’t get the Mac DMG!).
- Note: Pro Tools Development Build needs a special iLok authorization to work. You need to have an iLok2 to run it. If you don’t have the authorization, you need to contact Avid via email to get it. The instructions on how to do this is right next to the download link for the PT development build in small print.
#4. Build the plugin
Make sure you compile your JUCE project as an AAX file, and you link (in the ProJucer/IntroJucer) to where you downloaded the AAX SDK. If all is well there, when you build it, you won’t actually have an AAXPlugin file - it will be a DLL. From what I gather, AAXPLUGIN Files are actually DLL’s in disguise, so you can just rename it. However, getting Pro Tools to recognize it as a plugin is more tricky than that; you need to place this disguised ‘dll’ file in a very specific hierarchy of folders. Here’s the format for that:
(Things ending in ‘/’ are folders - naming of them must be exact except the first one.)
MyPlugin.aaxplugin/
Contents/
Win32/ *(this folder is only needed if you have a 32-bit version included)
MyPlugin.aaxplugin (this is your 32-bit ‘dll’ file renamed)
x64/ *(this folder is only needed if you have a 64-bit version included)
MyPlugin.aaxplugin (this is your 64-bit ‘dll’ file renamed)
Once you have those all arranged correctly, you need to do one more thing - run a DOS command on your folder. AAX Plugin ‘root-folders’ need to be marked as ‘System’. To do this:
- Open your master folder (named 'MyPlugin.aaxplugin),
- Make sure no files are selected, then hold Shift+Right-Click the empty folder background.
- Click ‘Open command window here’.
- Type the following command:
attrib +s %CD%
…and push enter.
#5. Put the AAX Plugin in place and cross your fingers!
Move your plugin into the AAX directory, which is:
C:\Program Files\Common Files\Avid\Audio\Plug-Ins
and start Pro Tools Development.
I hope anyone that’s confused finds this post helpful!