GRAINOVA guide
Film grain, halation, bloom and film response for finished, filmic footage.
Film texture and glow, in a few sliders.
GRAINOVA adds film-inspired texture and optical finishing in five groups: Film Grain, Halation, Bloom, Film Response and Optional Imperfection. Everything is subtle by default and every group has its own Reset.
Each group shows only the one or two controls that define its character (Amount/Size for grain, Strength for halation and bloom, Shadow Softness/Midtone Density for film response). The rest of that group's controls sit in a collapsed Advanced sub-section, so a first pass is a preset plus a handful of sliders; the Advanced controls are there when a shot needs finer tuning.
Order of processing: the image is converted to linear light; flicker (if any) is applied; halation and bloom energy above the threshold is blurred and added; the result is encoded again; film response, grain and dust are applied in the encoded domain.
Halation and bloom react to the bright parts of the image. If you see no glow, lower the Threshold or brighten the highlights earlier in the node tree.
Amount and Size are the primary controls, always visible. Roughness, Luma Grain, Chroma Grain, Response and Seed are in the collapsed Advanced sub-section.
| Control | Meaning |
|---|---|
| Amount | Grain strength. 1.0 is a 6% standard deviation in encoded values; 0.1 to 0.3 is subtle. |
| Size | Grain diameter in pixels of a 1080-line frame. It scales with the frame height, so proxies and full resolution match. |
| Roughness | 0 is fine and even; 1 adds larger irregular clusters like fast film stocks. |
| Luma Grain | Monochrome density grain, identical in R, G and B. |
| Chroma Grain | Independent grain per color channel, like dye clouds. Keep it low. |
| Response | 0 gives the same grain everywhere; 1 concentrates it in the midtones and fades it toward black and white. |
| Seed | Selects a different grain sequence. |
Grain is generated procedurally from the frame number, so it changes every frame, is correlated with the previous frame just enough (20%) to avoid flicker, and is identical every time you render or scrub to the same frame. There is no repeating static pattern.
Format and Character (in FILM GRAIN) load a complete grain starting point into the ordinary controls. The names are LASTFX creative profiles such as LASTFX 35 Natural, LASTFX 16 Organic or LASTFX 65 Fine. They are not measurements of any film stock and do not reproduce one. Custom leaves the controls alone, and changing Size, Roughness, Luma, Chroma, Response or a strength control switches back to Custom.
| Format | Size compared with 35mm | Rule |
|---|---|---|
| 8mm | about 2.4 times | Size follows (35mm gate width / format gate width) to the power 0.6. This is a LASTFX design choice, not a physical law: small formats are projected larger, so their grain looks coarser. |
| 16mm | about 1.7 times | |
| 35mm | 1.0 (1.5 px at 1080 lines) | |
| 65mm | about 0.64 times |
| Character | What it gives |
|---|---|
| Fine | Smaller, even, restrained grain with a little less in the highlights. |
| Natural | The long-standing default: balanced size, moderate clumping, light colour grain. |
| Organic | Slightly larger, clumpier grain with a bit more colour, a little more in the shadows and less in the highlights. |
| Dense | Stronger grain across the whole tonal range, a little more in the shadows. |
| Coarse | Large, clumpy grain. |
| Experimental | Very large, very clumpy, strongly coloured grain with a lot in the shadows. For effects, not for natural looks. |
Under Advanced, Shadow, Midtone and Highlight Strength scale the grain in each tonal range on top of Amount and Response (1 = as set, 0 = none, 2 = twice as strong). At 1, 1, 1 the picture is bit-for-bit what it was without these controls.
Grain never freezes. Every frame gets a new pattern, and nothing repeats within a sequence (the sequence only wraps after more than four billion frames). Temporal Coherence sets how much of the previous frame's luma grain is kept: 0 makes every frame independent, the default 0.2 limits flicker, higher values give steadier grain. Neighbouring frames share a fraction rho / (1 + rho squared) of their grain; frames further apart share none.
Grain Rate sets how often the pattern changes: every timeline frame (default), 24 times a second (film cadence, calmer on 50 and 60 fps timelines) or 12 times a second (each grain held for two frames on a 24 fps timeline). Scrubbing is order independent: a frame always gets the same grain.
The grain size already follows the frame height, so a look keeps its apparent grain size from HD through UHD, 6K and 8K. The new controls are verified in the OpenFX reference host on the CPU, and the CUDA path is checked against the CPU with these controls in automated tests (including very large frame numbers). Neither has yet been verified inside DaVinci Resolve itself.
Halation emulates light that scatters back through the film base and exposes the red-sensitive layer, giving bright lights a red-orange fringe. GRAINOVA extracts only the energy above Threshold (hue preserved), blurs it and adds it back tinted.
Strength is the primary control. Radius, Threshold and Red Response are in the collapsed Advanced sub-section.
| Control | Meaning |
|---|---|
| Strength | Glow intensity. 0 turns halation off. |
| Radius | Size as a percentage of the frame height. |
| Threshold | Display-referred level above which light produces halation (0.75 means 75% of the way to white). |
| Red Response | 0 is a neutral glow; 1 is strongly red-orange. |
Bloom is threshold-based glow. Softness mixes a tight core with a wide veil.
Strength is the primary control. Threshold, Radius and Softness are in the collapsed Advanced sub-section.
| Control | Meaning |
|---|---|
| Threshold | Level above which highlights bloom. |
| Radius | Size as a percentage of the frame height. |
| Softness | 0 is a tight glow, 1 is a wide atmospheric veil. |
| Strength | Intensity. 0 turns bloom off. |
Shadow Softness and Midtone Density are the primary controls. Highlight Compression and Color Separation are in the collapsed Advanced sub-section.
| Control | Meaning |
|---|---|
| Shadow Softness | Softens and lifts the toe so blacks roll off like film. |
| Midtone Density | + makes midtones denser, - lighter. Black and white points stay put. |
| Highlight Compression | A smooth shoulder that rolls highlights toward white instead of clipping. Leave at 0 for HDR/log timelines. |
| Color Separation | Gently cools the shadows and warms the highlights. |
The curves compress; they never hard-clip. Values above 1.0 are preserved when Highlight Compression is 0.
All three are off in the default and in most presets. They are on, lightly, only in 16mm Documentary, Vintage 8mm, Music Video Grit and Warm Memory, so the default is never a cheap VHS effect.
Film Color gives the picture a color and contrast character: choose a look and set how much with Film Color Amount. It is applied after the glow and before the grain, so the grain sits on the final colors. None (the default) leaves your colors exactly as they are, bit for bit. Texture presets never change Film Color, and Intensity fades it out with everything else.
| Look | Character |
|---|---|
| Golden Warm | Warm, golden highlights and gently warm shadows, a little extra saturation and a soft roll-off. |
| Cool Cinematic | Teal-leaning shadows and warm highlights with firm contrast: the classic cinema contrast of cool and warm. |
| Clean Daylight | Clean and natural: slight contrast and a touch of warmth, no obvious tint. |
| Faded Vintage | Lifted, faded blacks, muted colors and a warm-green fade: an aged print. |
| Soft Pastel | Soft, low-contrast pastels with lifted blacks and a gentle pink-blue tint. |
| Rich Print | Deep contrast and rich, saturated color with a firm shoulder: a dense print. |
| Bleach Bypass | High contrast with most of the color drained: a gritty silver-retention feel. |
| Black & White (Classic) | Classic black and white with firm contrast and a soft shoulder. |
These are LASTFX creative looks, not measurements of any film stock, and they are not a stock library. They work on the display picture, so the same look gives the same result whatever the Input Encoding, and light above white is kept.
| Preset | Character |
|---|---|
| Default (Subtle Film) | Fine grain, gentle halation and bloom, soft toe and shoulder. |
| Clean 35mm | Lighter grain, restrained glow. |
| Fine Grain Finish | Very fine grain, no halation. |
| 16mm Documentary | Larger, rougher grain with gate weave, flicker and dust. |
| Halation Glow | Pronounced red-orange halation and bloom. |
| Soft Highlight Bloom | Wide, soft bloom. |
| Night Cinema (Pushed Stock) | Rough, colourful grain with strong red halation, like a pushed high-speed stock. |
| Vintage 8mm | Large, rough grain with gate weave, flicker and dust. |
| Cinematic Drama (Feature) | Fine, controlled grain with a gentle red-orange halation and a soft roll-off, for dramatic, filmic scenes. |
| Commercial Polish (Clean, Glossy) | Very light grain, a soft glossy bloom and only a faint halation: clean and high-end. |
| Wedding & Event Glow | Fine grain with a wide, soft glow around highlights and slightly lighter, flattering midtones. |
| Music Video Grit | Rough, colourful grain, red-orange halation, denser midtones and a little gate weave, flicker and dust. |
| Warm Memory (Nostalgic) | Warm red-orange halation, soft bloom, medium grain and a little weave, flicker and dust: a remembered, nostalgic look. |
| Intensity | Master control above every preset: fades the whole look from the original picture (0) to full (1). |
No. It changes every frame and is repeatable per frame number.
No. Everything is processed on your computer.
Yes, on NVIDIA GPUs through CUDA when the host renders on the GPU; otherwise it uses all CPU cores. In our benchmarks on an RTX 5060 test PC the GPU path was about 70 to 90 times faster than the CPU, and it matches the CPU picture in automated tests. A frame rendered with CUDA inside DaVinci Resolve matched the CPU frame.