Update: FilmLight is running a free Zoom webinar today, Thursday 9 July, introducing the new FL API toolset discussed below. The session is scheduled for 9 AM PST / noon EST / 5 PM GMT and will cover how the API can be used to build post-production tools that connect with everyday Baselight and wider pipeline workflows.
Presenters Mustafa Laata and James Kasaba will walk through the practical side of the system, so anyone who wants to try the tools, ask questions, or work out where Python ends and FilmLight begins should probably drop by. It will likely answer most questions about the FilmLight API. Python, as usual, remains unexplainable. Registration is available via Zoom.
FilmLight has published fl-enhance, a GitHub-hosted collection of scripts, shaders and tools for Baselight, Daylight and now the FilmLight API. The repository is maintained by FilmLight itself and a free directory of community-generated enhancements, provided without warranty or support. So, yes, useful tools have escaped into the open, but no, this is not a magical support contract, you still need to understand what you are doing.
The important part for facilities and pipeline developers is access. FilmLight’s API documentation brings bindings for Java, JavaScript, NodeJS and Python. The new fl-enhance directory adds practical examples and utilities around that API, including Python app examples, Python CLI examples, render monitoring, render preset reading, scene-to-webpage output, LUT updating and transcoding tasks.
LUT to Look
One of the more immediately useful tools is LUT to Look, which wraps a 3D LUT into a Baselight Look file for use with the Look operator in Baselight and Daylight. The 3D LUT must use the same scene-referred colour space as input and output (Obviously), for example a camera log space, T-Log or ACES. That makes it relevant for show LUTs, look handoff and cases where a colour decision should survive more than one application without being “helpfully interpreted” by another tool.

Another practical example is Transcode to EXR, a command-line utility that converts a movie file into an ACES EXR sequence. What is cool about that is that it uses a temporary scene in memory, so it does not require creating a job or scene in a Postgres database. For VFX pulls, ACES handoff and annoying “why is this tool doing that to my colour?” moments, this is exactly the sort of small pipeline utility that saves hours by not pretending colour management is a lifestyle choice.

The shader side includes more specialised colour tools. TetraHSV and TetraRGB provide tetrahedral colour transformations in HSV and RGB. Both adjust the corners of a colour volume while preserving neutrals, with the documentation referencing methodology discussed by Steve Yedlin. These are not casual “make it teal” sliders, but high-end colour manipulation tools for people who know why preserving neutrals matters and have already suffered enough to care.

Also listed are YCbCr Clamp and PQ Clip. YCbCr Clamp can clamp only the luma channel in YCbCr mode, preserving colour, or clamp RGB channels directly; its settings include matrix selection, low/high thresholds in 10-bit integer units and a preview mode for clamped areas. PQ Clip clips to a specific nit level in PQ, with installation paths provided for Linux and macOS shader folders.

The repository currently includes app scripts, shaders and FLAPI tools rather than a single packaged product. That distinction matters. This is less “new Baselight outside Baselight” and more “FilmLight-grade building blocks are now easier to inspect, download, modify and integrate.”
For post houses with Python-heavy pipeline work (And what other kind of serious VFX pipeline is there…), that is probably the better version anyway: small tools, visible code, and fewer mysterious black boxes quietly ruining the day in a corner. And guess who is already using it? Netflix!
Enter the big Player

In Netflix’s workflow, FLAPI reads camera metadata from original camera files during ingest, conforms workflow-critical fields to a normalized schema, and makes the result searchable for downstream tasks. That metadata helps match footage by timing and reel name, supports validation checks and gives teams a way to debug why a shot looks a certain way after processing.
The public fl-enhance directory points in the same direction at facility scale: Python app examples, Python CLI examples, render monitoring, render preset reading, scene-to-webpage output, LUT updating and transcoding tasks. It is not a turnkey MPS clone, thankfully, because nobody needs a surprise enterprise pipeline in a GitHub basket. It is a useful pile of smaller parts.
For VFX plates and deliverables, Netflix uses FLAPI to debayer original camera files with format-specific decoding parameters, crop and de-squeeze images with ASC FDL, apply AMF data, and deliver OpenEXR files with the color context required to match dailies.
That makes the fl-enhance examples especially relevant: Transcode to EXR converts a movie file into an ACES EXR sequence from a temporary in-memory scene, without creating a job or scene in a Postgres database. LUT to Look wraps a 3D LUT into a Baselight Look file for the Look operator in Baselight and Daylight, provided the LUT uses the same scene-referred colour space on input and output.
The scale difference is the fun bit. Netflix packages FLAPI into Docker images and runs it as stateless functions on Cosmos, using CPU instances for inspection, rendering and trimming jobs while leaving GPU resources for other workloads.
Netflix’s Media Production Suite uses FLAPI as the core media processing engine for camera-file workflows inside its cloud compute infrastructure (Read the breakdown here). That means inspection, metadata extraction, trimming, transcoding and deliverable generation can run through the same image-processing engine used by Baselight and Daylight, but without parking the work on a desktop grading system. For facilities, that is the connection to fl-enhance: the repository does not publish Netflix’s internal pipeline, but it gives developers inspectable examples of how FilmLight’s ecosystem can be scripted, automated and bent into production-shaped tools.
A full VFX turnover or trimmed original-camera-file pull can require thousands of parallel renders, so the system allocates compute when queues grow and releases it when they fall. fl-enhance lives at the opposite end of the same idea: small scripts, shaders and FLAPI utilities that facilities can inspect, modify and integrate.
FilmLight fl-enhance directory


