Hello,
I'm using exiftool to extract metadata from various set of images, and I'm facing an Out of memory problem when using -b switch. I have an example of a specific TIFF file, which contains a 300Mb IFD0:ImageSourceData binary tag. I know I'm not interested in this specific tag, so I use -x IFD0:ImageSourceData. But when using this switch in combination with -b, it seems that ExifTool extracts the tag in memory but just skips it in the output.
I'd like to know if it's possible to skip the binary data extraction step in memory (thus avoiding the out of memory problem) when there's an explicit -x switch for a specific tag.
ExifTool version used : 8.60 (reproduced on 8.65)
OS : Win 2003 32 bits
Command line : %PERL%\bin\perl.exe exiftool/ExifTool MyImage.tiff -x IFD0:Image -b -w! %f.txt
Output : Out of memory exception. Process grows to 1Gb in "Private Data" (shown in process explorer) and crashes
Output/behavior expected : excluded tags are not extracted in memory when using -b
I can provide an example file, but it's a more than 500Mb file, so contact me directly if you need it.
Best regards,
Gilles QUERRET
Hi Gilles,
Thanks for this detailed request. ExifTool currently loads all binary data tags when -b is used, even if they were excluded.
But it makes sense to not load the excluded tags. I will implement this in ExifTool 8.69.
- Phil
Thanks for your quick reply ! I'll try it when released and give you my feedback.
Gilles
The next release is still a ways away. But since you use the pure Perl version it is easy to prepare a 8.69 pre-release (https://exiftool.org/Image-ExifTool-8.69p.tar.gz) for you to try.
- Phil
Works correcty on this test file, thanks for extremely quick fix ! We still have Gigabytes of images, we'll keep you posted on the behavior of this version.
Gilles QUERRET