Copy link to clipboard
Copied
I build an Exporter plugin for Premiere as a dot PRM file. Zal Lam says I need to put it into C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore folder so the render will be seen in the queue and access MediaCore libraries.
After Effects is trying to load my Premiere Exporter plug-in and giving a failed to load warning.
How do I make my Premiere plug-in only be seen by Premiere and not also by After Effects?
Bill sent his exporter over offline. For those following the thread, here's my findings:
Ah, so it has a DLL dependency on libxml2.dll. Turns out in my PPro 5.5.2 installation, that file no longer is there, and it’s replaced by libxml2-2.dll, so the exporter doesn’t load in my PPro 5.5.2 either. So you’ll probably want to not assume the file is already there from the PPro installation.
When you launch AE, it loads the exporter plug-ins, although they won’t show up in the UI. This is because th
...Copy link to clipboard
Copied
What specifically does the warning say? Can you type out the wording or post a screengrab? Thanks Bill.
Copy link to clipboard
Copied
Here is the message:
After Effects warning: The following plugins have failed to load. Please reinstall these plugins:
C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore\ExporterISIS.prm
The plugin works great in Premiere. I need to write a similar exporter for After Effects.
Copy link to clipboard
Copied
By the way I am using Win7 64 bit Professional and the latest Adobe Master Collection CS5.5 release version, full install. My Premiere plugin PRM is a 64 bit build, obviously.
Copy link to clipboard
Copied
Does your exporter entry point ever get hit? For example, is it being sent exSelStartup?
Copy link to clipboard
Copied
I do not yet have an After Effects exporter, only Premiere. Therefore, I do not have an entry point.
Copy link to clipboard
Copied
Here is the end of the Plugin Loading log for Premiere:
Loading from root path: C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore
Scanning for the following file types: *.prmp, *.prm, *.dll, *.aex, *.8bf
Scanning C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore and sub-directories
Loading C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore\ExporterISIS.prm
The registry tells us to cache so the plugin will be loaded from the cache.
Loading from the registry...
The plugin was successfully loaded from the registry.
Loading C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore\libxml2.dll
The registry tells us to cache so the plugin will be loaded from the cache.
The plugin is marked as Ignore, so it will not be loaded.
Copy link to clipboard
Copied
Here is the end of the Plugin Loading log for After Effects:
Loading C:\Program Files\Adobe\Adobe After Effects CS5.5\Support Files\(Media Core plug-ins)\Common\DXSampleInterceptor.dll
The registry tells us to cache so the plugin will be loaded from the cache.
Loading from the registry...
The plugin was successfully loaded from the registry.
Loading from root path: C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore
Scanning for the following file types: *.prmp, *.prm, *.dll, *.aex, *.8bf
Scanning C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore and sub-directories
Loading C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore\ExporterISIS.prm
Invalid registry entry found so the plugin will be loaded from disk.
Loading from disk...
The library could not be loaded.
Loading C:\Program Files\Adobe\Common\Plug-ins\CS5.5\MediaCore\libxml2.dll
Invalid registry entry found so the plugin will be loaded from disk.
Loading from disk...
The library could not be loaded.
Copy link to clipboard
Copied
But does the entry point for your Premiere Pro exporter get hit? Do you get any selectors on startup sent to xSDKExport?
Copy link to clipboard
Copied
No, the entry point is never hit in After Effects. As far as I can tell my plugin is never loaded into After Effects. I ran the debugger and set break points but the entry point is never hit in After Effects.
Yes, the plugin is loaded and the entry point is hit in Premiere when I run Premiere.
I am worried that MediaCore is trying to load a Premiere plugin when I run After effects.
Do I need to add a PiPL to the Premiere plugin so After Effects MeciaCore will not load it? That idea seems silly.
Copy link to clipboard
Copied
Bill sent his exporter over offline. For those following the thread, here's my findings:
Ah, so it has a DLL dependency on libxml2.dll. Turns out in my PPro 5.5.2 installation, that file no longer is there, and it’s replaced by libxml2-2.dll, so the exporter doesn’t load in my PPro 5.5.2 either. So you’ll probably want to not assume the file is already there from the PPro installation.
When you launch AE, it loads the exporter plug-ins, although they won’t show up in the UI. This is because the MediaCore libraries are present in both PPro and AE, and those libraries do provide limited export support in AE, although third-party exporters don’t show up in the UI. So you could either (1) supply the libxml*.dll file to AE so that it loads properly, or (2) use the blacklist functionality as follows: In the same folder as the exporter, you’ll want to search for a file named “Blacklist After Effects.txt”. If it exists, add a line with “SDK_Exporter” to it, or whatever your exporter filename is, without the extension. Otherwise, just create the file and add the line.
Sounds like you’d be interested to have support for third-party exporters in After Effects, so that you wouldn’t need to write a separate plug-in for export from AE. I’ll add your name to the list of requestors for feature F27005.
Copy link to clipboard
Copied
Zac:
Thank you for insight as usual. I made the file “Blacklist After Effects.txt” with the name of the plugin inside and now After Effects launches without the annoying message.
By the way, libxml2.dll is present on my system as you can see from the loading dumps above. I just forgot to send to you too. Therefore, adding libxml2.dll that is not the answer. Please, I could use a common exporter for Premiere and After Effects so please put me on the list.
I will let you know how the After Effects exporter goes. Can I use the same technique of hooking QuickTime or the ExporterXDCAMHD.prm in After Effects as I did in Premiere? After all, that is what I want to do.
Copy link to clipboard
Copied
Glad that works for you Bill!
To supply the libxml2.dll file to AE, what I should have said is that you would need to add it to the folder that contains the AE executable; adding it to the MediaCore folder it won't be found by the DLL loader.
I think the shim exporter technique you used for PPro won't work well in AE. The only way to add 3rd party export currently is via the AEIO API, described in the AE SDK. But the QuickTime export uses an exporter plug-in like PPro. To translate messages between the AEIO API and the exporter API may provide to be unwieldy.
Copy link to clipboard
Copied
Thanks for the clarification. I plan to use the AEIO exporter for After Effects. We will need to use the ExporterXDCAMHD.prm for this client. Perhaps that explanation needs another thread.
Copy link to clipboard
Copied
Zac: Do I need to blacklist some other program besides After Effects which might try to load my shared MediaCore plugin?
Copy link to clipboard
Copied
I tested your plug-in with Audition and it doesn't pop any error. I believe AE is the only one that will present a message to the user if a plug-in fails to load.
Copy link to clipboard
Copied
Thank you again, Zac. You are a gentleman and a scholar. The black list will work for AE and I will work on AEIO for that exporter.