Skip to content

XMP to LUT

A command-line tool that converts Adobe Camera Raw / Lightroom XMP presets into 3D LUT `.cube` files for Affinity, with a Rust core and a Python interface.

Period
May 2026
Status
Completed
Technologies
2

Overview

Lightroom and Adobe Camera Raw presets can't be used in Affinity. This tool turns an XMP preset into a 3D LUT (.cube) that applies the same colour transformation.

How it works

  • Rust core — colour maths, identity LUT generation and the .cube writer.
  • Python layer — XMP parsing, the command-line interface and orchestration.
  • PyO3 + maturin — the bridge between the two.

Commands

  • convert — from an .xmp preset to a .cube LUT, with configurable size and title.
  • inspect — shows the settings read from the preset and flags unsupported properties.
  • calibrate — compares the simulated LUT with a HALD image processed by Camera Raw and writes a corrected LUT.