Skip to main content
JaimeCC
Participant
December 7, 2018
Answered

Need Guidance for Panel (HTML) - Plugin (C++) development

  • December 7, 2018
  • 6 replies
  • 2954 views

Hi, I barely new into this platform I would likely receive any assistance possible. Let me start.

Right now I wanted to create a plugin to apply some effect to certain frames when the user loads a movie into premiere pro. As far as I could researched AE plugin should fit more to achieve this. But I wanted to start with Premiere Pro as a first approach.

The matter is that I succeeded compiling the SDK Premiere Pro plugin examples, also I succeeded compiling a separate extension panel made with HTML and java script just a super senseless panel with hello world and a button.

I Want to be able to react to some panel changes into the plugin in C++ but I don't know how or where to start, I couldn't find any information about it, some InDesing and Illustrator samples code but I don't know if those would work into Premiere Pro, I need guidance, if there would be some document or explanation about how to achieve that. I have no advanced experience with JavaScript, but I'm experienced with C++.

I would kindly appreciate if someone could give me some starting point or a little example about how to react to panel actions into C++ plugin side. In my research I could find that plugins have selectors that could represent some kind of behavior (Reactions?), but I'm not hundred percent sure, so if it is how could I make the connection between JavaScript and those selectors in the plugin C++ side.

Thanks for reading hope you can help me out. Any starting point to achieve this goal will be appreciate.

This topic has been closed for replies.
Correct answer Bruce Bullis

Hello Jaime,

Panels and plug-ins are completely distinct; there is no direct path to controlling effects. However, panels can use ExtendScript calls to modify the values of effect parameters, including adding/removing keyframes. This will result in the effect being called with new param values.

Make sense?

6 replies

Participant
March 9, 2023

Hi,

 

i thought i'd post here rather than creating a new thread.

i've been doing research about communication between plugins and scripts in Adobe PP and AE. it seems like there's not a lot of info or code samples about this.

But i do understand that it should be doable via CSXS events (emit an event in script, using an event listener capture it in a plugin and then do something)
And that the relevant code sample is in Illustrator SDK.
Also in SDKPlugPlug.h i see there's library declarations related to events and listeners.

 

that's what i've gathered so far. but i just wanted to ask if maybe there's more info, someone can provide some code samples, advice to point me in the right direction etc ?

 

Thanks

Participating Frequently
July 8, 2021

Hi, I have the same issue too.

According to this Adobe CEP site ( https://www.adobe.io/apis/creativecloud/cep.html ).

 

>Combine CEP panels, app scripting, and plug-ins
>Your CEP extensions can connect to application plug-ins written in C++ using the app’s SDK. Build on existing plug-ins or build your own hybrid extensions by combining plug-ins and panels that share data and functionality. Scripting features added through plug-ins are also available to your CEP extensions.

 

So, Is somthing new news for CEP connent to application plug-ins written in C++ using the Premiere Pro’s SDK?

sonictk1
Known Participant
July 24, 2019

Oh sorry, perhaps I wasn't clear; I have no trouble with emitting the CSXS events from the ExtendScript/JavaScript side of things. It's only attempting to make use of PlugPlugAddEventListener from the C++ side of things that I can't seem to find a way to use.

Bruce Bullis
Legend
July 24, 2019

First recommended test: Can you get the Illustrator C++ sample to work, in Illustrator?

if so, next recommended test: Can you steal the Illustrator C++ code, graft it into a PPro plug-in, and get it to work?

sonictk1
Known Participant
July 24, 2019

I actually see in the Illustrator SDK the header/implementation files (SDKPlugPlug.h/.cpp) related to this functionality, but it seems like Photoshop or PPro doesn't have these corresponding files in their SDKs, and the ones in the AI SDK seem to be specific to AI. There are the presence of PlugPlugObject related DLLs in the PS and PPro installation directories, but there doesn't seem to be any documentation on how exactly to use this or even compile against it. Could you provide any guidance on this topic?

Bruce Bullis
Legend
July 24, 2019

I have no experience to offer, nor am I aware of any such documentation.


I'd recommend trying to use the files from the Illustrator SDK, and seeing how far you get.

Though not directly relevant, perhaps this snippet from PProPanel would be helpful, for the ExtendScript side of things:

https://github.com/Adobe-CEP/Samples/blob/da3d830e76c042a15772b2cde285e50be71fe995/PProPanel/jsx/PPRO/Premiere.jsx#L1281

sonictk1
Known Participant
July 24, 2019

Hi, I actually have the same issue, and documentation regarding this is sparse.

I have a HTML5 CEP panel that acts as the UI front-end for pre-processing a PSD document. I have a C++ library that is then intended to perform further processing on that document and extracting out information from it.

Right now, from the available literature I've managed to read, it seems like I should be emitting a CSXS event from the HTML/JS/Extendscript side that my native C++ .8li Automation Photoshop plugin can then register a callback function for. Unfortunately, I still don't see any sample code that demonstrates how to do this.

If an example could be provided of how a native Photoshop plugin can listen for CSXS messages and invoke a callback based off of that, it would go a long way towards answering this question.

Bruce Bullis
Legend
July 24, 2019

I'm told there's a CSXS-aware plug-in in the Illustrator SDK.

In PPro, your panel could perform its pre-processing, then call app.project.importFiles() to bring the resultant .psd into PPro.

Bruce Bullis
Bruce BullisCorrect answer
Legend
December 7, 2018

Hello Jaime,

Panels and plug-ins are completely distinct; there is no direct path to controlling effects. However, panels can use ExtendScript calls to modify the values of effect parameters, including adding/removing keyframes. This will result in the effect being called with new param values.

Make sense?

JaimeCC
JaimeCCAuthor
Participant
December 7, 2018

Hi bbb_999

Thanks for responding, I do understand that plugin development and panels are different things, as I mentioned i manage to compile the example plugins and make some dummy panels with no further functionality, the thing is, I want to be able to react to panel's event into the C++ plugin side, I was looking forward to some code example to do it. Thanks for all.

Greets!.

Bruce Bullis
Legend
December 7, 2018
I want to be able to react to panel's event into the C++ plugin side

Specifically, what panel events?