I needed to coordinate photos from three cameras with three different clock settings - one was correct, one an hour ahead, and one 2 hours ahead. I used similar code, but many pictures failed to update with a "Maker offsets" warning. The FixBase => '' option fixed that, and below is the code:
use strict; use warnings; use Image::ExifTool; chdir("C:/Users/hbm/pictures/trip") or die("Unable to chdir: $!"); my $tool = Image::ExifTool->new(); $tool -> Options(FixBase => ''); # "best guess" for fixing Make +r offsets for my $jpg (glob("*.JPG")) { $tool -> ExtractInfo($jpg); my $camera = $tool->GetValue("Model"); next if $camera =~ /KODAK/i; my $shift = ($camera =~ /SD1200/i) ? "2:00" : "1:00"; $tool -> SetNewValue(DateTimeOriginal => $shift, Shift => -1); my $success = $tool->WriteInfo($jpg); print "$jpg Update failed: ", $tool->GetValue('Error'), "\n" if +!$success; }
In reply to Re: (Solved) Change "Date Picture Taken" with Image::ExifTool
by hbm
in thread (Solved) Change "Date Picture Taken" with Image::ExifTool
by Limbic~Region
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |