| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

Loading...
Searching...
No Matches
Legacy Porting Notes

Class AAX_CEffectGUI
  The default implementations in this class are mostly derived from their equivalent implementations in CProcess and CEffectProcess. For additional CProcess-derived implementations, see AAX_CEffectParameters.
Class AAX_CEffectParameters
  The default implementations in this class are mostly derived from their equivalent implementations in CProcess and CEffectProcess. For additional CProcess-derived implementations, see AAX_CEffectGUI.
Member AAX_CHostProcessor::AnalyzeAudio (const float *const inAudioIns[], int32_t inAudioInCount, int32_t *ioWindowSize) AAX_OVERRIDE
  Ported from AudioSuite's `AnalyzeAudio`(bool `isMasterBypassed`) method
Member AAX_CHostProcessor::InitOutputBounds (int64_t iSrcStart, int64_t iSrcEnd, int64_t *oDstStart, int64_t *oDstEnd) AAX_OVERRIDE
  DAE no longer makes use of the mStartBound and mEndBounds member variables that existed in the legacy RTAS/TDM SDK. Use `oDstStart` and `oDstEnd` instead (preferably by overriding TranslateOutputBounds().)
Member AAX_CHostProcessor::RenderAudio (const float *const inAudioIns[], int32_t inAudioInCount, float *const iAudioOuts[], int32_t iAudioOutCount, int32_t *ioWindowSize) AAX_OVERRIDE
  This method is a replacement for the AudioSuite `ProcessAudio` method
Class AAX_CMidiPacket
  Corresponds to DirectMidiPacket in the legacy SDK
Class AAX_CMidiStream
  Corresponds to DirectMidiNode in the legacy SDK
Member AAX_eMIDINodeType_Global
  Corresponds to RTAS Shared Buffer global nodes in the legacy SDK
Member AAX_eMIDINodeType_LocalInput
  Corresponds to RTAS Buffered MIDI input nodes in the legacy SDK
Member AAX_eMIDINodeType_LocalOutput
  Corresponds to RTAS Buffered MIDI output nodes in the legacy SDK
Member AAX_eNotificationEvent_ASPreviewState
  Replacement for `SetPreviewState()`
Member AAX_ePageTable_EQ_Band_Type
  converted from `eDigi_PageTable_EQ_Band_Type` in the legacy SDK
Member AAX_ePageTable_EQ_InCircuitPolarity
  converted from `eDigi_PageTable_EQ_InCircuitPolarity` in the legacy SDK
Member AAX_ePageTable_UseAlternateControl
  converted from `eDigi_PageTable_UseAlternateControl` in the legacy SDK
Member AAX_EParameterType
  Values must match unnamed type enum in FicTDMControl.h
Member AAX_eParameterType_Continuous
  Matches `kDAE_ContinuousValues`
Member AAX_eParameterType_Discrete
  Matches `kDAE_DiscreteValues`
Member AAX_EParameterValueInfoSelector
  converted from `EControlValueInfo` in the legacy SDK
Member AAX_ePlugInStrings_AllSelectedRegionsAnalysis
  Was pluginStrings_AllSelectedRegionsAnalysis in the RTAS/TDM SDK
Member AAX_ePlugInStrings_Analysis
  Was pluginStrings_Analysis in the RTAS/TDM SDK
Member AAX_ePlugInStrings_Bypass
  Was pluginStrings_Bypass in the RTAS/TDM SDK
Member AAX_ePlugInStrings_ClipName
  Was pluginStrings_RegionName in the RTAS/TDM SDK
Member AAX_ePlugInStrings_MonoMode
  Was pluginStrings_MonoMode in the RTAS/TDM SDK
Member AAX_ePlugInStrings_MultiInputMode
  Was pluginStrings_MultiInputMode in the RTAS/TDM SDK
Member AAX_ePlugInStrings_Process
  Was pluginStrings_Process in the RTAS/TDM SDK
Member AAX_ePlugInStrings_Progress
  Was pluginStrings_Progress in the RTAS/TDM SDK
Member AAX_ePlugInStrings_RegionByRegionAnalysis
  Was pluginStrings_RegionByRegionAnalysis in the RTAS/TDM SDK
Member AAX_EProperty

  These property IDs are somewhat analogous to the pluginGestalt system in the legacy SDK, and several AAX_EProperty values correlate directly with a corresponding legacy plug-in gestalt.

  To ensure session interchange compatibility, make sure the 4 character IDs for AAX_eProperty_ManufacturerID, AAX_eProperty_ProductID, AAX_eProperty_PlugInID_Native, and AAX_eProperty_PlugInID_AudioSuite are identical to the legacy SDK's counterpart.

Member AAX_eProperty_AllowPreviewWithoutAnalysis
  Was pluginGestalt_AnalyzeOnTheFly
Member AAX_eProperty_CanBypass
  Was pluginGestalt_CanBypass.
Member AAX_eProperty_ContinuousOnly
  Was pluginGestalt_ContinuousOnly
Member AAX_eProperty_DestinationTrack
  Was pluginGestalt_DestinationTrack
Member AAX_eProperty_DisablePreview
  Was pluginGestalt_DisablePreview
Member AAX_eProperty_DoesntIncrOutputSample
  Was pluginGestalt_DoesntIncrOutputSample
