Natron (software)

Natron is a free and open-source node-based compositing application. It has been influenced by digital compositing software such as Avid Media Illusion, Apple Shake, Blackmagic Fusion, Autodesk Flame and Nuke, from which its user interface and many of its concepts are derived.

Natron supports plugins following the OpenFX 1.4 API. Most open-source and commercial OpenFX plug-ins are supported.

Origin of the name
Natron is named after Lake Natron in Tanzania which, according to Natron lead programmer Alexandre Gauthier, provides "natural visual effects" by preserving its dead animals.

History
Natron was started by Alexandre Gauthier-Foichat in June 2012 as a personal project. The project was the winner of the 2013 Boost Your Code contest by Inria. The prize was a 12-month employment contract to develop Natron as a free and open-source software within the institute.

The first widely available public release was 0.92 (June 6, 2014), which brought rotoscoping and chroma keying functionalities. Subsequent beta releases brought additional features such as motion blur, color management through OpenColorIO, and video tracking.

Version 1.0 was released on December 22, 2014, together with a large sample project by François "CoyHot" Grassard, a professional computer graphics artist and teacher, demonstrating that Natron could execute interactively graphs with more than 100 nodes. In January 2015, the Art and Technology of Image (ATI) department in Paris 8 University announced that they would switch to professional-quality free and open-source software for teaching computer graphics to students and artists, including Blender, Krita and Natron.

Licensing
Before version 2.0, Natron was licensed under the Mozilla Public License version 2.0, which allowed redistributing it with closed-source plug-ins.

Since version 2.0, the software was relicensed under the GNU General Public License version 2 or later to allow better commercialization. All plugins that are distributed with binaries of Natron 2.0 or later have thus to be compatible with the GPLv2. Closed-source plug-ins, including commercial ones, can still be used with Natron, although the GPL according to the FSF does not allow loading and linking closed-source plug-ins, or plug-ins that are not distributed under a GPL compatible license, but they have to be distributed separately.

Data produced by Natron, or any software distributed under the GPL, is not covered by the GPL: the copyright on the output of a program belongs to the user of that program.

Hardware

 * Low hardware requirements: a 64 bit processor, at least 3GB of RAM (8GB recommended)
 * A graphic card that supports OpenGL 2.0 or OpenGL 1.5 with a few commonly available extensions (ARB_texture_non_power_of_two, ARB_shader_objects, ARB_vertex_buffer_object, ARB_pixel_buffer_object).

Render engine

 * 32 bit floating point linear color processing pipeline: all frames are represented as floating-point RGBA samples with premultiplied alpha, permitting the use of alpha compositing operators defined by Thomas Porter and Tom Duff.
 * Support for multi-core architectures: all processing is multithreaded using a thread pool pattern.
 * Color management is handled by the OpenColorIO library, including support for the ACES color encoding system proposed by the Academy of Motion Picture Arts and Sciences.
 * Support for many image formats, using OpenImageIO, including multi-layer OpenEXR. Additional image layers can be used to store several color layers, or for non-color information such as depth, optical flow, binocular disparity, or masks.
 * Support for reading and writing video files through the FFmpeg library, including digital intermediate formats such as DNxHD and Apple ProRes.
 * Full support of the OpenFX 1.4 API, enabling use of open source or commercial plug-ins.
 * Support for low-resolution rendering for previewing the output of computing-intensive visual effects.

Tools

 * Image transform (position, rotation, scale, skew).
 * Video tracking functionalities.
 * Keying: Keyer, Chroma Keyer, Difference Keyer, Hue Keyer, PIK Keyer.
 * Paint: Solid, Pencil, Eraser, Clone, Reveal, Blur, Smear, Dodge, Burn.
 * Manual rotoscoping, using Bézier curves.
 * A wide range of additional effects (color transforms, geometric transforms, image generators...) are available.
 * Key frame-based parameter animation, using Bernstein polynomials (the polynomial basis behind Bézier curves) for interpolation.
 * Animation curves editing: Curve Editor.
 * Keyframes editing: Dope Sheet.
 * Support for stereoscopic 3D and multi-view processing.

Advanced

 * Support for batch-mode rendering through a command-line tool, allowing the final render to be processed on a render farm.
 * A project format written in XML and easily human editable.
 * Node presets can be imported/exported easily via XML.
 * Python script language (Python 2.7).
 * SeExpr script language (Walt Disney Animation Studios).
 * WebGL 1.0 script language (Shadertoy) for hardware accelerated 2D/3D visual effects development.
 * Customisable UI.
 * "PyPlug" custom node creation system (equivalent to Nuke Gizmos).