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

Plugin/Extern Software to automaticly replace Footagedata

Community Beginner ,
May 21, 2013 May 21, 2013

Hello!

I'm new on programming plugins for Adobe After Effects and just wondering if there is an API to call After Effects from an external Software?

I'm starting coding a software to administrate some After Effect projects with the same content. This content includes placeholders which should be replaced with Adobe Illustrator files, but the Illustrator Files are individually for each project and after replacing them the project should start rendering itself.

I read and searched the SDK, the PDF and example files for days now, but i can't find something really useful.

The way i would work on it:

     - Programming a Plugin for replacing the placeholders (the path of the files can be read from an temporary textfile so the Illustrator Files can be put in the individual projects)

     - Programming an individual Software which contains all projects-paths and a database including the paths of the Illustrator Files (this Software starts the A.A.E-Project-File and activates the Plugin)

Can you tell me with which example project i should start or is there a better way to program such a administration tool?

Software: Visual Studio (C++)

Operating System: Windows 7 64bit

Thanks for your Help!

Best Regards

Manuel

TOPICS
Scripting
1.7K
Translate
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
Community Expert ,
May 21, 2013 May 21, 2013

hi ML_Atikon!

welcome to the forum!

what the task you're describing is very much possible, and in more than once way.

generally speaking, there are two kinds of AE of plugins:

1. effects, which reside on layers and process video and audio data.

2. AEGPs (after effects general plug-ins), which get loaded on AE's boot, and remain running through out the session.

if you choose to go with a plug-in (we'll discuss the alternative afterwards), you'd want to go with an AEGP.

such a plug-in can perform project operations of the sorts you're describing.

there is no direct way of communicating with an AEGP from an external source VIA an API. HOWEVER, a plug-in is just a DLL, so there's plenty you can do outside AE's API to talk to your plug-in.

you can have it check for messages periodically (look up "idle_hook"), or you can have it launch a new thread that will constantly run in the background.

plenty of solutions to go around.

and now the alternative:

i'd recommend you go with AE's javascript API, and not a plug-in.

reasons being:

1. you can make AE run a script though command line, so you have the launching of the process solved for you.

2. java scripts are much easier to develop, and you'll save a HEAP of time getting your system up and running.

3. you can convert to a plug-in later on.

4. some operations are missing from the c API and are available only via JS. (such as "replace footage". yeah... i know...)

that is it in a nutshell.

i hope it gives you a clearer picture of your options.

Translate
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
Community Beginner ,
May 21, 2013 May 21, 2013

Hello shachar carmi,

thank you very much for your fast answer!

The alternative sound really good, thanks for the opinion. Are there any example files or a discription where i can find some useful information about the JavaScript API like the PDF for the AE plugins?

So this means I can code an external Software for the administrative things including a way to start one of the projects (I think there are enough ways anyway) and then I can start the scripts through the command line with the instruction coming from my external Software?

Just to make things clear 🙂

You really helped me here thanks again!

Best Regards

Manuel

Translate
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
Community Expert ,
May 22, 2013 May 22, 2013

there are a couple of technical approaches that will do the job for you.

i'd recommend building a some operational functions in java to search for a

layer in a composition by name and replacing that layer with a source from

a given path,

then i would have created a data format that the script parses and

processes each entry.

create a function you can later call with a path to the data file.

once your function script is done you either place it in the scripts

startup folder, so it will load when AE loads or call it by command line.

aefterfx.exe -r "path to script"

in any case, a loaded script remains in memory after being ran.

so now you can call your main script function with the path to your data

like so:

afterfx.exe -s "myMainFunction('path to data file');"

if you want do a vast short cut in your development time, i'd recommend you

buy this script:

http://aescripts.com/compsfromspreadsheet/

i think 70% of what you need is there and the rest you'll have to tailor

yourself.

in any case, this is the link to the scripting PDF:

http://blogs.adobe.com/aftereffects/files/2012/06/After-Effects-CS6-Scripting-Guide.pdf?file=2012/06/After-Effects-CS6-Scripting-Guide.pdf

you can also find a lot of knowledge in the AE scripting forum:

http://forums.adobe.com/community/aftereffects_general_discussion/ae_scripting

that subject has been dealt with there before.

feel free to write back here with any question.

we don't frown upon off topic affairs here.

Translate
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
Advisor ,
May 23, 2013 May 23, 2013

Shachar, thanks for all the great guidance!

I'll move this thread to the AE scripting forum, where Manuel's questions will be seen by even more with experience in scripting.

Translate
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
Community Beginner ,
May 26, 2013 May 26, 2013

Shachar thanks for the great answer! Since your guidance I developt the scripts for the replacements and now I'm working on the script for the automatic render-queue-listing after the replacing stuff.

I found something very useful to get the correct paths of the controls I need. Maybe someone needs it too, it's a scipt discussed in some other threads it's named rd_GimmePropPath.jsx.

And if someone need the scripts don't hesitate to ask!

Best Regards and thanks again for the help!

Manuel

Translate
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
Community Expert ,
May 26, 2013 May 26, 2013
LATEST

glad to hear you're on your way!

and thanks for reporting back with new findings!

that's how a knowledge base is built.

Translate
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