Sony AF Micro Adjust settings

Started by gregglee, July 26, 2012, 06:38:32 PM

Previous topic - Next topic

gregglee

Has this been located in metadata? 

The only three cameras that have this are A900, A850 and A77.  Camera menu settings contains AF micro adjust on/off, and if on, a setting range of -20 to +20 for whatever lens is mounted.  Camera seems to remember setting based on lens type.  A77 only also seems to read TC tag, since it saves a separate setting for lens plus TC combination.

Phil Harvey

I don't think this information has yet been decoded.  If you or someone else could provide samples with a range of settings I could check to see if I can find this information. (mail samples to philharvey66 at gmail.com)

- 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 ($).

gregglee

Just to confirm, do you mean several different micro-adjust settings using the same lens?  And also one with ma set to off.  That would make ma settings the only variable.     

Phil Harvey

Hi Greg,

Yes, this is what I meant.

Jos Roost has responded by email and decoded this for the A850 and A900, so I only need samples for the A77 now.

- 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 ($).

gregglee

#4
The only MA tags I find in sony tags are

Sony CameraInfo2 Tags
Camera information for other DSLR and NEX models.
    Index1   Tag Name    Writable   Values / Notes
    0    LensSpec    undef[8]    
    304    AFMicroAdjValue    int8u    
    305    AFMicroAdjMode    int8u
            0 = Off
            128 = On, no adjustment
            129 = On, adjustment applied

On A900 values for 304 matches what I set for MA value.
But 305 doesn't match this listing.

I have not found 128 at all   
I have found 129 and in that case 304 was 0 (=value not set?)
But other values of 305 also have a value of 0 for 304. 

I also found 305 of  130, 131, 132 and 133.

The only potential pattern I see right now is that the value of 305 changes depending on whether 304 value is 0 or not 0.

Values of 305 vary by lens but not uniquely.  Two lens may have the same values.   


Note: I  have permanently set non-zero values for only 3 lenses.  But I tested several others before returning the setting to 0. 

I used exiftoolgui to check these values.

edit, add:
I also found a case where the 305 value was different 3 months later for same lens and MA value.  129 in July, 132 in Oct

PH Edit: improve formatting of CameraInfo2 table

JosR

I did some additional testing with multiple lenses on the A850, and found that the following appears to be the case:
    0x0131 => { #12
        Name => 'AFMicroAdjMode',
        PrintConv => {
            0 => 'Off, no adjustments registered',
            1 => 'Off, 1 adjustment registered',
            2 => 'Off, 2 adjustments registered',
            3 => 'Off, 3 adjustments registered',
            ...
            128 => 'On, no adjustment registered',
            129 => 'On, 1 adjustment registered',
            130 => 'On, 2 adjustments registered',
            131 => 'On, 3 adjustments registered',
            .....
        },

In the above, "adjustment" means "non-zero adjustment", as zero-adjustments are apparently not counted by the camera as a "registered adjustment"
In total the camera can register adjustments for 30 lenses.
AFMicroAdjValue will always indicate the value (if any) registered for the lens mounted.

@gregglee: would the above match your findings ?

Phil Harvey

Jos,

Great, thanks!

How about this?:

    0x0131 => { #12
        Name => 'AFMicroAdj',
        Condition => '$$self{Model} =~ /^DSLR-A(850|900)\b/',
        Mask => 0x80,
        PrintConv => {
            0x00 => 'Off',
            0x80 => 'On',
        },
    },
    305.1 => { #12 (0x131)
        Name => 'AFMicroAdjRegisteredLenses',
        Notes => 'number of registered lenses with a non-zero AFMicroAdjValue',
        Condition => '$$self{Model} =~ /^DSLR-A(850|900)\b/',
        Mask => 0x7f,
    },


Also, for the benefit of others reading this thread I should mention that I have just received a full set of AFMicroAdj images for the A77, and ExifTool 9.04 will decode AFMicroAdjValue for the A77 too.

- 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 ($).

JosR

Hi Phil,
Yes, that works fine.
Interesting coding (305.1) ...

Phil Harvey

Yes.  I would have preferred 0x0131.1, but hex numbers can't have decimals for obvious reasons.

This feature of ExifTool allows bit fields in binary data blocks to be isolated into separate tags, which is useful at times.

- 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 ($).

gregglee

Quote from: JosR on October 29, 2012, 03:44:42 PM

@gregglee: would the above match your findings ?
I was mostly looking a images taken over the past several months, rather running new tests.   That explains why the number was changing at different times.  Based on memory of when I made different tests and final adjustments, images from the first lens I adjusted said 129 at that time.  Up to 5 at once (133) also seems correct.