imsync is a console application that puts collections of image and movie files and related files on a common time basis by adjusting their file system modification timestamps appropriately, and can geotag image and movie files based on location information read from GPX files.

imsync is written in the Perl 5 language and uses the Image::Exiftool module.


Summary user documentation is available by executing imsync --help. Detailed user documentation is available by executing imsync --man or here.

Obtaining imsync as a User

If Perl is installed on your system already, then you can obtain imsync via cpanm Image::Synchronize and then the imsync application should be available in the default installation location of perl scripts on your system. Try executing imsync --help. If you get help text describing the application, then all is well. If you get an error message that says that imsync is not known, then likely the default location of perl script on your system isn't yet included in your PATH environment variable. Execute perl -V:bin to find the location of the Perl executable on your system. The default installation location of perl script is likely at ../site/bin relative to the location of the Perl executable.

For Users on Microsoft Windows

If you cannot use cpanm or don't have Perl installed, and if you're on Microsoft Windows, then you can download from the current website. The imsync.exe executable is packed in a zip file because many browsers don't like it when you download executables directly. Checksums of the zip file:

MD5 90905bc84c58ea5ce1f4fba9b142b932
SHA-1 f3ee689e11ce756a209dd4e767b23803f0333173

I created the executable from the Perl script using the PAR Packager (pp). The executable includes the Perl script, all necessary Perl modules, and a Perl interpreter. A new version of imsync takes a few seconds to start up the first time because it is then unpacking the script, modules, and interpreter to a temporary cache on your system (possibly %TEMP%\par-HASH1\cache-HASH2 where HASH1 and HASH2 stand for hexadecimal hash values that are unique for each user [HASH1] and application version [HASH2]). Subsequent runs reuse the cache, so then there is no more delay for unpacking.

Obtaining imsync as a Developer

The software is available at


You can contact me via GitHub or metacpan, or find my email address at the end of the output of imsync --help.

Louis Strous, 2018