jmathai / elodie

An EXIF-based photo assistant, organizer and workflow automation tool.
https://bit.ly/introducing-elodie
Apache License 2.0
1.27k stars 139 forks source link

Timezone -- UTC offset #293

Open nexus41 opened 5 years ago

nexus41 commented 5 years ago

Hello, when I import photos (taken by my iPhone both in MacOS High Sierra and in Windows 10) the file are renamed using UTC datetime and not the date and time corresponding to the timezone where photos have been taken. I cannot find any comment about this behaviour in the documentation, so I suppose this is the default. Is possible to set datetime according to the timezone where photos have been taken?

Here the details: C:\Users\aless\elodie>python elodie.py import --debug --destination="C:\sorted" "C:\unsorted\IMG_7107.JPG" C:\unsorted\IMG_7107.JPG -> C:\sorted\2018-11-Nov\Rovigo\2018-11-13_10-29-36-img_7107.jpg****** SUMMARY ******

nexus41 commented 5 years ago

Sorry I mistake!

Here the details:

elodie C:\Users\aless\elodie>python elodie.py import --debug --destination="C:\sorted" "C:\unsorted\IMG_7107.JPG" C:\unsorted\IMG_7107.JPG -> C:\sorted\2018-11-Nov\Rovigo\2018-11-13_10-29-36-img_7107.jpg ****** SUMMARY ****** Metric Count -------- ------- Success 1 Error 0

exiftool on source photo C:\unsorted>exiftool -D -f -G -s "C:\unsorted\IMG_7107.JPG" > exif_unsorted.txt exif_unsorted.txt

exiftool on destination photo c:\sorted\2018-11-Nov\Rovigo>exiftool -D -f -G -s "c:\sorted\2018-11-Nov\Rovigo\2018-11-13_10-29-36-img_7107.jpg" > exif_sorted.txt exif_sorted.txt

Winodws properties screenshot of source photo win_unsorted

Winodws properties screenshot of destination photo win_sorted

In conclusion: 2018-11-13_10-29-36-img_7107.jpg should be 2018-11-13_11-29-36-img_7107.jpg

jmathai commented 5 years ago

Are you suggesting having a configuration variable or command line parameter which passes in the time zone?

One issue I see there is that your library's final layout will be dependent on the parameters passed in when importing.

I haven't found a good way to deal with time zones, TBH. In a previous project of mine there were a couple threads discussing this at length.

https://github.com/photo/frontend/issues/321 https://github.com/photo/frontend/issues/872

I think using geolocation to determine the timezone is the most automated way to do this that preserves the "file system is a representation of the file contents" goal of the project.

nexus41 commented 5 years ago

Hi jmathai, thank you for your reply.

I took the photo on November 13, 2018 at 11:29 am in Rovigo, Italy. In November the time offset in Italy is UTC+1 (https://www.timeanddate.com/time/zone/italy).

I took the photo at 11:29 (Italian time) and, as you can see from my previous post, in Windows 10 image properties, "Date taken" is 11:29.

Running EXIFTOOL both on source photo and on destination photo I get:

[EXIF] 306 ModifyDate : 2018:11:13 11:29:36 [EXIF] 36867 DateTimeOriginal : 2018:11:13 11:29:36 [EXIF] 36868 CreateDate : 2018:11:13 11:29:36 [Composite] - SubSecCreateDate : 2018:11:13 11:29:36.641 [Composite] - SubSecDateTimeOriginal : 2018:11:13 11:29:36.641

and

[EXIF] 7 GPSTimeStamp : 10:29:36 [Composite] - GPSDateTime : 2018:11:13 10:29:36Z

In my opinion, elodie (as default) should rename the photo based on the time I took the photo, i.e. italian time (11:29) and not on UTC (10:29).

Currently I have: Filename: 2018-11-13_10-29-36-img_7107.jpg Winodws 10 image properties, "Date taken": 11:29. (10-29 in Filename and 11:29 in image properties <-- Filename is not logic, I took the photo at 11:29)

Using local time I would have: Filename: 2018-11-13_11-29-36-img_7107.jpg Winodws 10 image properties, "Date taken": 11:29. (11-29 in Filename and 11:29 in image properties)

So my suggestions are:

a) rename the photos using the local time as default (using for example exif tag "CreateDate" or "DateTimeOriginal");

b) have a configuration variable or command line parameter to let the user choose between local time and UTC.

ordinarygulp commented 4 years ago

Yes this is bothering me as well. File creation date is correct, while Elodie changes the date to 'the future' (I'm in CST (UTC -6))