What actually works when you relight a finished shot.
The caption steers the light, not the light ball. That is the opposite of what the model documentation says, and it is the single most useful thing we learned. Here is the rest, measured over 8 renders rather than guessed.
LTX-2.3-22b IC-LoRA Relight · RTX PRO 6000 · 1280×544, 121-frame takes
The setup
Relighting means taking footage that is already shot and graded, then changing where the light comes from and what colour it is. Not a colour grade. The model re-renders the lighting, so shadows move and surfaces pick up a new key.
The evidence base here is small and I want to be honest about that: 8 renders on a single pod, across three source films, plus a set of probes that failed and told us more than the successes did. Everything below is something we measured, not something we read.
The caption beats the light ball
The model takes two direction controls: a caption describing the light you want, and a rendered sphere showing where it comes from. The README implies the sphere is the steering wheel. We set the two against each other on purpose, pointing the ball one way and the caption the other, then measured which one the output followed by pixel distance.
The output followed the caption, and not narrowly. It landed 2.5 times closer to the caption-only render than to the ball-only one. Ball-only steering was weak. Caption alone was close to a full render with both.
The practical version: write the light you want in words, use the ball to reinforce it, and never promise a client that the ball alone will place the sun. One caveat worth stating, because it could overturn this. We used a synthesized ball rather than the official Sphere-Light-Render node, and that may be exactly why the ball had so little authority. The finding holds for our pipeline. It may not hold for theirs.
Visibility matters more than quality
Relight quality tracks how much the source actually shows, not how good it looks. The usable band sits around 25 to 120 median luma on an 8-bit scale. Inside that band the model relights what is there. Below about 20 it stops relighting and starts inventing: a flare scene grew debris that was never in the plate, and a room lit by a flashlight came back as a different room.
This is the rule that saves the most money. Check the histogram before you book the GPU, because a beautiful near-black shot is the worst possible input.
Drift scales with the size of the change
Identity holds or breaks in proportion to how far you move the light. Night to noon is the maximum move and it is where faces and costumes get re-imagined, because the model is filling in detail that was never captured. On the same shot, night to dim overcast held identity cleanly.
So the reliable work is not the spectacular work. Small and medium deltas are the ones you can sell with a straight face. The night-to-day resurrection is a great demo and a risky deliverable, and those are two different things.
Removing a colour cast is the cheap win
The best single result we got was not a dramatic relight. It was a heavy orange cast neutralised back to daylight, on a shot whose luma was full the whole time. Low risk, high impact, and it works because nothing has to be invented: the detail is all present, just tinted.
If you are looking for the first thing to try on a real client shot, it is this one.
Interiors work, within limits
The LoRA was trained on exteriors, so the expectation was that interiors would fail outright. They do not. They survive small deltas: an interior taken to dim overcast came back clean.
What breaks it is asking for a look that implies architecture the shot does not have. Request daylight in a windowless room and the model will build you windows and a sky to justify it.
Motion is not the limit. Cuts are.
We had a working rule that heavy motion broke the relight, with a churn threshold somewhere under 3. That rule was wrong, or rather it was measuring the wrong thing. A sandstorm battle probe at churn 7 to 8 relit cleanly with its content intact.
What actually breaks is shot length and fast cutting. A window with several cuts in it gives the model several scenes to reconcile. One continuous shot with a lot of movement in it is fine. This distinction matters when you are screening footage, because it moves plenty of usable material back onto the list.
How we pick shots now
The screening is mostly arithmetic, which is the point. Scanning by eye wastes GPU hours on clips that were never going to work.
- 01Scan the whole film with signalstats at 2 frames per second, pulling luma and chroma averages at low resolution.
- 02Score every 20-second window on three axes: luma band, colour cast, and temporal stability.
- 03Review the top windows by eye for the things numbers miss: is it exterior, is there a subject, where is the native key light.
- 04Match the shortlist to a demo class, then probe at 121 frames and keep what survives.
What we threw away
The rejects are the useful part of any screening pass, so here they are. Crushed blacks were the biggest single cause of failure: a flare wall, a flashlight apartment and a strobe-lit fight all came back with invented content. A blown-out white void had nothing in it to relight. Night streets and dark interiors sat under the luma floor. One highway chase failed on cut density rather than on motion.
Roughly speaking, half of what looked promising by eye failed on the numbers, and the numbers were available before we rendered anything.
Why this matters commercially
A shot that is right in every way except the light used to mean a reshoot. For a lot of budgets that means it simply stayed wrong. Relighting turns a subset of those into a fix that costs GPU minutes.
The subset is the honest part of the pitch. Bright enough to see, a change you are not asking too much of, and a single continuous shot. Inside that, it is reliable. Outside it, the model invents, and invented footage is worse than the original problem.
The demo reel that came out of this work is on the video page. The tooling we run locally is open source. If you have a shot with a lighting problem, send it over: info@mad-it.agency.