Build a Show LUT for Mixed AI Footage
A CDL-plus-LUT recipe so mixed-model shots sit on one timeline, a stills chart to test it, and the rule for when to regenerate instead.
A single show LUT is how mixed-model shots sit in one timeline. It is not a film-print cube you drop on day one, and it is not a different LUT per clip. It is a Rec.709-to-Rec.709 look that every shot is allowed to wear only after each shot has been pulled onto a shared baseline with a CDL. Skip the CDL and the LUT preserves every model's private grade. Skip the regenerate rule and you will spend an afternoon writing a salvage cube for a plate that was never going to match.
The recipe is small: one CDL per shot (or per model family), one show LUT for the sequence, a stills chart that can fail the LUT, and a hard stop when the CDL is doing work a sampler should have done.
One look, many samplers
Each generation is an independent sample. There is no shared sensor, no shared white balance, no shared CDL from set. Two model families will not sit the same way. Lighting language in the prompt helps, and a verbatim lighting block across shots is the generation-side half of this job, covered in lighting continuity across separately generated shots. It does not replace a show LUT. It makes the LUT's job smaller.
A show LUT is the look the sequence will wear: contrast shape, a lean in the highlights, a small sat trim. It assumes its input is already neutral, correctly exposed, and Rec.709 display-referred. Generated footage fails that assumption until you make it true. A creative LUT will not fix mismatched shots is the matching order. This post is the file you build once that order is in place.
Do not use a log-to-print cube as the show LUT. Generated clips are not log. A 2383-style print-emulation LUT on display-referred Rec.709 double-applies contrast. Build a Rec.709-in, Rec.709-out cube, or grade the look with wheels and export that as the cube. 33-point is enough for a gentle look; 65-point if the curve has a steep shoulder.
Keep generation-time style presets off once you have committed to a show LUT. A preset is a second look, baked in at sample time, and it will not be the same function on two model families even when the label matches.
The CDL-plus-LUT recipe
ASC CDL is slope, offset, and power per channel, plus a saturation. In order: out = (in * slope + offset) ^ power, then sat around luma. It is the right tool for matching because it is small and inspectable: "this shot needed a 1.4 slope on blue" is a diagnosis, not a vibe.
Node 1: CDL, per shot, toward a master. Pick one master shot. Mid-shot, front-lit, no hero practical dominating the frame, skin you will live with. Every other clip's CDL is a translation onto that master's photometry: exposure (offset and slope), white balance (per-channel slope/offset), contrast (power), then a sat trim if the model arrived neon. You are not making the shot pretty. You are making it boring and like the master.
Node 2: the show LUT, one for the scene, on a layer above every CDL. Mix starts at 100% only if the LUT was built for this working space. If a clip falls apart at 100%, the CDL is wrong. Do not mix the LUT per shot to hide that. One mix value for the scene.
Node 3: a legalizer, last, if delivery wants legal range. Not before the CDL. Not before the LUT. A legalizer before the grade throws away the headroom the CDL might still use.
Work in 10-bit while this stack is live. An 8-bit Rec.709 file only has codes 16 through 235 for legal luma. CDL power and a contrasty LUT will posterize a sky that the generation compress already quantized. The stills chart is where you catch that, not the show LUT.
A workable build session:
- Export the sequence, or export hero stills, from the video editor after the cut is locked. The editor's
preview: truepass is a free 480p render with a short per-user cooldown; it is fine for confirming the cut and useless for building a LUT. Take the final export, which is charged once regardless of clip count. - In the grading tool, park the look. CDL each shot to the master on waveform, RGB parade, and vectorscope.
- With the CDLs on, grade the look on the master shot only. Export that look as a
.cube. - Apply the cube to the whole sequence. Watch the cuts, not the stills.
- Save the CDLs as a sidecar (or a grade project) so a replacement take can inherit the same show LUT and only the new shot's CDL is rewritten.
If a still-based matcher will derive a cube from two frames, use that as a CDL starter, not as the show LUT. A still cannot see the jump at the cut. Extracting stills from footage you already rendered is the Versely-side way to pull the chart frames; the grade still happens in the finishing tool.
A stills chart that actually tests the LUT
A LUT that looks good on the hero close-up and wrecks the product wide is not a show LUT. Build a five-frame chart from the actual sequence.
| Frame | Pull from | The LUT fails if |
|---|---|---|
| Neutral | A wall, shirt, or card that should be grey | The grey splits green or magenta; R/G/B parade fans out |
| Skin | A face in the key | Skin leaves the vectorscope flesh line; pores posterize |
| Product | The SKU, especially a labelled pack | Brand colour rotates; type on the pack goes neon or dead |
| Specular | Chrome, glass, a practical lamp | Highlights clip to a flat ceiling or hue-shift into cyan/magenta |
| Backdrop | Sky, seamless, or a large wall | Banding; a colour cast the CDL did not own |
View the five frames with the CDL on and the show LUT toggled. Then view them with the LUT off. The difference should be one look, not five different looks. If the product frame needs the LUT at 60% and the skin frame needs it at 100%, the LUT is carrying a match. Tear that out of the cube and put it in the CDL.
Re-test after any model swap. A cube built against one family's skin will not automatically seat another family's skin, even with a fresh CDL, if the two samplers disagree about what red in a face is. Mixing models is a scheduling choice. Budget the CDL-plus-LUT stack as part of that choice, not as an apology at delivery. The model catalog is the place to pick the family before you build the cube, not after.
For mixed real-and-generated sequences, match the generated shot to the camera plate, not the reverse. Matching generated footage to real camera footage is that order. The show LUT then sits on top of that baseline.
When the shot is too far gone
A show LUT is not a salvage tool. House rule, written down so a reviewer can enforce it:
- If any CDL slope sits outside 0.80-1.25, or power outside 0.85-1.15, to make the shot sit on the master, stop grading. Those numbers are not a standard. They are a tripwire that means the plate is a different picture, not a different exposure.
- If the waveform highlight is a hard ceiling at 100 IRE with no texture, there is no highlight to recover. Regenerate with a dimmer key and less "studio brightness" in the prompt.
- If aligning a neutral on the parade knocks skin off the flesh line, the model's skin and the model's walls disagree. Regenerate; do not invent a qualifier node that only runs on faces.
- If you are about to export a second look LUT for one shot, you have already lost. One show LUT, or a regenerate.
Regenerate on the master shot's model when you can. A single-model scene is the smallest colour problem you can have. If the job genuinely needs two families (one for a talking head, one for a product macro), isolate them by scene, not by reverse. Change the show LUT at the scene boundary if the story changes rooms. Do not change it on a reaction shot.
Write the tripwire into the shot log so an editor does not spend an hour on a plate you already knew was dead. Handing generated clips to a human editor cleanly is the rest of that package: names, one frame rate, a codec the NLE will open, and a log that flags a backup take before anyone grades it.
FAQ
Is a match LUT the same file as the show LUT?
No. A match LUT (or a CDL) translates clip B onto clip A. A show LUT is a style on pictures that already match. If your tool has one LUT slot, put the show LUT there and do the match with CDL or wheels. Using the one slot for matching leaves you with no look, or with a look that is secretly a pile of per-shot cubes.
Can I build the show LUT from a generated colour chart?
Only if the same model, the same lighting block, and the same compression path produced the chart. A downloaded Rec.709 chart is not what your sampler made. The five-frame chart from the actual sequence is the test that matters, because that is the picture the LUT will wear on air.
Should each model family get its own show LUT?
No. Each family gets its own CDL toward one master. One show LUT for the scene. A per-family look is how you get two shows in one cut. If two families cannot be CDL'd onto one master without tripping the regenerate rule, they should not share a scene.
Do I rebuild the LUT when I swap one take?
No. Rebuild the CDL on the new take. The show LUT stays. If the new take cannot CDL onto the master inside the tripwire, it is the wrong take, not the wrong LUT.