Le programme simple en ligne de commande jhead est idéal pour cela. C'est totalement gratuit (et open source) et facilement disponible pour Windows, Mac ou Linux. Si vous n’êtes pas habitué aux programmes en ligne de commande, c’est un programme plutôt non intimidant, car il n’a pas grand chose à faire. Vous devez formater les dates correctement, mais cela est facile à suivre en suivant les exemples (voir la documentation que j'ai incluse ci-dessous).
Il a une simple commande de réglage par heure, mais pour les gros changements, il a aussi une ancienne syntaxe -> nouvelle qui calcule la différence pour vous (vous n'avez donc pas à vous soucier des années bissextiles, etc.). Si vous avez toujours le mauvais appareil photo sous la main, je le trouve très pratique pour prendre une photo d’une horloge numérique (synchronisée dans le temps) - puis, prenez la date affichée sur la photo comme "newdate" et le date dans les métadonnées en tant que "olddate" pour les paramètres ci-dessous.
De la documentation:
-ta<+|-><timediff>
Adjust time stored in the Exif header by h:mm backwards or for-
wards. Useful when having taken pictures with the wrong time
set on the camera, such as after travelling across time zones,
or when daylight savings time has changed.
This option changes all Date/time fields in the exif header,
including "DateTimeOriginal" (tag 0x9003) and "DateTimeDigi-
tized" (tag 0x9004).
-da<newdate>-<olddate>
Works like -ta, but for specifying large date offsets, to be
used when fixing dates from cameras where the date was set
incorrectly, such as having date and time reset by battery
removal on some cameras
Because different months and years have different numbers of
days in them, a simple offset for months, days, years would lead
to unexpected results at times. The time offset is thus speci-
fied as a difference between two dates, so that jhead can figure
out exactly how many days the timestamp needs to be adjusted by,
including leap years and daylight savings time changes. The
dates are specified as yyyy:mm:dd. For sub-day adjustments, a
time of day can also be included, by specifying yyyy:nn:dd/hh:mm
or yyyy:mm:dd/hh:mm:ss
Examples:
Year on camera was set to 2005 instead of 2004 for pictures
taken in April
jhead -da2004:03:01-2005:03:01
Default camera date is 2002:01:01, and date was reset on
2005:05:29 at 11:21 am
jhead -da2005:05:29/11:21-2002:01:01