LensOptimizer data added into CanonVRD

Started by BogdanH, April 01, 2012, 08:25:34 AM

Previous topic - Next topic

BogdanH

Hi Phil,
The latest Canon DPP (shipped with EOD 5Dmk3) has new option named "Digital Lens Optimizer" (DLO). To use it, user must download relevant file (depending on lens being used), which is about 10Mbytes for my lens. File is automatically saved into Canon DPP install directory, so it can be used for particular lens again and again -I'm telling this, so you have an impression what's about.
Now, if DLO is applied, then some data is written into CR2, which increases 450D file from about 19Mb to about 38Mb! -note, that downloaded DLO info file is only about 10Mb.
I've also tried on CR2 file from 5Dmk3, where DLO info file (for EF24-105) is about 51Mb. This time, CR2 file increased from 24Mb to 46Mb.

After examining CR2 file, I can see, that if DLO is applied, DLO data is written into CanonVRD section. I have no idea how CanonVRD is organized, so I've tried:
exiftool -s -CanonVRD:all -U TestVRD.CR2
Now, if DLO is not applied, then ExifTool listst CanonVRD tags as expected. However, if DLO is applied, then ExifTool runs endlessly (ok, I've waited only a minute or so, before I manually terminated ExifTool).

Well, I'm not that much interested on what DLO data inside CanonVRD contains (pure binary data, I assume). What would be nice to have is the info, if DLO data exists (was applied) or not.
Btw. I have checked CR2 files with Hex viewer (binary comparison/differences) and I am confident, that DLO data is inside CanonVRD (between both "CANON OPTIONAL DATA" strings) and that nothing else is changed inside CR2 file.

Any idea about further steps?

Bogdan

Phil Harvey

Hi Bogdan,

Thanks for this report.

The problem is likely that the DLO information is stored in a numerical format that ExifTool is trying to decode, which could take a long time for such a large chunk of data.  I will have to add support for this new information and override the decoding to fix this.  I will do this as soon as possible and release a new version of ExifTool to fix this, hopefully within a few days.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Phil Harvey

Bogdan,

I am having trouble running the new version of DPP.  Would it be possible for you to upload an edited CR2 to your account on this system so I can take a look?  Thanks.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

BogdanH

Hi Phil,
I have just uploaded three files into "my directory". Files were touched with DPP (v3.11.10.0) only -no ExifTool.

File A: Opened in DPP, nothing changed, just saved (so you can see what DPP writes there by default).
File B: File A opened and only DLO applied. DLO setting slider goes from 0-100; here 50 (default) was applied and saved.
File C: File B opened and DLO option removed (option unchecked).

One would expect, that File A and B would have the same size, which isn't the case -that's why I've uploaded File C too.

Bogdan

Phil Harvey

Thanks!  It was a good idea to include file C.  The -U option definitely would be very slow for file B since it generates 8 million tags. :P  This will be fixed in 8.86.

The DLO information is stored in a JPEG-like format.  16 MB as you mentioned.  Interesting.  I can now decode this information from your image:

DLO On                          : Yes
DLO Data Length                 : 16548204
DLO Setting                     : 50
DLO Version                     : 1.0.0.0
DLO Data                        : (Binary data 16548204 bytes, use -b option to extract)


- Phil

P.S. I have removed the files from your directory.
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

BogdanH