-
Notifications
You must be signed in to change notification settings - Fork 603
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
[HELP] "Damaged" JPGs in Photoshop #4342
Comments
Is this a recent change, or has it always been like this? Do you know which versions of OIIO exhibit the problem? And do you know which metadata specifically seems to be damaged? |
I've noticed it for a little while, a few months, but can't say if it's a problem going back many versions. I'm using OpenImageIO 2.5.11.0 and Photoshop 24.7.4. Here's the --info output for a problematic oiiotool JPG and the same file exported from Affinity which PS is fine with. I notice a few differences in the metadata they share, but not sure which ones might be significant:
|
Did a little more testing. The Photoshop issue arises when converting a PNG to JPG using oiiotool. For example, with But if I reprocess the file with |
I don't suppose you could send me the three files A.png, B.jpg, C.jpg so I can directly compare them to understand what's being added or deleted? You can send directly to me privately if there's any issue with not being able to make them public. (Or, alternately, if you can reproduce the problem with black images or something else that has no IP issues, that's fine, too.) |
I'm on vacation with little internet connectivity, but I looked at those files (B.jpg and C.jpg) and there is almost no difference! I only spotted two things, not sure why either one would be a problem for photoshop, but I just posted two PRs related to them that maybe you could try on your end and see if either helps:
If you can possibly apply these patches one by one on your end and give a spin, letting me know if either one helps the problem, that might give me a clue about what to try next. |
Thanks! I'll test these out next week and let you know the results. |
Great, let me know how it goes. I don't necessarily have a lot of confidence that it'll fix it, but they address the only two obvious things I saw different about B and C, so maybe that will help? |
Well, I feel like I'm losing my mind here! I tried the patches, but no change. However, in the process I did discover that it seems to matter how many characters are in the filename. Converting to a.jpg, bad, aa.jpg, good, aaa.jpg bad, aaaa.jpg good. I've been using an older version of Photoshop to avoid the AI stuff, but I did install the latest one today to test. It has the same problem. I attached a video showing what's happening. Bizarre! bizarre.mp4 |
@lgritz I was building the latest version of OpenImageIO and remembered this issue. I did some more digging and it turns out the source of the problem is the |
Aha! That was just the clue I needed! I had assumed that all the fields described by the IPTC spec that were of type "string" could be... you know... any length. Because there's no excuse for a computer to impose any particular limitation. But it had escaped my notice that the IPTC spec gives maximum lengths for the different string fields, and this one is 32 chars. Ugh. OK, now I feel like I have a handle on how to fix this. Thanks for following up. Stay tuned. |
Fix proposed in #4568 |
I first noticed this issue using Gaffer and since Gaffer uses OIIO for image writing I checked oiiotool and found the same behavior. What happens is that Photoshop objects to JPGs exported with oiiotool: "This document contains Adobe Photoshop data which appears to be damaged." You can just go ahead and click OK and it opens fine. Affinity Photo or any other picture viewer are fine too, so this is mostly just about the inconvenience of having to click the warning in PS. Is there a workaround, maybe an oiiotool parameter? Thanks!
The text was updated successfully, but these errors were encountered: