Skip to content

feat: expose XMP-GPano panorama tags - #82

Merged
ildyria merged 2 commits into
masterfrom
add-pano-support
Oct 3, 2026
Merged

ildyria merged 2 commits into
masterfrom
add-pano-support

Conversation

@ildyria

@ildyria ildyria commented Oct 3, 2026

Copy link
Copy Markdown
Member

Map XMP-GPano photo sphere tags in the Exiftool and ImageMagick mappers so consumers can detect equirectangular panoramas through Exif getters instead of raw data.

New getters: getProjectionType (lower-cased), getUsePanoramaViewer (nullable bool), getFullPanoWidthPixels, getFullPanoHeightPixels, getCroppedAreaLeftPixels, getCroppedAreaTopPixels, getCroppedAreaImageWidthPixels, getCroppedAreaImageHeightPixels.

Invalid boolean or non-numeric values are skipped. Native and FFprobe are unchanged.

Also migrate the test suite from PHPUnit 9 to PHPUnit 11.5, 12 or 13 depending on the PHP version, using attributes, static data providers and the current mock API.

Map XMP-GPano photo sphere tags in the Exiftool and ImageMagick mappers so consumers can detect equirectangular panoramas through Exif getters instead of raw data.

New getters: getProjectionType (lower-cased), getUsePanoramaViewer (nullable bool), getFullPanoWidthPixels, getFullPanoHeightPixels, getCroppedAreaLeftPixels, getCroppedAreaTopPixels, getCroppedAreaImageWidthPixels, getCroppedAreaImageHeightPixels.

Invalid boolean or non-numeric values are skipped. Native and FFprobe are unchanged.

Also migrate the test suite from PHPUnit 9 to PHPUnit 11.5, 12 or 13 depending on the PHP version, using attributes, static data providers and the current mock API.
Map the EXIF exposure bias (ExposureBiasValue / ExposureCompensation) and white balance mode in the Native, Exiftool and ImageMagick mappers.

New getters: getExposureBias (EV as float, rounded to 2 decimals so all readers agree) and getWhiteBalance (EXIF code, 0 auto, 1 manual). Unreadable values are skipped.

Add getWhiteBalanceTemperature (Kelvin), read by the Exiftool mapper only from maker notes (Canon, Apple, Sony, Fujifilm, Panasonic, Pentax) with Lightroom XMP-crs as fallback, measured values first. Other adapters return false.
@ildyria
ildyria merged commit 483a982 into master Oct 3, 2026
27 of 29 checks passed
@ildyria
ildyria deleted the add-pano-support branch October 3, 2026 20:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant