• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Disable certain plugins at runtime

Explorer ,
May 10, 2022 May 10, 2022

Copy link to clipboard

Copied

I have listed a free lite version of my Premiere Pro plugin on the Adobe Exchange marketplace. I also sell the regular version of the plugin directly to customers (it contains all functionality of the lite one but has more options). Since I want customers to not have to re-do their projects when purchasing a license, the lite and regular versions of the plugins share the same match name.

 

The installer of the regular version of the plugin removes any installed version it finds first (lite and regular). So when customers use the installer all is fine. But if they copy in the regular plugin file by hand, or when Creative Cloud helpfully restores/upgrades the lite plugins that have just been removed, both plugins are active. Which one is used seems to be solely determined by file path order under the MediaCore folder (alphabetical sorting order). I want to change this, since it's unreliable to keep straight.

 

I added code to the plugin's setup to see if both versions are installed, and if so, disable/fail the lite version at runtime, hoping it won't get called again anymore. But here I run into difficulties. Some extra context: my plugins support both software and gpu rendering, and use the AE SDK. What I've tried so far is (with the lite version appearing first in the file hierarchy):

 

  • Let the lite version return a low version like 1.0.0.0 from PF_Cmd_GLOBAL_SETUP when it detects the regular version is installed, and add PF_Stage_BETA + PF_OutFlag_I_AM_OBSOLETE to that too. But Premiere 2020 and 2021 at least don't seem to care at all and still pick the lite one to use. Maybe because the version in the PiPL is still the same between the plugins?
  • Let the lite version return PF_Err_INVALID_CALLBACK from PF_Cmd_GLOBAL_SETUP when it detects the regular version is installed. Doing so, I don't get any PF_Cmd_PARAMS_SETUP or PF_Cmd_RENDER, but my gpu rendering functions still get called (CreateInstance and Render). Needless to say, since PF_Cmd_PARAMS_SETUP didn't get sent (in which I do extra bookkeeping), these are now in trouble. Under all future sessions the lite plugin now doesn't get loaded anymore (until the user resets the plugin loading cache), but that first impression after upgrading their plugins will not be good.
  • Extension of the above: if I let the CreateInstance call fail too with suiteError_Fail, then the lite plugin will also not be used anymore for gpu renders. But now the regular plugin only receives software renders and no gpu renders.

 

Are there any options that do work 100%?

TOPICS
SDK

Views

515

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Adobe Employee , May 11, 2022 May 11, 2022

Are there any options that do work 100%?

 

No, not for runtime plug-in selection. 

 

 

Votes

Translate

Translate
Adobe Employee ,
May 11, 2022 May 11, 2022

Copy link to clipboard

Copied

Are there any options that do work 100%?

 

No, not for runtime plug-in selection. 

 

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Nov 04, 2022 Nov 04, 2022

Copy link to clipboard

Copied

LATEST

Yes.  I use a couple other smaller plugins and only had a problem with Kimbo and AXO Tools.  Kimbo occasionally had the issue on the last version but at some point would always save.  Now with the new 2023 version, it won;t save at all.  The pliugin works perfect though.

 

AXO has the issue on a rare occasion, but ends up saving it after a couple attempts.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines