Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extract metadata from embedded ICC profiles. #3554

Merged
merged 1 commit into from
Sep 15, 2022

Conversation

lgritz
Copy link
Collaborator

@lgritz lgritz commented Sep 14, 2022

For a while, we have found embedded ICC profiles in TIFF, JPEG, JPEG-2000, PNG, and PSD (PhotoShop) files and store them in the metadata as a byte array with the name "ICCProfile".

With this patch, we further add the facility of parsing the binary ICC profile data to extract a number of other fields that we add to the ImageSpec metadata so that "oiiotool -info -v" or "iinfo 'v" will print this info.

Important caveat: You can read this for informational purposes, but changing it (e.g. with spec.attribute()) does not change the contents of the ICCProfile byte array, which is still the canonical ground truth of the profile. You have to replace the "ICCProfile" byte array to actually change the profile.

For a while, we have found embedded ICC profiles in TIFF, JPEG,
JPEG-2000, PNG, and PSD (PhotoShop) files and store them in the
metadata as a byte array with the name "ICCProfile".

With this patch, we further add the facility of parsing the binary ICC
profile data to extract a number of other fields that we add to the
ImageSpec metadata so that "oiiotool -info -v" or "iinfo 'v"
will print this info.

Important caveat: You can read this for informational purposes, but
changing it (e.g. with spec.attribute()) does not change the contents
of the ICCProfile byte array, which is still the canonical ground
truth of the profile. You have to replace the "ICCProfile" byte array
to actually change the profile.
@lgritz lgritz merged commit acbd1f3 into AcademySoftwareFoundation:master Sep 15, 2022
@lgritz lgritz deleted the lg-icc branch September 15, 2022 23:51
lgritz added a commit to lgritz/OpenImageIO that referenced this pull request Sep 21, 2022
…on#3554)

For a while, we have found embedded ICC profiles in TIFF, JPEG,
JPEG-2000, PNG, and PSD (PhotoShop) files and store them in the
metadata as a byte array with the name "ICCProfile".

With this patch, we further add the facility of parsing the binary ICC
profile data to extract a number of other fields that we add to the
ImageSpec metadata so that "oiiotool -info -v" or "iinfo 'v"
will print this info.

Important caveat: You can read this for informational purposes, but
changing it (e.g. with spec.attribute()) does not change the contents
of the ICCProfile byte array, which is still the canonical ground
truth of the profile. You have to replace the "ICCProfile" byte array
to actually change the profile.
lgritz added a commit to lgritz/OpenImageIO that referenced this pull request Oct 6, 2022
…on#3554)

For a while, we have found embedded ICC profiles in TIFF, JPEG,
JPEG-2000, PNG, and PSD (PhotoShop) files and store them in the
metadata as a byte array with the name "ICCProfile".

With this patch, we further add the facility of parsing the binary ICC
profile data to extract a number of other fields that we add to the
ImageSpec metadata so that "oiiotool -info -v" or "iinfo 'v"
will print this info.

Important caveat: You can read this for informational purposes, but
changing it (e.g. with spec.attribute()) does not change the contents
of the ICCProfile byte array, which is still the canonical ground
truth of the profile. You have to replace the "ICCProfile" byte array
to actually change the profile.
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