Expand description
EXIF / XMP metadata extraction for local files.
Uses nom-exif — pure-Rust, no native dependencies. Reads metadata from
JPEG, PNG, TIFF, WebP, HEIF / HEIC, JXL and MP4 / MOV. RAW formats fall
through as “no metadata”; that case is hidden in the UI rather than shown
as an error.
Results are cached on disk keyed by (mtime, size) so re-opening the
lightbox on the same file doesn’t re-parse a multi-megabyte image.
EXIF / XMP extraction via nom-exif. Disk-cached by (mtime, size).
Structs§
- Cache
Entry 🔒 - Cache
Key 🔒 - Local
Exif - Mirrors remote
ExifInfoso the renderer is source-agnostic.
Functions§
- cache_
key 🔒 - cache_
root - Cache directory for EXIF entries; lives under the same XDG cache root used by the thumbnail cache.
- datetime_
rfc3339 🔒 - Combine DateTimeOriginal with OffsetTimeOriginal (when present) into a stable RFC3339 string.
- exposure_
time 🔒 - Display exposure as “1/250” rather than the raw rational.
- integer_
u32 🔒 - load_
or_ extract - Disk-cached
read_exif; key is(mtime_nanos, size). - parse_
offset 🔒 - Validate a raw “+HH:MM” / “-HH:MM” offset string from OffsetTimeOriginal.
- rational_
f64 🔒 - read_
exif - Returns
Noneif the file has no recognisable metadata. - text 🔒