What is CTL?

The Color Transformation Language, or CTL, is a small programming language that was designed to serve as a building block for digital color management systems. CTL allows users to describe color transforms in a concise and unambiguous way by expressing them as programs. In order to apply a given transform to an image, the color management system instructs a CTL interpreter to load and run the CTL program that describes the transform. The original and the transformed image constitute the CTL program’s input and output.

Color transforms can be shared by distributing CTL programs. Two parties with the same CTL program can apply the same transform to an image.

Installing and using CTL

The source code for CTL is hosted on Github

CTL is documented in the PDF file CTL Manual.pdf

Also included in the CTL repository is a command-line utility, called ctlrender, for applying CTL transforms to an image using one or more CTL scripts, potentially converting the file format in the process
ctlrender supports OpenEXR, TIFF, DPX, and ACES container file formats

Installation instructions are provided in the Git repository README – but by far the easiest way is using the package manager homebrew. Simply type ‘brew install ctl’ and CTL itself, all its dependencies (IlmBase, etc.), and the ctlrender command-line utility will be installed.