Free

Color space transform · DCTL · DaVinci Resolve

Grade inside
a film
negative.

Film Negative Space CST simulates photochemical negative processing as a color space transform. It works entirely in scene-linear, applies a real asymmetric negative characteristic curve and printer-light balance, and hands you back the same log you came in on. Gamut safety is built right into the controls. Free, and built to feed straight into PhotoChemist.

11log formats
4processing modes
2ways to run it
Processing pipeline scene-linear
1
Input logwhatever you feed it
2
Linearisedecode from one of 11 log formats
3
Pivot contrastasymmetric curve around mid grey
4
Printer lightsR/G/B balance in log-density space
5
Re-encodeback to the same log you started in

Why it exists

Film contrast isn't display contrast.

Resolve's built-in contrast tools work in display-referred space. They pivot symmetrically and treat highlights and shadows the same way. That is not how a film negative behaves.

A real negative is scene-referred and asymmetric: it compresses the highlights hard and extends shadow gradation gently. This tool applies that characteristic curve correctly to any log format, in scene-linear, with printer-light color balance built in, so the look you get is the look the chemistry would have given you.

Built-in contrast vs. negative characteristic
Display-referred contrast
  • Symmetric pivot, same curve up and down
  • Works after the display transform
  • No printer-light color balance
  • Doesn't match how a negative responds
Film Negative Space CST
  • Asymmetric: above vs below mid grey, separately
  • Works in scene-linear, before encoding back
  • Printer lights R/G/B in log-density space
  • Reversible — enter and exit the negative space

The negative response · interactive

Feel the curve move.

An interactive visualization of how the controls reshape tone around mid grey. Mid Grey In sets the input pivot, Mid Grey Out sets where it lands, and Contrast Above / Below bend the highlights and shadows independently around it.

At the defaults it's a straight line — mid grey 0.18 in and out, contrast 1.0 both ways. Push the sliders to shape the response, then flip to Invert for the exact inverse or Animal to watch the pair land back on the diagonal.

Pivot · Mid grey Above · highlights Below · shadows
Linear in → Linear out
Shadows Highlights Input Output
0.180
0.180
1.00
1.00
0.00

Step 2 · linearise

Decode from the log you're actually working in.

The CST linearises from your source log before doing anything, so the contrast curve and printer lights operate in true scene-linear. Pick your format and it re-encodes back to the same one on the way out.

Linear DaVinci Intermediate PhotoChemist FilmLight T-Log ACEScct ARRI LogC3 ARRI LogC4 RED Log3G10 Panasonic V-Log Sony S-Log3 Fujifilm F-Log2

One node, the whole chain

Everything happens in a single DCTL.

The negative pipeline runs end to end in one node. A per-channel CMY gamut compressor is built right into the controls, so wide-gamut excursions get caught in the same pass, right before re-encoding. Toggle it off when you don't need it.

Film Negative Space CST · DCTL

Linearise · negative characteristic · printer lights · gamut safety · re-encode

Photochemical negative processing as a color space transform. The full signal flow lives in one node, with the gamut compressor built into the same control set so you set the contrast and the gamut safety together.

Signal flow
1
Input log → linearisedecode from one of 11 log formats
2
Pivot contrastasymmetric, above / below mid grey
3
Printer lights R/G/Bbalance in log-density space
4
CMY gamut compressper-channel, linear space · built in, toggleable
5
Re-encode to logback to the same format you started in
Set the contrast, the printer balance and the gamut safety once, in a single node.

Four modes

Go in, come back out, or both at once.

The CST linearizes your input, moves the mid grey point, lets you grade, and inverts back out. Three modes give you the two ways people run it — a two-node Sandwich or a single-node Animal Style — and a fourth handles the PhotoChemist print step.

Forward
Digital → Negative

Sandwich mode, going one direction. Linearizes your input, moves the mid grey, and takes you into the negative space.

The opening node of a sandwich.
Invert
Negative → Digital

The other half of the sandwich. Reverts the changes a Forward node made, landing you back on your usual signal. Same settings, opposite direction.

The closing node of a sandwich.
Animal Style
In and out, one node

Goes in and back out inside a single node. The printer-light controls become contextual to the space in the middle and are baked in, with limited coloring tools along for the ride.

A whole negative move in one node, no sandwich.
PhotoChemist Print Prep
Forward + print invert

Runs the forward pass and printer lights, then inverts the result like a print off a negative and folds in the built-in gamut compression. Built for the PhotoChemist print stage.

