Strange warning in print output ( -printFormat )

Started by Andi, August 13, 2021, 10:29:01 AM

Previous topic - Next topic

Andi

Mac OS 10.14, ExifTool 12.30, bash --version "version 3.2.57(1)-release (x86_64-apple-darwin18)"

1. To start with this, ExifTool v 12.0 hat a severe bug, where date formatting (-d) was completely ignored and I could not rename my files properly. It seems that former version (I don't know which, it seems it was update automatically) didn't have this bug because I am using the following script already for a long time. Anyway, date formatting works properly again in v 12.30.

2. Now a strange warning shows up with many JPEGs, while non of the corresponding DNGs show this warning. To test my command I prepend -p to it:

exiftool -d ~/Pictures/eigene/chronologisch/"%Y/%Y-%m-%d" -p '-filename<$DateTimeOriginal/$FileName' *.jpg

Output:

...
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg
Warning: PrintConv ExposureTime: Argument "undef" isn't numeric in numeric lt (<) - IMG_20201207_123805.jpg
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-14/IMG_20201214_180113.jpg
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-14/IMG_20201214_180126.jpg
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-14/IMG_20201214_180142.jpg
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-14/IMG_20201214_180708.jpg
...


What does this warning on some JPEGs mean?

StarGeek

Can you share one of the files that returns this message?
* Did you read FAQ #3 and use the command listed there?
* Please use the Code button for exiftool code/output.
 
* Please include your OS, Exiftool version, and type of file you're processing (MP4, JPG, etc).

Andi

I know that the JPEGs that my Samsung Galaxy S7 (back) camera produces have wrong exposure times. But this error is not shown with a regular exiftool -G overview:

exiftool -G /Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg
Only regular output.

exiftool -d ~/Pictures/eigene/chronologisch/"%Y/%Y-%m-%d" -p '-filename<$DateTimeOriginal/$FileName' /Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg
-filename</Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg
Warning: PrintConv ExposureTime: Argument "undef" isn't numeric in numeric lt (<) - /Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg


I would expect this warning in the regular output but with -p it is unnecessary here because I don't print the ExposureValue tag.

Phil Harvey

Check out the first Warning when -validate is used:

> exiftool ~/Desktop/out.jpg -validate -warning -a
Validate                        : 13 Warnings (10 minor)
Warning                         : [minor] Undefined value for ExifIFD:ExposureTime
Warning                         : Non-standard format (string) for ExifIFD 0x9000 ExifVersion
Warning                         : Non-standard format (int32u) for ExifIFD 0x9208 LightSource
Warning                         : Non-standard format (string) for ExifIFD 0x9286 UserComment
Warning                         : [minor] Unknown APP4 segment
Warning                         : [minor] Unknown APP11 segment
Warning                         : [minor] IFD0 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD0 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011a XResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011b YResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x0128 ResolutionUnit


- Phil

Edit:  Ah, I see.  You want the warning in the normal output, but not with -p.  I'll have to look in more detail to see why this is happening.
...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 ($).

Andi

Quote from: Phil Harvey on August 13, 2021, 12:52:46 PM
Check out the first Warning when -validate is used:

...

- Phil

The strange thing is that this JPEG was produced by ExifTool because I had stripped some info to upload the file. This is comparison of original and copy with stripped copyright and GPS:

exiftool  -validate -warning -a /Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg ~/Desktop/out.jpg
======== /Users/andi/Pictures/eigene/chronologisch/2020/2020-12-07/IMG_20201207_123805.jpg
Validate                        : 49 Warnings (17 minor)
Warning                         : Entries in IFD0 are out of order
Warning                         : Tag ID 0x0101 ImageHeight out of sequence in IFD0
Warning                         : Entries in GPS are out of order
Warning                         : Tag ID 0x0001 GPSLatitudeRef out of sequence in GPS
Warning                         : Tag ID 0x0000 GPSVersionID out of sequence in GPS
Warning                         : Tag ID 0x0004 GPSLongitude out of sequence in GPS
Warning                         : [minor] Odd offset for GPS tag 0x0011 GPSImgDirection
Warning                         : Tag ID 0x0011 GPSImgDirection out of sequence in GPS
Warning                         : Tag ID 0x0010 GPSImgDirectionRef out of sequence in GPS
Warning                         : Tag ID 0x011b YResolution out of sequence in IFD0
Warning                         : [minor] Odd offset for IFD0 tag 0x011a XResolution
Warning                         : Tag ID 0x011a XResolution out of sequence in IFD0
Warning                         : Tag ID 0x0100 ImageWidth out of sequence in IFD0
Warning                         : [minor] Odd offset for IFD0 tag 0x0110 Model
Warning                         : Non-standard format (string) for ExifIFD 0x9000 ExifVersion
Warning                         : Entries in ExifIFD are out of order
Warning                         : Tag ID 0x8822 ExposureProgram out of sequence in ExifIFD
Warning                         : Tag ID 0x9205 MaxApertureValue out of sequence in ExifIFD
Warning                         : Tag ID 0x9203 BrightnessValue out of sequence in ExifIFD
Warning                         : Tag ID 0x9003 DateTimeOriginal out of sequence in ExifIFD
Warning                         : Tag ID 0x9291 SubSecTimeOriginal out of sequence in ExifIFD
Warning                         : Tag ID 0xa005 InteropOffset out of sequence in ExifIFD
Warning                         : [minor] Odd offset for ExifIFD tag 0x829a ExposureTime
Warning                         : Tag ID 0x829a ExposureTime out of sequence in ExifIFD
Warning                         : [minor] Undefined value for ExifIFD:ExposureTime
Warning                         : [minor] Odd offset for ExifIFD tag 0x9290 SubSecTime
Warning                         : Tag ID 0x829d FNumber out of sequence in ExifIFD
Warning                         : Non-standard format (string) for ExifIFD 0x9286 UserComment
Warning                         : Tag ID 0x8827 ISO out of sequence in ExifIFD
Warning                         : [minor] Odd offset for ExifIFD tag 0x9292 SubSecTimeDigitized
Warning                         : Tag ID 0x9292 SubSecTimeDigitized out of sequence in ExifIFD
Warning                         : Tag ID 0x9004 CreateDate out of sequence in ExifIFD
Warning                         : Non-standard format (int32u) for ExifIFD 0x9208 LightSource
Warning                         : Tag ID 0x9208 LightSource out of sequence in ExifIFD
Warning                         : Tag ID 0x0128 ResolutionUnit out of sequence in IFD0
Warning                         : [minor] Odd offset for IFD1 tag 0x8298 Copyright
Warning                         : Entries in IFD1 are out of order
Warning                         : Tag ID 0x0112 Orientation out of sequence in IFD1
Warning                         : Tag ID 0x0103 Compression out of sequence in IFD1
Warning                         : Tag ID 0x0100 ImageWidth out of sequence in IFD1
Warning                         : [minor] Unknown APP4 segment
Warning                         : [minor] Unknown APP11 segment
Warning                         : [minor] IFD0 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD0 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011a XResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011b YResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x0128 ResolutionUnit
======== /Users/andi/Desktop/out.jpg
Validate                        : 13 Warnings (10 minor)
Warning                         : [minor] Undefined value for ExifIFD:ExposureTime
Warning                         : Non-standard format (string) for ExifIFD 0x9000 ExifVersion
Warning                         : Non-standard format (int32u) for ExifIFD 0x9208 LightSource
Warning                         : Non-standard format (string) for ExifIFD 0x9286 UserComment
Warning                         : [minor] Unknown APP4 segment
Warning                         : [minor] Unknown APP11 segment
Warning                         : [minor] IFD0 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD0 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0100 ImageWidth is not allowed in JPEG
Warning                         : [minor] IFD1 tag 0x0101 ImageHeight is not allowed in JPEG
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011a XResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x011b YResolution
Warning                         : [minor] Missing required JPEG IFD1 tag 0x0128 ResolutionUnit
    2 image files read


There are still some warnings left and ExifTool could at least sanitize some of this.

Quote
Edit:  Ah, I see.  You want the warning in the normal output, but not with -p.  I'll have to look in more detail to see why this is happening.

Thanks. This is really of minor concern, because it's just a warning. I was more surprised by the bug in v 12.0 described above ...

Phil Harvey

I didn't read the comment about the v12.0 problem.  You will have to give a specific example because as far as I know v12.0 worked fine with -d.  There must be something else going on here.

Also, ExifTool doesn't automatically update unless you are using some external updating tool that I don't know about.

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