WORK IN PROGRESS
Experimental software
Lens Debaser is under active development. Features, controls, presets, results, compatibility and performance may change without notice. Parts of the plugin may break, behave unexpectedly, or not work entirely as described in this guide.
Lens Debaser is not a scientific ray tracer. It uses perceptually useful approximations of lens effects rather than attempting mathematically exact optical simulation. The aim is to produce convincing, controllable results while keeping render times practical for post-production and color-grading workflows.
The software and this guide are provided as is and as available, without warranties of any kind, express or implied. To the fullest extent permitted by applicable law, the authors and contributors accept no liability for loss, damage, interrupted work, corrupted projects, lost media or any other consequence arising from installation or use. Test the plugin on copies of important projects and media.
INSTALLATION
Install Lens Debaser
Download the signed and Apple-notarized Lens Debaser 1.73 installer. It includes the ready-built plug-in, 133 factory presets and the Preset Authoring Kit.
Download the installer
Save the .pkg file from the official GitHub release. You do not need the older ZIP or command-file installer.
Quit Resolve
Fully quit DaVinci Resolve before installing or replacing the plug-in.
Run the installer
Double-click the downloaded .pkg and follow the installation steps. Enter your Mac administrator password when requested.
Restart Resolve
Open Resolve and find Lens Debaser in the OpenFX effects library. To load a factory preset, click Load and choose a .ldbpreset file from the factory preset folder below.
Factory presets: /Library/Application Support/Lens Debaser/Factory Presets
Preset Authoring Kit: /Library/Application Support/Lens Debaser/Preset Authoring Kit
The installer places the plug-in in /Library/OFX/Plugins. It leaves personal presets intact and saves an existing plug-in bundle in /Library/Application Support/Lens Debaser/Backups before replacing it.
Signed and notarized: the installer and plug-in are Developer ID signed.
Requirements: an Apple Silicon Mac, macOS 26 or newer, and DaVinci Resolve or DaVinci Resolve Studio. The approved binary already requires macOS 26; the installer checks that requirement.
Older unsigned releases: installation workarounds
These instructions apply only to older unsigned ZIP releases, not the notarized installer above. Try opening the old installer once, then go to System Settings → Privacy & Security → Open Anyway. Confirm Open and authenticate when requested. See Apple’s instructions.
Alternatively, for an older release downloaded from the official Lens Debaser GitHub repository, open Terminal and run:
xattr -cr "/path/to/Lens-Debaser-release-folder"
Replace the quoted path with the extracted release folder’s actual path, then open Install Lens Debaser.command again. This removes quarantine and other extended attributes from that path without disabling Gatekeeper system-wide. Do not run the old command-file installer over the new signed installation: it replaces the plug-in’s signature.
CREATE YOUR OWN PRESETS WITH AI
Create optical responses entirely inside an AI client
HIGHLY EXPERIMENTAL
AI-assisted preset generation is a highly experimental feature. An AI assistant can misunderstand the schema, produce an invalid file, choose visually poor combinations, or create a preset that behaves differently across footage. Treat every generated preset as an untrusted creative starting point: validate it, inspect it at full resolution and in motion, and keep established working presets available until the new result has passed review.
You do not need to know programming, optical mathematics or how to use a command line. Describe the image character you want in everyday language and an AI assistant such as ChatGPT can create, check and attach a finished Lens Debaser preset for you to download. The Preset Authoring Kit supplies the assistant with the real controls, allowed ranges and rules for the current plug-in.
The entire authoring workflow takes place in the AI client: it creates the preset file, checks it and provides the download. Lens Debaser does not connect to an AI service; it simply loads the finished .ldbpreset in Resolve.
1. Get the authoring files for your Lens Debaser version
Always use the Preset Authoring Kit that matches the Lens Debaser version for which you are creating the preset. Controls, ranges, choices and dependencies may change between releases. The newest kit is not guaranteed to work with an older installed plug-in, and an older kit may omit or misdescribe controls in a newer one. The kit included inside each release archive is the authoritative package for that version.
Open the matching Preset Authoring Kit and provide Lens-Debaser-Preset-Schema.json and Clean-Slate-Template.ldbpreset to the AI assistant. The schema explains every available setting; the template shows the required file format. The examples folder contains finished recipes you may also provide as references.
Prompt example:
I am creating a preset for Lens Debaser 1.73. Read the attached schema
and tell me which target_plugin_version it specifies. Stop and warn me if it
does not match 1.72. Do not create the preset yet.
Get the Preset Authoring Kit →
2. Start a new AI conversation
Open ChatGPT or another assistant that accepts file attachments. Begin a new conversation so unrelated instructions do not influence the result. Attach the schema and clean template. If you want something structurally similar to one of the included examples, attach that example too.
Prompt example:
Use the attached Lens Debaser schema and clean template as the only authority
for available controls and file structure. Confirm that you can read both
files, then wait for my description of the look.
3. Describe the result you want
Explain the desired appearance as you would to a colorist. Useful details include whether the centre should remain sharp, what should happen near the edges, how highlights and out-of-focus points should behave, whether color fringing is wanted, and whether the effect should be subtle, clearly visible or extreme. Mention the kind of footage you intend to use. A description such as “soft vintage portrait glass with a protected centre, gentle edge curvature, warm highlight diffusion and oval background bokeh” is more useful than simply asking for “a cinematic lens.”
Prompt example:
I want a clearly visible but usable portrait look for close-ups. Keep the face
sharp near the centre, let focus curve and soften gradually toward the edges,
give small background highlights slightly oval bokeh, and add restrained warm
highlight diffusion. Avoid strong distortion and obvious color fringing.
4. Give the assistant a clear instruction
Copy this starter request after your visual description:
Using the attached Lens Debaser schema and template, create one valid
LensDebaserPreset=2 file for this optical response. Use only controls listed
in the schema, obey their ranges and dependencies, and activate the fewest
control groups needed. Prefer a convincing, responsive approximation over an
extreme effect. Do not include unchanged defaults, Input Color Space or
Diagnostic View. Explain what the preset does, recommend suitable test images,
validate the result against the schema, and create the finished preset as a
downloadable .ldbpreset file beginning with LensDebaserPreset=2. Do not ask me
to copy source text, use a text editor, rename a file or run a command.
5. Download the finished preset
The AI client should create the actual file for you. Download the attached .ldbpreset directly from the conversation and place it in a folder where you want to keep your custom Lens Debaser looks. Because loading one preset also populates the Preset menu with the other valid presets in the same folder, it is useful to ask for several related candidates or strength variants and keep them together in a dedicated test folder. Load that folder once, compare the candidates in Resolve, then move only the approved versions into your permanent custom-preset folder. You should not need to copy a code block, use TextEdit, change a file extension or open Terminal. If the assistant responds with instructions instead of a downloadable file, ask it explicitly to create and attach the finished file.
Prompt example:
Create the finished preset as an actual downloadable .ldbpreset attachment.
Do not give me text to copy, do not ask me to rename a file, and do not ask me
to use Terminal or any command-line tool.
6. Let the AI check it, then load it
Before downloading, ask the assistant to reopen its generated file and check the header, every control name, value range, choice, dependency and required second input against the attached schema. Then add Lens Debaser to a node in Resolve, click Load in the Presets group, and choose the downloaded .ldbpreset. Loading one file also makes the other valid presets in that folder available in the Preset menu.
Prompt example:
Reopen the preset you created and validate every line against the attached
schema. Check the header, control names, value ranges, menu choices, duplicate
keys, dependencies and whether a second RGB/depth input is required. Report
any correction you make, then attach the corrected preset as a new file.
7. Test more than one image
Judge the result on appropriate material: a face, fine detail, hard contrast edges, small bright highlights, defocused lights and moving footage. Use a depth map when the recipe requires one. Check the full frame for clipped or repeated edges, excessive color, obvious layered blur and distracting motion. A preset that looks interesting on a chart may still look artificial on a real shot.
8. Ask for focused revisions
Keep the schema and current preset attached in the same AI conversation. Describe one visible problem at a time—for example, “protect the face in the centre,” “make the oval bokeh stronger without increasing overall blur,” or “reduce edge color while keeping the prism bend.” Ask the assistant to change only the controls needed for that correction, validate the revision and attach it as a new downloadable .ldbpreset. Tell it to preserve each promising version under a distinct file name so you can compare results and return to an earlier look.
Prompt example:
The centre is now too soft, but I like the edge curvature and bokeh. Revise
only the controls needed to protect more of the central face area. Keep the
current edge and highlight character, validate the revision, and attach it as
a newly named .ldbpreset so I can compare it with the previous version.
Remember: file validation confirms that a preset is structurally compatible; it cannot determine whether the result is attractive or appropriate. Treat AI-generated settings as creative starting points and approve them by looking at the rendered image.