different jpeg header before and after exiftool manipulation

Started by gigel, March 28, 2016, 07:02:04 PM

Previous topic - Next topic

gigel

Hello,

I'm trying to modify the Dates in a jpeg file, but after processing with exiftool, the file headers appears to receive a much deeper change than a simple date modification. Steps performed and results, below:

root@homerouter:/var/www/html# exiftool -ver
10.13
root@homerouter:/var/www/html# dpkg -l |grep exiftool
ii  libimage-exiftool-perl                10.13-1                              all         
root@homerouter:/var/www/html# cat /etc/debian_version
8.3
root@homerouter:/var/www/html# uname -a
Linux homerouter.domain.tld 4.4.0-trunk-amd64 #1 SMP Debian 4.4.1-1~exp1 (2016-02-10) x86_64 GNU/Linux

exiftool -wm w -AllDates-=3 _3090291.JPG
exiftool -htmlDump -a -u _3090291.JPG > /var/www/html/exiftooled.html
exiftool -htmlDump -a -u _3090291.JPG_original > /var/www/html/original.html

sample difference:

root@homerouter:/var/www/html# (links -dump original.html|grep -iv offset|cut -c 74-|sort|uniq|grep FlashExposureComp); echo "-------------------------"; (links -dump exiftooled.html|grep -iv offset|cut -c 74-|sort|uniq|grep FlashExposureComp)

CameraSettingsIFD-17 FlashExposureComp                                                     
FlashExposureComp value [unused 4 bytes]                                                   
-------------------------
AFFineTuneAdj value FlashExposureComp value
CameraSettingsIFD-17 FlashExposureComp


I've got a big list of differences (the above it the output limited to the FlashExposureComp value as an example, but if I strip the grep command the difference is big)

All I want is to modify the timestamp by three hours and I'm worried about all these modifications as I want to preserve as much as possible from original headers. I assumed this was a simple operation as replacing some bits but the results appears to contradict my assumption.

I've read https://exiftool.org/faq.html#Q13 but the practical output differences still does not convince me that everything is preserved after running exiftool.

Sample image: https://lh3.googleusercontent.com/E5aO4x0QW2XF4P-G38qemcBLLwKs-97Ce9aKXFfFFz3W2eNlMDVsYovRWpC2q0FW_thCCbc8KSqHGhMrkiM9rzN9

Phil Harvey

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

gigel

sorry for insisting, but are these two dumps really identical?

original http://paste.lug.ro/131579

modified http://paste.lug.ro/131580

Phil Harvey

From FAQ 13:

    When ExifTool writes an image, the meta information may be restructured in such a
    way that it takes less space than in the original file, or so that some tags are stored
    at different offsets in the file.


Isn't this the difference that you are seeing?

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