Category Archives: R&D

ft-Vignetting PRO for After Effects

ft-Vignetting PRO easily adds a highly customizable vignette to your footage or comp..

Here is the full feature list :

  • Shape – Circle, Elipse, Square, Rectangle.
  • Size – The size of the vignette.
  • Feather – The amount of feather.
  • Feather Mode – linear, smooth, ultra smooth.
  • Position – Adjust the center to reposition the vignette.
  • Color – Tint the vignette.
  • Blending Mode – Add, Multiply,…
  • Noise – Add noise.
  • Noise Color – Tint the noise
  • Noise Time – Animate the noise.
  • Opacity – Adjust the transparency.

The Pro and Lite version are now compatible with After Effects and Premiere Pro (CS4 to CS6).

Download the PRO version 

The plugin has been converted to Native AE by Tobias Fleischer ! He is the man !!! 😉

Free Plugins for After Effects updated to CS6

A quick post to let you know that some of my Pixel Bender filters for After Effects has been updated (or are currently being ported) to native plugins by Tobias Fleischer.

Those ports brings After Effects CS6 & Premiere Pro compatibilities on the table !!!!

The follwing are already online and remains free :


Stay tuned for the other ones which should comes soon !!!

ft-Filmic Contrast PRO for After Effects

ft-Filmic Contrast PRO is the new version of the “one slider contrast plugin to quickly get a cinematic look”.

This version is based on the same principle but with some extra features as :

  • Input channel selection
  • Color mode (per channel process)
  • Faster algorithm
  • Boost effect

The Pro and Lite version are now compatible with After Effects and Premiere Pro (CS4 to CS6).

Download the PRO version 

The plugin has been converted to Native AE by Tobias Fleischer ! He is the man !!! 😉

Adding JSON to Adobe After Effects

What is JSON ?

from :

“JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming LanguageStandard ECMA-262 3rd Edition – December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.”

JSON is used a lot by web service as response to replace XML.


Why not using the XML object ?

AE’s XML object is handy, but yet have some weird way to access attribute, which in some case can become problematic. On top that the XML object comes with lots of methods and properties to handle properly an XML.
JSON is pretty much a native Javascript syntax. An object with Key/Values. So you can parse it with any kind of loop or js accessor. It’s easier and faster to handle, and lighter than XML.

from :

Much Like XML

  • JSON is plain text
  • JSON is “self-describing” (human readable)
  • JSON is hierarchical (values within values)
  • JSON can be parsed by JavaScript
  • JSON data can be transported using AJAX

Much Unlike XML

  • No end tag
  • Shorter
  • Quicker to read and write
  • Can be parsed using built-in JavaScript eval()
  • Uses arrays
  • No reserved words


For AJAX applications, JSON is faster and easier than XML:

Using XML

  • Fetch an XML document
  • Use the XML DOM to loop through the document
  • Extract values and store in variables

Using JSON

  • Fetch a JSON string
  • eval() the JSON string

How to add it to AE ?

To add a JSON’s parser and stringifier to AE you could add this file to your script :
Just minify the code and put it at the beginning of your script.

Even better, to make sure the JSON object is always available when you launch AE, you can download this file and put it into the “startup” folder in your script directory. So the JSON object and function will be loaded at AE startup.


FFMPEG : PNG to Video file


FFMPEG is a command-line video/audio converter which supports lots of codecs and format but also can support some filters (blur, crop, scale, padding, LUT, …). And it’s freaking fast 🙂


Why using it ?

I only came across the video filter recently, and i’ll come back to it in future post. But the first/main reason I have been using it was for doing several conversion after render.
I’m rendering After Effects compositions into image sequences through several computers using Autodesk BackBurner and a script I made for it. That let me render the comps much faster.
Yet at the end I must deliver several formats as WMV, MP4, QT Animation, … So instead of creating a new AE project and converting PNG into those new formats, I’m creating 1 job on the renderfarm per format to convert it into. As a all picture, my AE script which send job to Backburner will first send the AE comp to render with after effects, and another job for each format depending of the AE render (this mean those job will wait for the AE render). Those depending jobs will use FFMPEG to convert PNG into the needed file.


How ?

Simple conversion :

ffmpeg.exe -i “\\pathToRenderFolder\image_%%5d.png” -r 25 -b:v 5000000 -c:v wmv1 -y “\\pathToRenderFolder\video.wmv”

-i is the input image sequence where %%5d is the number of digit (ie image_00000.png)
-r the frame rate
-b:v the bitrate of your video
-c:v the video codec (in this case windows media video)
-y means to overwrite the video file if it exists already
and then you specify where to save your video file.


Advanced conversion :

As PNG are RGB straight, if it does contain alpha, your RGB might look “weird” to you. Its because you need to premult the RGB with the alpha first.
To do that with FFMPEG we could use the filter graph, and draw the RGB in “overlay” mode.

ffmpeg.exe -i \\pathToRenderFolder\image_%%5d.png” -r 25 -b:v 5000000 -c:v wmv1 -vf “[in] split [T1],fifo, lutrgb=r=0:g=0:b=0, pad=in_w:in_h:0:0:0x000000, [T2] overlay [out]; [T1] fifo, pad=in_w:in_h:0:0:0x000000[T2]” -y “\\pathToRenderFolder\video.wmv”

All the other params are same as above, except for the Video Filter :
-vf  will duplicate the video 2 times (split) > we will turn the first video RGB to black and use it as a background (LUT) > we specify that the second video will be draw in Overlay mode (the overlay use the alpha as well) > then we draw the second video.
NB : by changing the LUT and especially the pad color (0xRRGGBB). You can change the background color to whatever you want.


Tada 🙂

matplotlab & numpy for python install on Mac OSX

I wanted to play with some python scripts which had dependency with those two and I couldn’t use the provided installer (didn’t work and don’t know why). So I had to compile it for myself, which is a pain in the ass… I actually couldn’t go trough with it.

But I found this shell script that does download, compile, install everything for you ! That saved my ass 🙂 . So in case you are in the same dilem (or in case I don’t remember about it in a few month :p ) here is the link for it :

2D Tracking Tutorials with Blender

Here are the two first tutorial about tracking with Blender, showing you how to do Corner Pin tracking and Stabilisation as well. ENJOY my friends !!
And stay tune since I’ll be releasing some scripts pretty soon which will do that “automatically” for you

Corner Pin Tracking



2D Stabilization (new tutorial)


2D Stabilization (old tutorial)

See also :

  • 2D tracking tutorial :

ft-Toolbar Tutorial

From AETuts+ :

“In this Quick Tip we will learn how you can create your own toolbar and customize it to your own liking… you can download the script from aescripts and the footage from here.”


You can watch the tutorial here :