1. Master LUT formats comparison table

Format (Baselight name) Dimensions File representation Grid/size used Typical size options Data encoding
Truelight cube 3D (+ separate 1D input shaper section) Plain text, FilmLight proprietary “Truelight Cube v2.1” syntax (# lutLength, # InputLUT, # 3DLUT blocks) 1D shaper 101 pts + 3D 64³ 1D length + cube width configurable ASCII floats, 0–1 range (input shaper can exceed 1)
Truelight 1D 1D only Same Truelight Cube container, but only an # InputLUT 1D block 1024-point curve 1024/2048/4096 typical ASCII floats, normalized 0–1
AMIRA 3D Plain text .cube, identical syntax to Resolve/Iridas cube 33×33×33 17/33/65 ASCII floats 0–1, LUT_3D_SIZE keyword
Arri 3D Plain text .3dl, Autodesk-style mesh with explicit input code values 33×33×33 17/33/65 ASCII integers, 10-bit code values (0–1023), header gives input value list
Autodesk 3D Plain text .3dl, classic Autodesk mesh 17×17×17 17/33/65 ASCII integers, 12-bit (0–4095) output values
Autodesk 1D 1D Plain text .lut, LUT: 3 1024 header 1024-point curve 1024/4096/65536 ASCII integers, 10-bit (0–1023)
Autodesk 1D half float 1D Plain text .lut, LUT: 3 65536 65536f header 65536-point curve up to 65536, “f” = float flag ASCII floating values, half-float precision range
Autodesk CTF 3D (XML “process list”, can chain ops) XML, AMPAS/ACES-style <ProcessList><LUT3D><Array> 48×48×48 configurable, often 33–65 ASCII floats 0–1, 16f bit depth declared, tetrahedral interpolation flag
Autodesk Lustre (Mesh) 3D Plain text .3dl, Lustre-specific 3DMESH/Mesh tokens + trailing LUT8 gamma 1.0 block 17×17×17 17/33/65 ASCII integers, 12-bit, plus an embedded 1D gamma tag
BMD 3D Plain text .cube, standard cube syntax with explicit LUT_3D_INPUT_RANGE 33×33×33 17/33/65 ASCII floats 0–1
Barco 3D Binary proprietary container (“LUT-CLUT”), copyright header + packed numeric tables small header + compact binary mesh fixed by Barco projector spec Raw binary (not human-readable), looks like 16-bit/mixed packed values
BlackMagic 3D Plain text .cube, “HDLINK 3D LOOKUP TABLE” comment header 16×16×16 16/17/33 (HDLink limited to small cubes) ASCII floats 0–1
BlackMagic 1D 1D Plain text .txt, “HDLINK GAMMA TABLE” header, CR-only line endings 1024-point curve matches HDLink hardware LUT depth ASCII floats, 0–1018-ish (10-bit-like scale, not normalized to 1.0)
CLF (Common LUT Format) 3D (chainable XML, supports Range/Matrix/LUT1D/LUT3D ops) XML, official AMPAS standard, xmlns="urn:AMPAS:CLF:v3.0" 64×64×64 fully flexible, any size per <Array dim> ASCII floats, explicit in/out bit depth and color space descriptors (InputDescriptor/OutputDescriptor)
Canon gamma 1D 1D Plain text .clut, FilmLight-authored Canon-style key/value header (type gamma, size, order) 1024-point curve 1024 typical ASCII floats 0–1
Canon gamut 3D 3D Plain text .clut, same Canon key/value header but type gamut 33×33×33 17/33/65 ASCII floats 0–1
CineSpace 3D (with optional pre-LUT 1D shaper curves per channel) Plain text .csp, official Rising Sun “CSPLUTV100” spec shaper 2-pt + cube 32×32×32 cube: 17/33/65; shaper resolution independent ASCII floats, explicit domain min/max per channel
Colorfront 1D 1D Plain text .1dlut, no header at all (raw rows only) 1025-point curve implementation-defined ASCII floats 0–1, tab-separated
Colorfront 3D 3D Plain text .3dmesh, no header (raw rows only) 33×33×33 implementation-defined ASCII floats 0–1, tab-separated
DVS 3D Plain text .3dl, Autodesk-style mesh exported via Truelight 17×17×17 17/33/65 ASCII integers, 10-bit (0–1023)
DVS 1D 1D Plain text .txt, minimal comment header 1025-point curve implementation-defined ASCII floats 0–1, tab-separated
DaVinci 3D Plain text .dat, “LUT SIZE” header, legacy DaVinci (pre-Resolve-cube) format 33×33×33 17/33/65 ASCII floats 0–1
Evertz 1D (per-channel, R/G/B blocks) Plain text .lut, simple size + # red/green/blue channel markers 1024 points/channel hardware-dependent ASCII integers, scaled ~0–1023
ICC N/A — device/color profile, not a grading LUT in the cube/curve sense Binary ICC profile (ColorSync-readable), contains an A2B/B2A CLUT internally internal CLUT grid (vendor-defined) n/a (profile-based) Binary, ICC v2.2 structure, includes absolute colorimetric intent + PCS values
IRIDAS 3D Plain text .cube (identical syntax family to BMD/AMIRA/BlackMagic) 33×33×33 17/33/65 ASCII floats 0–1
IRIDAS 1D 1D Plain text .lut, LUT_1D_SIZE + DOMAIN_MIN/MAX keywords 1024-point curve 1024/2048/4096 ASCII floats 0–1
LUTher 3D Plain text .txt, FilmLight’s LUTher-utility-style header (# channels: c3, # entries) 17×17×17 (4913 = 17³) configurable ASCII integers, 10-bit (0–1023)
Nucoda 3D Plain text .cms, NUCODA_3D_CUBE keyword, otherwise cube-family syntax 16×16×16 16/17/33 ASCII floats 0–1
Panasonic 3D Plain text .vlt, “panasonic vlt” comment + LUT_3D_SIZE 17×17×17 17/33/65 ASCII integers, 12-bit-scale (0–4095)
Pandora 3D Plain text .mda, Pandora-specific header block (#HEADER/#type/in/out) 16-in / 65536-out (i.e. 16³ grid, 16-bit output range) configurable in/out depth ASCII integers, asymmetric in (12-bit-ish)/out (16-bit) scaling
Quantel 3D Plain text .txt, descriptive header (“max value 1023”, “vertices 17”, channel order notes) 17×17×17 17 fixed per this export ASCII integers, 10-bit (0–1023)
Quantel 65x65x65 3D Plain text .txt, same Quantel family but float-normalized 65×65×65 fixed at 65 (per format name) ASCII floats 0–1
Scratch 3D Plain text .3dl, Autodesk-mesh family, large grid 32×32×32 17/32/33/65 ASCII integers, 16-bit (0–65535)
Sony 3D Plain text .cms, Sony BVM-L proprietary “MESHSCMS” header 33×33×33 fixed mesh sizes per monitor model ASCII floats, can exceed 1.0 (extended/HDR range), upper-triangular coordinate order
Sony BVME 3D Plain text .lut, Sony BVM-E proprietary key/value header (#Color Space, #Gamma, #Grid Num) 33×33×33 fixed mesh sizes per monitor model ASCII floats 0–1

(LUT_1D and LUT_3D sizes above reflect what this specific export produced — Baselight lets you change resolution before export for most of these, within each format’s supported range.)



2. Family groupings — formats that are essentially the same thing wearing a different label


A. The “.cube” family (Resolve-style ASCII cube, floats 0–1, LUT_3D_SIZE keyword)

AMIRA, BMD, BlackMagic, IRIDAS, Truelight cube’s 3D portion are all the same underlying syntax — plain-text, LUT_3D_SIZE N, then N³ rows of R G B floats from 0–1. Differences in comment header text.

Any app that reads “Resolve cube” will read all of these interchangeably.


B. The Autodesk “.3dl” mesh family (ASCII integers, input-code-value header line)

Autodesk, Arri, DVS, Scratch, Autodesk Lustre, LUTher classic .3dl structure: a header line listing the input code values (e.g. 0 64 128 192...1023), then rows of output R G B integers. Differences: – Bit depth of the output values varies: Autodesk/Arri/DVS use 10–12-bit scale (0–1023/4095), Scratch uses full 16-bit (0–65535), LUTher uses 10-bit but with a plain entry-count header instead of a code-value line. – Arri explicitly lists 10-bit (0–1023) input code values rather than Autodesk’s 12-bit (0–4095) range. – Lustre adds extra non-standard tokens (3DMESH, Mesh, trailing LUT8 gamma block) on top of the same mesh body — a generic .3dl parser that doesn’t expect these tokens may choke on a Lustre file even though the numeric mesh itself is standard. This is the most fragmented family: same idea (integer mesh + code-value header), different bit depths and optional wrapper tokens.


C. The Quantel/DVS/Evertz “plain row” 1D & similar small-header families

DVS 1D, Colorfront 1D, Quantel (17³), Evertz all reduce to: minimal/no header, then rows of values. These are the most “fragile” formats — barely any metadata, so the receiving software must already know the grid size and scale convention.


D. XML process-list formats (chainable, ACES-adjacent)

CLF and Autodesk CTF are structurally the same idea: an XML <ProcessList> containing one or more typed nodes (<Range>, <Matrix>, <LUT1D>, <LUT3D>), each with explicit inBitDepth/outBitDepth and an <Array dim="..."> of values. Difference: CLF is the official, vendor-neutral AMPAS/ACES standard (xmlns="urn:AMPAS:CLF:v3.0") with mandatory InputDescriptor/OutputDescriptor color-space tags — built for interchange. CTF is Autodesk’s earlier, proprietary precursor format with similar structure but no formal interoperability guarantee outside Autodesk/FilmLight tools. CLF is the one you should prefer for archival/interchange; CTF is mainly for Flame/Lustre pipelines.


E. Camera/monitor manufacturer “branded” formats

Canon gamma 1D / Canon gamut 3D, Panasonic, Sony, Sony BVME, Arri, AMIRA are not really new mathematical formats — they’re cube/mesh/1D data wrapped in a header the manufacturer’s own software (or monitor firmware) expects to see, often with a specific grid size or coordinate convention (Sony’s “MESHCOORDINATES UPPER” is a non-trivial difference — it changes how the mesh is indexed, not just the wrapper). Treat these as “give the camera/monitor what its own ingest tool wants,” not as a distinct color science.


F. Proprietary/binary outliers

Barco (packed binary “LUT-CLUT”) and ICC (binary ICC color profile with embedded CLUT) are not human-readable text at all and aren’t really “LUT files” in the editable sense — they’re compiled binary containers meant only for their target device (Barco projector, ICC-aware color-managed app/OS).


G. Vendor-system “mesh in proprietary key-value” formats

Pandora, Nucoda, Quantel 65x65x65, CineSpace each invent their own small header syntax around an otherwise ordinary R/G/B float or integer grid. CineSpace stands out because it also supports independent pre-LUT 1D shaper curves per channel ahead of the 3D cube — a feature most of the others lack.



3. Compatibility — grading software & cameras

Format Native/best support in Notes on incompatibility
Resolve .cube family (AMIRA/BMD/BlackMagic/IRIDAS) DaVinci Resolve, Nuke, most modern NLEs/grading tools, OBS, FFmpeg BlackMagic’s 16³ cap is below what some apps expect as a minimum (some require ≥17³)
.3dl mesh family (Autodesk/Arri/DVS/Scratch/Lustre) Autodesk Flame/Lustre, Assimilate Scratch, many VFX pipelines Bit-depth mismatches: a tool expecting 12-bit code values may misread a 10-bit Arri file (clipped/scaled wrong) unless it auto-detects
CTF Autodesk Flame, FilmLight Not a recognized ACES/CLF interchange format outside those ecosystems
CLF Any ACES-compliant pipeline (Nuke, Resolve OCIO configs, Baselight, ACES-aware tools) Oldest grading tools without CLF/OCIO support won’t parse it
Canon gamma/gamut Canon Cine-Servo lenses/cameras’ onboard look tools, Canon RAW Development software Not generally importable into non-Canon camera firmware
Panasonic .vlt Panasonic VariCam/camera monitoring tools Specific to Panasonic ecosystem; integer scale may not auto-normalize elsewhere
Sony .cms / BVME .lut Sony BVM-L / BVM-E reference monitors Monitor-model-specific mesh size; not meant for general grading software ingestion
Barco Barco projection/calibration systems only Binary, vendor-locked, unusable elsewhere without Barco tools
ICC OS-level/Photoshop/print & color-managed display workflows Not a grading-tool LUT; describes a device profile, not a “look”
Evertz Evertz broadcast routers/converters with onboard LUT processing Not intended for offline grading software import
Pandora Pandora Pixel Engine systems Asymmetric in/out bit depth handling is unusual; generic LUT readers may misinterpret
Quantel / Quantel65 Quantel/Grass Valley finishing systems Legacy; many modern tools no longer have a native importer, would need manual reformat to .cube/.3dl
Nucoda Digital Vision Nucoda NUCODA_3D_CUBE keyword usually only recognized by Nucoda itself, though body is cube-compatible
CineSpace Assimilate Scratch, many grading tools that support .csp Pre-LUT shaper curves may be ignored by simpler .csp parsers, changing the result
Colorfront .1dlut/.3dmesh Colorfront Transkoder/On-Set Dailies No header at all — totally reliant on the receiving app already knowing the convention; not portable to a generic reader
LUTher FilmLight LUTher utility, and tools that accept generic .3dl-style triplets Header comment style is FilmLight-specific, but numeric body is standard 3D mesh