Author |
Topic |
|
am24
30 Posts |
Posted - Apr 28 2015 : 10:51:37
|
Figured out a weird behavior:
When I open and save a JPEG image with ImageEn, I can no longer open it in Google NIK collection, for example NIK Color Efex Pro (NIK crashes in that case).
Steps to reproduce:
1. Open JPG in NIK Color Efex Pro --> everything works 2. Open JPG in ImageEn, eg. with Demo program FullApps\PhotoEn\ImageEx.exe 3. Save JPG with FullApps\PhotoEn\ImageEx.exe 4. Open JPG in NIK Color Efex Pro --> CRASH !!! 5. Remove all EXIF information from JPG (using EXIFTOOL) 6. Open JPG in NIK Color Efex Pro --> everything works
Seems that ImageEn does something with the EXIF data that let Google NIK collection crash.
Tested with the latest version ImageEn 6.0, Delphi XE5, latest version of Google NIK collection. I observed that NIK crash over months, but was not able to figure out the relationship to ImageEn until today.
This also happens with the PhotoEn3 demo app that can be downloaded directly from your server. http://www.imageen.com/cgi-bin/dlredirect.asp?demo=run/FullApps/PhotoEn3/ImageEx.exe |
|
xequte
38616 Posts |
Posted - Apr 28 2015 : 17:09:19
|
Hi
Does it still happen if you call ImageEnView1.IO.Params.ResetEXIF; or .ResetInfo before saving?
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
am24
30 Posts |
Posted - Apr 29 2015 : 03:20:58
|
Using "ResetEXIF" or "ResetInfo" fixes that problem.
Further things I could now figure out: - It only happens with JPEG and TIF images that were exported from Lightroom or CaptureOne - It does not happen with images exported from DXO or with OOC JPEGs
So the current status is: - Images exported from Lightroom or CaptureOne can be opened in NIK without problems - These images saved with ImageEn causes a NIK crash - These images saved with ImageEn (+ ResetEXIF/ResetInfo) can be opened in NIK without problems
This is fully reproducible on my PC. |
|
|
xequte
38616 Posts |
Posted - Apr 30 2015 : 02:49:48
|
OK, now compare the EXIF in the images before and after saved by ImageEn. Try resetting those changes in code before the save and see if NIK still crashes.
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
am24
30 Posts |
Posted - Apr 30 2015 : 05:50:24
|
Exif values seem to be equal, but I could now figure out the root of that problem.
It happens when Exif_Model is less than 5 characters. In that case, ImageEn uses WriteMiniString which seems to cause that problem. I could already implement a workaround here.
BTW, it didn't happen with DXO and OOC JPGs because the Exif_Model contained trailing spaces which were stripped by Lightroom and C1 (so WriteMiniString was only used in combination with LR and C1). |
|
|
xequte
38616 Posts |
Posted - Apr 30 2015 : 15:56:38
|
Hi
I cannot see any indication in the standard or elsewhere that there should be a minimum length imposed on the Exif Model tag. So I have to assume it is an issue in the NIK software.
Nigel Xequte Software www.xequte.com nigel@xequte.com
|
|
|
am24
30 Posts |
Posted - May 01 2015 : 04:19:00
|
quote: I cannot see any indication in the standard or elsewhere that there should be a minimum length imposed on the Exif Model tag. So I have to assume it is an issue in the NIK software.
It's of course not a matter of minimum length, it also works with JPGs from Lightroom where the Exif_Model length is exactly 4 characters. Probably NIK as a bit more sensitive than other software, but it only happens in combination with ImageEn.
Further tests show that it only fails with ImageEn when Exif_Model has a length of exactly 4 characters, it works correctly with less or more than 4 characters. Probably because of a missing null character when length(ss)=sizeof(dword) in TIETIFFIFDWriter.WriteMiniString?
OK, whether NIK or ImageEn, it's easy to work around that incompatibility so I think we can close that issue here. |
|
|
|
Topic |
|