GRAINOVA documentation
Film grain, halation, bloom and film response for finished, filmic footage.
Documentation version 1.2.0
What it does
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.
Quick start
- Drag GRAINOVA onto a node, usually one of the last nodes in your grade. Set Input Encoding to match your timeline.
- Choose a Preset under LOOK as a starting point. Presets only change parameters; nothing is hidden.
- Adjust Film Grain first, then Halation and Bloom, then Film Response. Each group starts with just its primary control(s); open Advanced only if you need the finer knobs.
- Use each group's Reset to return that group to the factory values.
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.
Film grain
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.
Halation
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
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. |
Film response
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.
Optional imperfection
- Gate Weave: tiny, smoothly drifting movement of the picture (up to 0.25% of the frame height).
- Flicker: small brightness changes from frame to frame (about 0.12 stop at full strength).
- Dust: sparse specks that live for a single frame; light specks are more common than dark ones.
All three are off in every preset except 16mm Documentary, so the default is never a cheap VHS effect.
Presets
| 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. |
Troubleshooting
- Nothing changes: open the LICENSE section. Without an active trial or license the plug-in passes the image through.
- No glow: lower Halation/Bloom Threshold, raise Strength, or check that your highlights reach the threshold.
- Grain looks too strong at a different resolution: it should not; sizes scale with frame height. Lower Amount.
- HDR footage looks compressed: set Highlight Compression to 0.
- Playback is slow at high resolution: halation and bloom are the most demanding parts; reduce their Radius, or render in cache.
FAQ
Is the grain the same on every frame?
No. It changes every frame and is repeatable per frame number.
Are my frames uploaded?
No. Everything is processed on your computer.
Does it use the GPU?
Yes, on NVIDIA GPUs through CUDA when the host renders on the GPU; otherwise it uses all CPU cores. The CUDA path is verified by automated CPU/GPU comparison tests on one GPU model and has not yet been verified inside DaVinci Resolve.
