Files
lightcraft/crates/engine
tecari0andClaude Opus 5 6c2ff558d9 #2284: read the Exif and XMP items of HEIF files
A HEIC imported with no capture time. `container::embedded` knew JPEG, PNG,
WebP, TIFF-based files, RAF and CR3, but no ISO base media still image, so
every HEIC produced an empty `Embedded` and carried no Exif at all (#1233).
With no date in the file and none in a sidecar, the import falls back to the
file's modification time, which LightCraft writes as UTC: a photo taken at
13:00 in UTC-5 was catalogued as 18:00, and one taken after 19:00 local time
landed in the next day's folder.

`meta::heif` reads the `meta` box's item information (`iinf`) and item
location (`iloc`) boxes and returns the `Exif` item's TIFF stream and the XMP
`mime` item. It parses the container only, so it is in every build and the
HEVC decoder stays behind the `heif` feature. The box walker `cr3` already
had is now shared instead of written twice.

Camera, lens, ISO, GPS and keywords come through with the date. HEIF puts
orientation in the container and its Exif tag only mirrors that, so the probe
still takes the orientation from the container; a test checks that a HEIC
whose Exif says 6 imports upright.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-10-18 20:57:13 -07:00
..
2026-10-15 03:40:15 -04:00
2026-10-14 23:23:18 -04:00