Four cues, and the viewer checks all of them
The matte is clean, the despill is done, the track holds. The shot still looks composited. It nearly always fails on one of four things, and in this order of frequency:
- Black level. The insert’s shadows go to 0; the plate’s shadows sit at 8 or 12 out of 255.
- Grain. The plate has noise; the insert is clean.
- Focus. The insert is sharp everywhere; the plate’s lens has depth of field.
- Colour and contrast. The insert was lit by a different light than the scene.
None of these is subtle once you know to look, and all are measurable rather than matters of taste.
Black level, the cheapest fix in compositing
Real footage almost never reaches zero. Lens flare, atmospheric haze, sensor noise floor and the codec’s own black offset mean the darkest pixel in a photographed frame typically sits somewhere between 4 and 20 in 8-bit terms. A rendered element or a graphic goes to a true 0.
Put a true black next to a lifted black and the eye reads the true black as a hole. This is the “sticker” effect, and it is frequently the whole problem.
Measure it: put a pixel probe on the darkest part of the plate and read the value. Then lift your insert’s black point to match. In any colour tool this is the lift or offset control; in ffmpeg it is one curves or colorlevels call. Thirty seconds of work, and the single largest improvement available for the effort.
Do the same at the top. If the plate’s highlights roll off and clip at 240 rather than 255, matching that matters too, though less.
Grain, and why adding it is not cheating
Every photographed image has noise: from the sensor’s read noise, from photon shot noise, amplified by whatever gain was used. It is not a defect; it is a signature of the capture, and its absence is conspicuous.
Two properties have to match. Amplitude varies with brightness: shot noise scales with the square root of the signal, so a grain tool applying uniform noise across the range looks wrong, and the good ones let you set the response per luminance band. Size and structure follow the sensor: a large sensor at low ISO gives fine grain, a small one at high ISO gives coarse blotches with chroma noise in the blue channel. Grain that is too fine disappears after compression; grain that is too coarse reads as a filter.
The most accurate method is not to synthesise it. Find a flat, featureless section of the plate (a wall, a patch of sky) subtract a heavily blurred copy of itself from it, and you have the plate’s real grain as a signed difference to add to your insert. It matches by construction rather than by eye.
Apply grain last, and never before a blur: blurring grain destroys it.
Focus, and the direction that matters
A real lens has one plane in focus and everything else progressively softer. If your insert is meant to sit two metres behind the subject, it should be softer than the subject by roughly the amount the plate’s other background objects are.
Judge it by finding something in the plate at the same depth and comparing edge sharpness directly: zoom to 200 per cent and look at an edge in each. Guessing produces inserts that are systematically too sharp, because renders and graphics are perfectly sharp by default and our instinct is to preserve detail we worked for.
Note also that defocus is not a Gaussian blur. Out-of-focus highlights in a real lens become discs or polygons the shape of the aperture, bokeh, rather than fading smoothly. For a background with bright points in it, a Gaussian blur reads as wrong. Compositors have dedicated defocus nodes with an aperture shape for exactly this; Blender’s Defocus node and Fusion’s Defocus both do it.
Lens distortion and chromatic aberration
A wide lens bends straight lines and refracts red and blue slightly differently, producing coloured fringing that grows toward the frame edges. Your insert has neither. Near the centre nobody notices; near the edges, straight insert edges in a curved plate are obvious. Undistort the plate, composite, redistort; or apply a matching distortion to the insert alone. Chromatic aberration is one node: offset red and blue radially by a fraction of a pixel, scaled by distance from centre.
The order of operations
A defensible default, and departures from it should be deliberate:
- Key or roto, build the matte.
- Despill.
- Colour match: black level first, then overall balance, then contrast.
- Defocus to match depth.
- Light wrap.
- Motion blur, if the insert moves and the plate’s motion is blurred.
- Lens distortion.
- Grain.
Grain and distortion are last because they are properties of the camera, and the camera is the outermost thing in the chain. Anything applied after them is, physically speaking, happening inside the lens.
Checking it
Three tests that catch what staring does not:
- Play at full speed. Half of all composite errors are temporal and invisible when paused.
- Halve the size, or squint. Removing detail leaves the broad values, where black-level and contrast mismatches live.
- Flip it horizontally. Mirroring resets the adaptation your eye has built up, and mismatches jump out. An old painting technique that works exactly as well here.
The free path
Blender’s compositor has all of it: a Defocus node with aperture blades, grain by difference, colour balance with lift, gamma and gain, and lens distortion in both directions. Fusion in the free DaVinci Resolve has the same set under its own names, plus Resolve’s scopes for measuring black level properly. ffmpeg can add grain and adjust levels for simple cases. Scopes matter more than the compositor here, and Resolve’s are free and broadcast-grade.
The limitation
Matching is judged by eye and there is no metric that says a composite is done. Reprojection error tells you a track is good; nothing tells you a grade is right. The nearest thing to an objective test is the flip-and-squint pair above, and experienced compositors still miss things that a fresh viewer catches in three seconds.
There is also a hard floor set by the source. An 8-bit, heavily compressed plate has quantised shadows and blocked-up grain, and an insert graded to match will inherit those artefacts rather than the plate’s real texture. You can match a degraded image, but you cannot match it well.
Every lesson here is open. Your progress is recorded once you pass the Video with AI exam.
Check your understanding
An inserted element is graded, defocused and given matching grain, then blurred slightly at the end to soften it into the plate. The result looks soft and oddly clean. What went wrong?
Pick the one you would defend. Your answer stays private.
Stuck on something?Ask Deepa, your AI tutor