- Member AAX_CMidiPacket::mIsImmediate
- This value is not currently set. Use
mTimestamp == 0
to detect immediate packets
- Member AAX_CParameter< T >::AAX_CParameter (AAX_CParamID identifier, const AAX_IString &name, T defaultValue, const AAX_ITaperDelegate< T > &taperDelegate, const AAX_IDisplayDelegate< T > &displayDelegate, bool automatable=false)
As of Pro Tools 10.2, DAE will check for a matching parameter NAME and not an ID when reading in automation data from a session saved with an AAX plug-ins RTAS/TDM counter part.
As of Pro Tools 11.1, AAE will first try to match ID. If that fails, AAE will fall back to matching by Name.
- Module AAX_DigiTrace_Guide
- This feature is available in Pro Tools 12.6 and higher
- Member AAX_eConstraintLocationMask_FixedLatencyDomain
- This constraint is not currently supported by any AAX host
- Member AAX_eCurveType_Dynamics
- Pro Tools requests this curve type for Dynamics plug-ins only
- Member AAX_eCurveType_EQ
- Pro Tools requests this curve type for EQ plug-ins only
- Member AAX_eCurveType_Reduction
- Pro Tools requests this curve type for Dynamics plug-ins only
- Member AAX_eDataInPortType_Incremental
- Supported in Pro Tools 12.5 and higher; when AAX_eDataInPortType_Incremental is not supported the port will be treated as AAX_eDataInPortType_Unbuffered
- Member AAX_EHostModeBits
- Supported in Venue 5.6 and higher
- Member AAX_eNotificationEvent_ASPreviewState
Supported in Pro Tools 11 and higher
Not supported by Media Composer
- Member AAX_eNotificationEvent_ASProcessingState
Supported in Pro Tools 11 and higher
Not supported by Media Composer
- Member AAX_eNotificationEvent_DelayCompensationState
- Supported in Pro Tools 12.6 and higher
- Member AAX_eNotificationEvent_EnteringOfflineMode
- Supported in Pro Tools 11 and higher
- Member AAX_eNotificationEvent_ExitingOfflineMode
- Supported in Pro Tools 11 and higher
- Member AAX_eNotificationEvent_HostModeChanged
- Supported in Venue 5.6 and higher
- Member AAX_eNotificationEvent_LogState
- Pro Tools currently only sends this notification to the Direct Data object in the plug-in
- Member AAX_eNotificationEvent_MaxViewSizeChanged
- Supported in Pro Tools 11.1 and higher
- Member AAX_eNotificationEvent_PresetOpened
- Supported in Pro Tools 11 and higher
- Member AAX_eNotificationEvent_PriorSettingsInvalid
- Supported in Venue 5.6 and higher
- Member AAX_eNotificationEvent_SessionBeingOpened
Supported in Pro Tools 11 and higher
Not supported by Media Composer
- Member AAX_eNotificationEvent_SessionPathChanged
- Supported in Pro Tools 11.1 and higher
- Member AAX_eNotificationEvent_SideChainBeingConnected
- Supported in Pro Tools 11.1 and higher
- Member AAX_eNotificationEvent_SideChainBeingDisconnected
- Supported in Pro Tools 11.1 and higher
- Member AAX_eNotificationEvent_SignalLatencyChanged
- Supported in Pro Tools 11.1 and higher
- Member AAX_eNotificationEvent_TrackNameChanged
Supported in Pro Tools 11.2 and higher
Not supported by Media Composer
- Member AAX_ePlugInStrings_Progress
- Not currently supported by Pro Tools
- Member AAX_eProcessingState_BeginPassGroup
- AudioSuite pass group notifications are supported starting in Pro Tools 12.0
- Member AAX_eProcessingState_EndPassGroup
- AudioSuite pass group notifications are supported starting in Pro Tools 12.0
- Member AAX_eProperty_Constraint_NeverUnload
- AAX_eProperty_Constraint_NeverUnload is not currently implemented in DAE or AAE
- Member AAX_eProperty_DestinationTrack
- This property is not supported on Media Composer
- Member AAX_eProperty_DisableAudiosuiteReverse
- AAX_eProperty_DisableAudiosuiteReverse is not currently implemented
- Member AAX_eProperty_LatencyContribution
- Maximum delay compensation limits will vary from host to host. If your plug-in exceeds the delay compensation sample limit for a given AAX host then you should note this limitation in your user documentation. Example limits:
- Pro Tools 9 and higher: 16,383 samples at 44.1/48 kHz, 32,767 samples at 88.2/96 kHz, or 65,534 samples at 176.4/192 kHz
- Media Composer 8.1 and higher: 16,383 samples at 44.1/48 kHz, 32,767 samples at 88.2/96 kHz
- Member AAX_eProperty_OptionalAnalysis
- In Media Composer, optional analysis will also be performed automatically before each channel is rendered. See MCDEV-2904
- Member AAX_eProperty_SideChainStemFormat
AAX_eProperty_SideChainStemFormat is not currently implemented in DAE or AAE
Currently Pro Tools supports only AAX_eStemFormat_Mono side chain inputs
- Member AAX_eProperty_UsesClientGUI
- Currently supported by Pro Tools only
- Member AAX_IACFEffectParameters::CompareActiveChunk (const AAX_SPlugInChunk *iChunkP, AAX_CBoolean *oIsEqual) const =0
- In Pro Tools, this method will only be called if a prior call to GetNumberOfChanges() has indicated that the plug-in's state has changed. If the plug-in's current settings are different from the settings in
aChunkP
then the plug-in's Compare Light will be illuminated in the plug-in header, allowing users to toggle between the plug-in's custom state and its saved state.
- Member AAX_IACFEffectParameters::GetCurveData (AAX_CTypeID iCurveType, const float *iValues, uint32_t iNumValues, float *oValues) const =0
- Versions of S6 software which support the GetCurveDataDisplayRange() method will not display a plug-in's curve data unless both GetCurveData() and GetCurveDataDisplayRange() are supported by the plug-in.
- Member AAX_IACFEffectParameters::GetParameterNameOfLength (AAX_CParamID iParameterID, AAX_IString *oName, int32_t iNameLength) const =0
- In most cases, the AAX host will call GetParameterName() or GetParameterNameOfLength() to retrieve parameter names for display. However, when Pro Tools is retrieving a plug-in name for display on a control surface the XML data stored in the plug-in's page tables will be used in preference to values retrieved from these methods.
- Member AAX_IComponentDescriptor::AddAuxOutputStem (AAX_CFieldIndex inFieldIndex, int32_t inStemFormat, const char inNameUTF8[])=0
There is a hard limit to the number of outputs that Pro Tools supports for a single plug-in instance. This limit is currently set at 256 channels, which includes all of the plug-in's output channels in addition to the sum total of all of its aux output stem channels.
Pro Tools supports only mono and stereo auxiliary output stem formats
- Member AAX_IComponentDescriptor::AddClock (AAX_CFieldIndex inFieldIndex)=0
- As of Pro Tools 11.1, this field may be used in both Native and DSP plug-ins. The DSP clock data is a 16-bit cycling counter. This field was only available for Native plug-ins in previous Pro Tools versions.
- Member AAX_IComponentDescriptor::AddMIDINode (AAX_CFieldIndex inFieldIndex, AAX_EMIDINodeType inNodeType, const char inNodeName[], uint32_t channelMask)=0
- Due to current restrictions MIDI data won't be delivered to DSP algorithms, only to AAX Native.
- Member AAX_IController::GetHostName (AAX_IString *outHostNameString) const =0
- Pro Tools versions from Pro Tools 11.0 to Pro Tools 12.3.1 will return a generic version string to this call. This issue is resolved beginning in Pro Tools 12.4.
- Member AAX_IMIDINode::PostMIDIPacket (AAX_CMidiPacket *packet)=0
- Pro Tools supports the following MIDI events from plug-ins:
- NoteOn
- NoteOff
- Pitch bend
- Polyphonic key pressure
- Bank select (controller #0)
- Program change (no bank)
- Channel pressure
- Member AAX_ITransport::GetBarBeatPosition (int32_t *Bars, int32_t *Beats, int64_t *DisplayTicks, int64_t SampleLocation) const =0
- There is a minor performance cost associated with using this API in Pro Tools. It should not be used excessively without need.
- Member AAX_ITransport::GetCurrentLoopPosition (bool *bLooping, int64_t *LoopStartTick, int64_t *LoopEndTick) const =0
- This does not indicate anything about the status of the "Loop Record" option. Even when the host is configured to loop playback, looping may not occur if certain conditions are not met (i.e. the length of the selection is too short)
- Member AAX_ITransport::GetCurrentTickPosition (int64_t *TickPosition) const =0
- The tick resolution here is different than that of the tick displayed in Pro Tools. "Display ticks" (as they are called) are 1/960 of a quarter note.
- Member AAX_ITransport::GetCustomTickPosition (int64_t *oTickPosition, int64_t iSampleLocation) const =0
- There is a minor performance cost associated with using this API in Pro Tools. It should not be used excessively without need.
- Member AAX_IViewContainer::GetModifiers (uint32_t *outModifiers)=0
- Although this method allows plug-ins to acquire the current state of the Windows key (normally blocked by Pro Tools), plug-ins should not use key combinations that require this key.
- Module AAX_Media_Composer_Guide
- Some early versions of Media Composer 8 do not search the system plug-ins directory recursively. If your plug-ins are installed into a sub-directory beneath this main directory then they will not be loaded by the affected versions of Media Composer.
- Module AAX_Page_Table_Guide
- Pro Tools versions prior to Pro Tools 11.1 use plug-ins' ProControl and ICON page tables (Dynamics, EQ, Channel Strip, Custom Fader, etc.) to map plug-in parameters to EUCON-enabled surfaces, so be sure that your plug-ins also implement these page tables correctly so that users with earlier versions of Pro Tools can have the best possible experience when using your plug-ins.
- Module AAX_Pro_Tools_Guide
In Pro Tools 11 and above, the Avid Audio Engine (AAE) no longer automatically generates clipping indication for plug-ins. This is because the new engine can operate properly well beyond a unity sample value of 1.0. Thus, it is up to the plug-in itself to set and clear its clip indicators as needed.
Supported in Pro Tools 12 and higher.
Supported in Pro Tools 12 and higher.
Supported in Pro Tools 12 and higher.
Pro Tools 11 requires PACE Eden digital signatures for AAX plug-ins.
Supported in Pro Tools 12.6 and higher.
Supported in Pro Tools 12.8.2 and higher.
Supported in Pro Tools 2019.XX and higher. Also supported (and enabled by default) in Pro Tools developer builds beginning with Pro Tools 2019.6.
Pro Tools 10 requires either PACE DSig or Eden digital signatures for AAX plug-ins.
As of Pro Tools 10.2, support has been added to allow binary-level encryption of AAX DSP algorithms. Please note that this is NOT a requirement of AAX DSP plug-ins, and serves only as an additional security measure to protect an algorithm's DLL.
- Module AAX_TI_Guide
32 and 64-sample quantum is available in Pro Tools 10.2 and higher
Beginning with Pro Tools 10.2, the TI shell supports a "processor affinity" property, which indicates that a DSP ProcessProc should be preferentially loaded onto the same DSP as other instances from the same DLL binary. This is a requirement for some designs that must share global data between different processing configurations.
Note that this property should only be used when absolutely required, as it will constrain the DSP manager and reduce overall DSP plug-in instance counts on the system.
Beginning in Pro Tools 11, AAX DSP algorithms also support optional temporary data spaces that can be described in the Describe module and are shared among all instances on a DSP. This is an alternative to declaring large data blocks on the stack for better memory management and to prevent stack overflows. Please refer to AAX_IComponentDescriptor::AddTemporaryData() for usage instructions.
- Module AdditionalFeatures_CurveDisplays
- For S6 control surface displays, see PT-226228 and PT-226227 in the Known Issues page for more information about the requirements listed in this section.
- Module advancedTopics_relatedTypes
Pro Tools versions prior to Pro Tools 12.3 do not allow explicit type conversion between types with different product ID values. Beginning in Pro Tools 12.3 both the product ID and the plug-in ID may differ between explicitly related types.
- Module CommonInterface_Algorithm
- As of Pro Tools 10.2.1 an algorithm's initialization calllback routine will have up to 5 seconds to execute.
- Module CommonInterface_FormatSpecification
*_ACFGetSDKVersion
is required for 64-bit AAX plug-ins only
- Module ExamplePlugIns
- The DemoDelay_DynamicLatencyComp example is compatible with Pro Tools 11.1 and higher.