ExifIFD:ComponentsConfiguration default values when creating ExifIFD

Started by v16p20, January 18, 2021, 01:11:37 PM

Previous topic - Next topic

v16p20

I have a question about understanding the default values for ExifIFD:ComponentsConfiguration when creating the ExifIFD group.

The following default values are specified in the DC-008-Translation-2019-E (Page 44): 4 5 6 0 for RGB uncompressed and 1 2 3 0 (other cases).

I have tested the creation of the ExifIFD with default values for a TIFF and JPEG and it seems that the values 1 2 3 0 are always used.

Shouldn't the RGB uncompressed value be written for an uncompressed TIFF and the other value for a JPEG, for example? Or is that unnecessary? Or what else does RGB uncompressed mean?

exiftool -s -G1 test.tif

[ExifTool]      ExifToolVersion                 : 12.15
[System]        FileName                        : test.tif
[System]        Directory                       : .
[System]        FileSize                        : 220 bytes
[System]        FileModifyDate                  : 2021:01:18 18:52:43+01:00
[System]        FileAccessDate                  : 2021:01:18 18:52:43+01:00
[System]        FileCreateDate                  : 2021:01:18 17:59:05+01:00
[System]        FilePermissions                 : rw-rw-rw-
[File]          FileType                        : TIFF
[File]          FileTypeExtension               : tif
[File]          MIMEType                        : image/tiff
[File]          ExifByteOrder                   : Little-endian (Intel, II)
[IFD0]          SubfileType                     : Full-resolution image
[IFD0]          ImageWidth                      : 1
[IFD0]          ImageHeight                     : 1
[IFD0]          BitsPerSample                   : 8 8 8
[IFD0]          Compression                     : Uncompressed
[IFD0]          PhotometricInterpretation       : RGB
[IFD0]          StripOffsets                    : 216
[IFD0]          Orientation                     : Horizontal (normal)
[IFD0]          SamplesPerPixel                 : 3
[IFD0]          RowsPerStrip                    : 1
[IFD0]          StripByteCounts                 : 3
[IFD0]          XResolution                     : 300
[IFD0]          YResolution                     : 300
[IFD0]          PlanarConfiguration             : Chunky
[IFD0]          ResolutionUnit                  : inches
[Composite]     ImageSize                       : 1x1
[Composite]     Megapixels                      : 0.000001


exiftool -v3 "-ExifIFD:DateTimeOriginal<filecreatedate" test.tif

======== test.tif
Setting new values from test.tif
Writing ExifIFD:DateTimeOriginal
Rewriting test.tif...
  Editing tags in: ExifIFD IFD0 TIFF
  Creating tags in: ExifIFD IFD0 TIFF
  FileType = TIFF
  FileTypeExtension = TIF
  MIMEType = image/tiff
  Rewriting IFD0
  Creating ExifIFD
    + ExifIFD:ExifVersion = '0232' (mandatory)
    + ExifIFD:DateTimeOriginal = '2021:01:18 17:59:05'
    + ExifIFD:ComponentsConfiguration = '1 2 3 0' (mandatory)
    + ExifIFD:FlashpixVersion = '0100' (mandatory)
    + ExifIFD:ColorSpace = '65535' (mandatory)


   
Thanks

Phil Harvey

You're probably right.  I should look into this.

The whole idea of mandatory tags is a bit unfortunate.  I don't like that idea the ExifTool is forced to write something that you didn't tell it to.

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

v16p20

Sorry Phil, but I checked the forum before I asked my question, but I missed that the topic had come up on github recently <https://github.com/exiftool/exiftool/issues/53>.

In addition to what has already been said there, I found the LOC page on TIFF <https://www.loc.gov/preservation/digital/formats/content/tiff_tags.shtml>.

There only ExifVersion, FlashpixVersion and ColorSpace are noted as mandatory, so maybe even one of those unpopular tags (i. e. ComponentsConfiguration) can be omitted.