Copy link to clipboard
Copied
I am developing an After Effects (AE) plugin for exporting effects based on the AE SDK, but I have encountered the following issues:
Background:
In earlier versions of AE, the track matte of a layer could only be its immediate previous layer, and they had a positional relationship.
However, in my local testing, I found that in AE 2024 and later versions (versions before 2024 were not tested, so it's unclear when this change was introduced), a layer and its track matte layer no longer have a positional relationship.
To address this, I used the AEGP_GetTrackMatteLayer interface, which was added in the AE SDK 2023. Plugins developed with the AE SDK 2023 run correctly in AE 2024/2025 but crash in AE 2022.
Since my computer is running a newer version (macOS Sequoia 15.4), I cannot install AE 2022 to debug the issue. However, I suspect the crash might be caused by the plugin using AEGP_GetTrackMatteLayer.
Questions to Confirm:
From which version of AE is the AEGP_GetTrackMatteLayer interface (added in AE SDK 2023) supported? Will using this interface in an unsupported version of AE cause a crash?
What is the compatibility relationship between the AE SDK and AE versions? Can a plugin developed with AE SDK 2023 run correctly in AE 2023 and later versions, provided that the AE version is greater than or equal to the SDK version?
In which version of AE was the change introduced where a layer and its track matte layer no longer have a positional relationship? Was this change introduced in the same version as the AEGP_GetTrackMatteLayer interface?
If a plugin is developed using AE SDK 2023 but does not use any 2023-specific interfaces, can it run in versions of AE prior to 2023?
If it can run, I can implement compatibility adaptations in the plugin as follows:
Develop the plugin using AE SDK 2023.
a. Use the script app.version to get the current AE version.
b. If the current AE version is >= 2023 and all versions after 2023 support AEGP_GetTrackMatteLayer, use this interface to get the track matte layer.
c. If the current AE version is < 2023 and the layer and its track matte layer have a positional relationship in AE, avoid using the AEGP_GetTrackMatteLayer interface.
Your answers to these questions would be very helpful in resolving my issue. Thank you very much!
Copy link to clipboard
Copied
as far as i know, you can compile a plugin with a new sdk, and run it on an old version of AE.
the changes between sdk versions are always additions of callbacks to existing AEGP suite versions, or bumping to new AEGP suite versions where arguments or behavior has changed for existing callbacks.
except for VERY rare past occurences, the older suite versions are still available on the new SDK, and can be used as then have in the past.
so, in your case the plug-in should check for what AE version it's running on, and use AEGP_GetTrackMatteLayer only for the first supprted AE version and up. otherwise it should use previous suite versions and older methods of getting the track matte layer.
Copy link to clipboard
Copied
Thank you very much for your professional response. It has been extremely helpful in resolving the plugin issue.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now