Fujifilm X Series Digital Teleconverter

Started by greybeard, September 17, 2024, 01:03:41 PM

Previous topic - Next topic

greybeard

X100V Digital Teleconverter

Starting with the X100V (and also applying to the 40MP cameras such as X100VI, X-H2 and X-T5) the digital tele converter metadata are applied to RAF files for raw+jpg or raw only.

The raw data store the complete sensor data but the metadata indicate that the digital teleconverter was used and show the location of the zoomed area.

The metadata tags are stored in the RAF header (the Exiftool [RAF] group).

The newer cameras with the 40MP sensor also include teleconverter metadata in the maker notes.

0x117 is set to 1 if the zoom is in use (and zero otherwise) - suggested name RawZoomIndicator
0x118 is set to the top left of the zoom area relative to 0x111 (RawImageCroppedSize) - suggested name RawZoomTopLeft
0x119 is set the zoom size also relative to 0x111 - suggested name RawZoomSize

0x118 and 0x119 are both 4 byte values decoded in the same way as 0x111 i.e. 2 UInt16 values with height followed by width.

0x119 will be identical to 0x111 if the zoom hasn't been used

Possible Perl code:

    0x117 => {
        Name => 'RawZoomIndicator',
        Format => 'int32u',
        Count => 1,
        PrintConv => '$val=~tr/ /:/; $val',
    },
    0x118 => {
        Name => 'RawZoomTopLeft',
        Format => 'int16u',
        Count => 2,
        Notes => 'relative to 0x111',
        ValueConv => 'my @v=reverse split(" ",$val);"@v"', # reverse to show width first
        PrintConv => '$val=~tr/ /x/; $val',
    },
    0x119 => {
        Name => 'RawZoomSize',
        Format => 'int16u',
        Count => 2,
        Notes => 'relative to 0x111',
        ValueConv => 'my @v=reverse split(" ",$val);"@v"', # reverse to show width first
        PrintConv => '$val=~tr/ /x/; $val',
    },

Phil Harvey

Sorry for the delay in responding.

Thanks.  I'll add this but my X100V samples don't contain these tags so I can't test it.

One question:  Why the "tr/ /:/" for RawZoomIndicator?  I don't see how there could be a space character to translate.  How about a name like RawZoomActive and like a lookup like 0="No", 1="Yes"?

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

greybeard

Quote from: Phil Harvey on September 23, 2024, 09:17:28 PMThanks.  I'll add this but my X100V samples don't contain these tags so I can't test it.

These tags also apply to the X100VI, X-T5 and X-H2. The difference is that the X100V does not have the Crop Indicator, Crop Top Left and Crop Size in the maker notes. Appently the X100V also interpolates to create full size jpegs whereas the cameras with the new sensor don't.

I'm not sure exactly how these two sets of tags relate.

I have used the new raw tags to calculate the correct crop area to be applied from within a Lightroom Classic plug-in for X100V, X100VI, X-T5 and X-H2 and the crop area appears to match the camera created jpegs.

QuoteOne question:  Why the "tr/ /:/" for RawZoomIndicator?  I don't see how there could be a space character to translate.  How about a name like RawZoomActive and like a lookup like 0="No", 1="Yes"?

I just copied the code from other tags in that section and welcome your corrections.