Observation: Can't find table Image::Exiftool::FLIR::RawData

Started by herb, July 25, 2020, 07:21:51 AM

Previous topic - Next topic

herb

Hello Phil, hello Oliver,

On my Windows system I have installed both the original release of ExifTool v12.01 and also the version released by Oliver Betz.

Doing some tests/experiments with -xmp-dwc tags and because of a "wrong or unuasual command" I have the following observation:

(1) with Oliver Betz version the command
E:\Exiftool\Ppl64-Exiftool-12.01\exiftool.exe -xmp-dwc:all=2020:01:03 test.jpg
gives the following output:
Subroutine GetImageType redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1313.
Subroutine UnescapeFLIR redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1342.
Subroutine ProcessFLIRText redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1356.
Subroutine ProcessMeasInfo redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1397.
Subroutine ProcessFLIR redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1455.
Subroutine ProcessFPF redefined at E:\Exiftool\Ppl64-Exiftool-12.01\exiftool_files/lib/Image/Exiftool/FLIR.pm line 1561.
Can't find table Image::Exiftool::FLIR::RawData
    1 image files updated


(2) with Phil's official version the command
C:\Fototools\Exiftool\exiftool.exe -xmp-dwc:all=2020:01:03 test.jpg
gives as output
Can't find table Image::Exiftool::FLIR::RawData
    1 image files updated


Thanks for your comments in advance
Best regards
herb

obetz

although I'm not familiar with "Subroutine x redefined" errors in Perl, it might be helpful to have a test image.

Oliver

herb

Hello Oliver,

thanks for your reply.
The "problem" does not depend on any image.
You can reproduce it e.g. with
exiftool.exe -xmp-dwc:all=2020:01:03 test.xmp
where the file test.xmp is beeing created.
It only depends on the "not very clever"  input (which I did by accident):  -xmp-dwc:all=value

I am sure, it is caused by Exiftool itself, but I am astonished that I see only "Can't find table Image::Exiftool::FLIR::RawData" using Phil's release.

Best regards
herb

obetz

thanks for the clarification.

I'll wait for Phil's comment or hint before I investigate this.

Oliver

Phil Harvey

This message

Can't find table Image::Exiftool::FLIR::RawData

Indicates a corrupted installation.  See note c here.

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

herb

Hello Phil,

Because of your comment I re-installed the Windows version of Exiftool v12.01.
I deleted all files in directory given in PAR_GLOBAL_TEMP variable and then I replaced Exiftool.exe.

This newly installed Exiftool also gives the observed error: but only in case of "not very clever"  input -xmp-dwc:all=value

Best regards
herb

Phil Harvey

Hi Herb,

Thanks.  I'll have to check this the next time I fire up the (yuk) Windows virtual machine, because it works for me on the Mac:

> exiftool -xmp-dwc:all=2020:01:03 a.jpg
    1 image files updated


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

obetz

Quote from: herb on July 26, 2020, 06:03:11 AM
exiftool.exe -xmp-dwc:all=2020:01:03 test.xmp

this command gives no "Subroutine x redefined" messages but simply "1 image files updated" on my PC with "my" ExifTool 11.99 and 12.01 32 and 64 bit and also not with Phil's version.

Something might be different on your system, e.g. environment variables affecting Perl.

Oliver

herb

Hello Phil, hello obetz,

In addition just 2 cents:
I get the error message: "Can't find table Image::Exiftool::FLIR::RawData" also for the following command
exiftool.exe -time:all+=0:1 test.jpg
which for me is a "realistic" command.

Best regards
herb

Phil Harvey

Hi Herb,

Since the installation isn't corrupted, the only way I can see this happening is if there is another version of ExifTool around that is conflicting with the version you are running.  Try these two commands:

exiftool -ver

exiftool -list -xxx:all

The first will tell you if there is an obvious conflict with another version of ExifTool libraries.  The second command will load all tables and give errors for any ones that are missing (and return an "[empty list]" message because there are no tags in the xxx group).

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

herb

Hello Phil,

thank you very much that you are looking again into this "problem".
But I not only have to say thanks, I also have to say sorry, because I forgot to tell you that I also use a config-file.

So I repeated the test and the "strange message" does only appear in case of the config file contains the following
%Image::ExifTool::UserDefined = (
    'Image::Exiftool::FLIR::RawData' => {
        RawThermalImageTiff => {
           Desire => {
               0 => 'RawThermalImage',
               1 => 'RawThermalImageType',
           },
           GROUPS => { 0 => 'APP1', 1 => 'FLIR', 2 => 'Preview' },
           ValueConv => sub {
                my $val = shift;
                my $image;
                if ( $val[0] =~ 'TIFF' ) { $image = $val[0]; }
                return $image;
            },
        },


I do not remember from where I got this piece of code, but I used it when I tested my application to export embedded images.

I regret that I did not give all details at the very beginning.
Thanks again and best regards
herb

Phil Harvey

Ah.  The Composite tag you are defining should go in the Image::ExifTool::Composite table, not Image::ExifTool::FLIR::RawData.  But your errors are because you specified "Image::Exiftool::FLIR::RawData", not "Image::ExifTool::FLIR::RawData" (capital "T").

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

herb

Hello Phil,

thanks for your help and sorry again, that I remembered the config file so late.

Best regards
herb