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?
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.
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.
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.
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.
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.
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.
North America
Europe, Middle East and Africa
Asia Pacific