Member AAX_eProperty_ManufacturerID
  For legacy plug-in session compatibility, this ID should match the Manufacturer ID used in the corresponding legacy plug-ins.
Member AAX_eProperty_MultiInputModeOnly
  Was pluginGestalt_MultiInputModeOnly
Member AAX_eProperty_NeedsOutputDithered
  Was pluginGestalt_NeedsOutputDithered
Member AAX_eProperty_OptionalAnalysis
  Was pluginGestalt_OptionalAnalysis
Member AAX_eProperty_PlugInID_AudioSuite
  For legacy plug-in session compatibility, this ID should match the Type ID used in the corresponding legacy AudioSuite plug-in Types.
Member AAX_eProperty_PlugInID_Native
  For legacy plug-in session compatibility, this ID should match the Type ID used in the corresponding legacy RTAS plug-in Types.
Member AAX_eProperty_PlugInID_TI
  For legacy plug-in session compatibility, this ID should match the Type ID used in the corresponding legacy TDM plug-in Types.
Member AAX_eProperty_ProductID
  For legacy plug-in session compatibility, this ID should match the Product ID used in the corresponding legacy plug-in.
Member AAX_eProperty_RequestsAllTrackData
  Was pluginGestalt_RequestsAllTrackData
Member AAX_eProperty_RequiresAnalysis
  Was pluginGestalt_RequiresAnalysis
Member AAX_eProperty_SupportsSaveRestore
  Was pluginGestalt_SupportsSaveRestore
Member AAX_eProperty_UsesRandomAccess
  Was pluginGestalt_UsesRandomAccess
Class AAX_IACFEffectGUI
  In the legacy plug-in SDK, these methods were found in CProcess and CEffectProcess. For additional CProcess methods, see AAX_IEffectParameters.
Member AAX_IACFEffectGUI::SetControlHighlightInfo (AAX_CParamID iParameterID, AAX_CBoolean iIsHighlighted, AAX_EHighlightColor iColor)=0
  This method was re-named from `SetControlHighliteInfo()`, its name in the legacy plug-in SDK.
Member AAX_IACFEffectParameters::GetChunkSize (AAX_CTypeID iChunkID, uint32_t *oSize) const =0
  In AAX, the value provided by GetChunkSize() should NOT include the size of the chunk header. The value should ONLY reflect the size of the chunk's data.
Member AAX_IACFEffectParameters::GetParameterOrientation (AAX_CParamID iParameterID, AAX_EParameterOrientation *oParameterOrientation) const =0
  AAX_IEffectParameters::GetParameterOrientation() corresponds to the GetControlOrientation() method in the legacy RTAS/TDM SDK.
Member AAX_IACFEffectParameters::GetParameterStringFromValue (AAX_CParamID iParameterID, double iValue, AAX_IString *oValueString, int32_t iMaxLength) const =0
  This method corresponds to CProcess::MapControlValToString() in the RTAS/TDM SDK
Member AAX_IACFEffectParameters::GetParameterValueFromString (AAX_CParamID iParameterID, double *oValue, const AAX_IString &iValueString) const =0
  This method corresponds to CProcess::MapControlStringToVal() in the RTAS/TDM SDK
Class AAX_IACFHostProcessor
  This interface provides offline processing features analogous to the legacy AudioSuite plug-in architecture
Class AAX_ICollection
  The information in AAX_ICollection is roughly analogous to the information provided by CProcessGroup in the legacy plug-in library
Class AAX_IEffectParameters
  In the legacy plug-in SDK, these methods were found in CProcess and `CEffectProcess`. For additional `CProcess` methods, see AAX_IEffectGUI.
File AAX_SliderConversions.h
  These utilities may be required in order to maintain settings chunk compatibility with plug-ins that were ported from the legacy RTAS/TDM format.
Class AAX_SPlugInChunkHeader
  To ensure compatibility with TDM/RTAS plug-ins whose implementation requires `fSize` to be equal to the size of the chunk's header plus its data, AAE performs some behind-the-scenes record keeping.
  The following actions are only taken for AAX plug-ins, so, e.g., if a chunk is stored by an RTAS or TDM plug-in that reports data+header size in `fSize` and this chunk is then loaded by the AAX version of the plug-in, the header size will be cached as-is from the legacy plug-in and will be subtracted out before the chunk data is passed to the AAX plug-in. If a chunk is stored by an AAX plug-in and is then loaded by a legacy plug-in, the legacy plug-in will receive the cached plug-in header with `fSize` equal to the data+header size.
  These are the special actions that AAE takes to ensure backwards-compatibility when handling AAX chunk data:
  - When AAE retrieves the size of a chunk from an AAX plug-in using GetChunkSize(), it adds the chunk header size to the amount of memory that it allocates for the chunk
  - When AAE retrieves a chunk from an AAX plug-in using GetChunk(), it adds the chunk header size to `fChunkSize` before caching the chunk
  - Before calling SetChunk() or CompareActiveChunk(), AAE subtracts the chunk header size from the cached chunk's header's `fChunkSize` member
Module AdditionalFeatures_Meters
  The gain-reduction meter handling for AAX plug-ins is different from that for RTAS/TDM plug-ins. AAX plug-ins must invert their gain-reduction meter values manually before reporting these values from the audio processing callback. The AAX host will always thin reported meter data using a "max" operation, and will later invert gain-reduction meter values before they are available to the plug-in GUI or to control surfaces.