The print step in a PhotoChemist chain.
Sandwich mode · two nodes One DCTL, dropped twice — go in, grade, come back out.
Node 1 · Forward Go in Convert your signal into the negative space. Set your mid grey and contrast here.
Nodes between Your grade Work the image while it lives in the negative space — your normal tools, reacting differently.
Node 2 · Invert Come back out Copy your settings here and flip the mode to Invert. It reverts the Forward node exactly.
Ways people actually use it
Grade between film stocks
With PhotoChemist set to Neg Scan, drop an Invert node (ITF: PhotoChemist) to get a gradeable log curve, then a Forward closing node before the Print side set to Print Only. You're grading after your negative stock and under your print stock, like a real photochemical system.
A film sandwich on anything
No PhotoChemist needed. Run a Forward / Invert sandwich on any log curve, grade in the middle, and come back out clean. The world's your oyster.
A quick one-node move
Reach for Animal Style when you want the in-and-out in a single node, with the printer-light controls baked in and contextual to the middle.
Change how your tools respond
Because it talks to pretty much every log curve, you can remap into a novel space where your curves, qualifiers and saturation tools react and respond differently than they do in your usual one.

Every control

The full parameter set.

The CST exposes the negative characteristic and printer balance, plus a built-in block of gamut-compressor controls for the CMY roll-off. It's all one parameter set on one node.

Negative characteristic & printer lights

Core controls
ParameterWhat it doesRange / default
Mid Grey In The input pivot. Set it to match the linear mid grey of your input transfer function — DaVinci Intermediate sits at 0.18. 0.01–1.0 · 0.18
Mid Grey Out Where that pivot lands on the way out. Leave it at 0.18 to hold mid grey, or lift it (many like ~0.42) to brighten the midtones. 0.01–1.0 · 0.18
Contrast Above Power applied above the pivot. Over 1.0 expands the highlights; under 1.0 compresses them, the way a negative rolls off. 0.1–3.0 · 1.0
Contrast Below Power applied below the pivot. Over 1.0 deepens the shadows; under 1.0 opens up shadow gradation. 0.1–3.0 · 1.0
Printer R Red printer balance in log-density space. Each point equals 0.025 density units. Mimics photochemical printer-light timing. 0–50 · 25 neutral
Printer G Green printer balance in log-density space. Each point equals 0.025 density units. 0–50 · 25 neutral
Printer B Blue printer balance in log-density space. Each point equals 0.025 density units. 0–50 · 25 neutral
Blend Width Smoothstep blend across the pivot so the above and below segments meet without a kink. 0 is a hard join. 0.0–0.5 · 0.0

Gamut compressor

Built in · GC prefix
ParameterWhat it doesRange / default
GC Gamut Control Enables or disables gamut compression. Uncheck it to compare before and after within the same node. checkbox
GC Cyan Limit How far cyan can extend before compression begins. 0.2 means 20% beyond achromatic before the roll-off starts. 0.0–1.0 · 0.2
GC Magenta Limit How far magenta can extend before compression begins, measured from achromatic. 0.0–1.0 · 0.2
GC Yellow Limit How far yellow can extend before compression begins, measured from achromatic. 0.0–1.0 · 0.2
GC Length Sets the toe of the compression curve. Lower starts compression earlier; higher stays linear longer before compressing. 0.0–3.0 · 0.5
GC Strength Controls the curvature of the roll-off. Higher values give more aggressive compression with a sharper knee. 0.5–5.0 · 1.2
GC Diagnostic Off for normal output · Curve Overlay draws the compression curve on-screen in RGB per channel · Out of Gamut greys in-gamut pixels and shows out-of-gamut areas in their original color. Off / Curve / OOG

Free in the Tool Box

It's free. Grab it and start playing.

Film Negative Space CST is part of the free set in the Tool Box, with the gamut compressor built right in. Install it with the Tool Box Manager, no membership required.

Built to feed PhotoChemist

Use PhotoChemist Print Prep mode just upstream of a PhotoChemist stock node and the print stage receives properly inverted density. The two are designed to chain together.

Free tool
$0· no membership

The whole tool, every mode and the full parameter set, gamut safety included. Yours to keep, free.

  • Film Negative Space CST, all four modes
  • Built-in CMY gamut compressor
  • 11 log formats in and out
  • Chains straight into PhotoChemist
  • Installs & updates with the Tool Box Manager
Download directly → Get via Tool Box Manager
Free · macOS · Windows · Linux

Getting started

Install in a couple of clicks.

The Tool Box Manager installs Film Negative Space CST, keeps it organized, and updates it for you alongside the rest of the kit. Works on macOS, Windows and Linux, no manual file-copying.

Open the Tool Box Manager

Grab the latest release from GitHub and open it. It's your home base for every Dec. 18 tool.

Find Film Negative Space in the list

Browse the catalog and select Film Negative Space CST.

Click Install

The Manager drops the DCTL into the right place for you, no digging through system folders.

Restart DaVinci Resolve

Relaunch Resolve so it picks up the new DCTL.

Apply it on a node

Add a node, apply the tool as a DCTL, pick your input log format and a processing mode, and you're in negative space.