mirror of
https://github.com/storytold/lightcraft.git
synced 2026-11-02 06:27:53 -06:00
The default camera look is fitted to the raw's embedded JPEG, decoded in the colour space embedded_preview_color_space reports. That function parsed the file as TIFF, which fails on a CR3 (ISO BMFF), so a CR3 shot in Adobe RGB was read as sRGB and the look was fitted to a desaturated target. A CR2 shot in Adobe RGB parses, but its EXIF says ColorSpace Uncalibrated with InteropIndex "R98" rather than Adobe RGB's "R03", so it was read as sRGB too. Read the Canon maker-note ColorSpace (0x00b4: 1 = sRGB, 2 = Adobe RGB): for a CR3 from its CMT3 block, else an EXIF ColorSpace of sRGB from CMT2; for a CR2 from the EXIF maker note, before the EXIF fallback. LOOK_VERSION (13) and RENDER_CACHE_VERSION (71) are bumped so cached smart previews and thumbnails are rebuilt with the new look. Smart previews of preview-only raws now follow LOOK_VERSION too, since their proxy is the embedded JPEG read in the declared colour space. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014ti8KemZbjE2ZgHgV1q1BM