Craft Converter
Buy me a coffee

Taking an EffectCraft project back into After Effects

After Effects cannot open an .ecproj. What it can do is run a script, so the converter writes one: a .jsx file that builds your project inside After Effects, after which you save it as a normal .aep.

Why a script and not an .aep file

An .aep is a closed binary format that only After Effects writes reliably. A script uses After Effects' own scripting interface, so the project is built by After Effects itself. The script is plain text, written in the ES3 flavour of JavaScript that After Effects' engine runs, restricted to ASCII. Every name, path, comment, expression and piece of text from your project is written as an escaped string, so nothing in the project is ever executed as code.

Running the script

  1. Convert your .ecproj (saved by EffectCraft 0.9.2 or later) and download the .jsx. Only the project is uploaded; footage stays on your machine.
  2. Open After Effects 2023 or later with a new, empty project.
  3. Choose File, Scripts, Run Script File and pick the .jsx.
  4. Wait for the message at the end. A big project can take a few minutes and After Effects may look frozen meanwhile.
  5. Read the message, then File, Save.

On the scripting preferences: the script imports and creates things but doesn't write files, so we don't expect the "Allow Scripts to Write Files and Access Network" setting to be needed. If After Effects refuses a step, the closing message names it, and that setting (under Preferences, Scripting and Expressions) is one of the first things to check. This detail comes from general After Effects behaviour, not from our tests.

The script is made so that a refused step doesn't stop it: each statement is guarded, and anything After Effects rejects is collected and listed at the end. An older After Effects than 2023 still runs the script, and the message says what it couldn't do; track mattes need 2023.

What it rebuilds

Effect names and parameters

Effects are added by their internal match name (something like ADBE Glo2), and parameters are set by match name too. Match names work in every language of After Effects, which matters if your copy isn't in English. For the 64 effects found in the corpus of real After Effects projects, the converter has exact tables, including unit conversions: EffectCraft stores some values as 0 to 100 where After Effects uses 0 to 1 or 0 to 255, and the script converts them back. For effects it has not met in a real After Effects project, it falls back to English parameter names, and the end message tells you if any could not be found.

What cannot be carried

These come from limits of After Effects' scripting, not oversights, and each is listed in the report:

Text keeps its font names as PostScript names, so install the fonts first. Formatting of single characters needs a recent After Effects; without it, each text keeps its first style.

The honest caveat: no Adobe After Effects in testing

There is no copy of Adobe After Effects in our test setup. Each script was run in EffectCraft's own After Effects-compatible scripting engine, and the project it built was compared value by value with the original, without relying on the converter's own reading. The tests used 564 EffectCraft projects made from After Effects projects (544 identical, 20 differing only in what their reports name), eight purpose-built projects and a real 14 MB project, and a set of deliberate script mutations that the check detected every time. That proves the script says what it should. It does not prove that every call behaves in Adobe's After Effects exactly as its scripting guide promises. Treat the first run as a trial, keep your .ecproj, and compare the result with EffectCraft. If After Effects refuses a step, the end message names it, and reporting it helps.

When to use this direction

It suits a project that began in After Effects, was changed in EffectCraft, and needs to go back for a client, a plug-in or a render farm. It also suits rebuilding a hand-made EffectCraft project for a team on After Effects. Expect a close rebuild, not a pixel match: After Effects draws effects with its own code.

The EffectCraft to After Effects converter produces the script and a layer-by-layer report. For the opposite direction see After Effects to EffectCraft, and the guide and supported features list the details.

Try the converters