mholt / timeliner

All your digital life on a single timeline, stored locally -- DEPRECATED, SEE TIMELINIZE (link below)
https://timelinize.com
GNU Affero General Public License v3.0
3.56k stars 116 forks source link

Question : how does it handle duplicates? #39

Closed medyagh closed 5 years ago

medyagh commented 5 years ago

I couldn't find in the documentation, how does timeliner handle dupliates? let say if I have same photo on google photos and facebook, when it downloads it, can it detect duplicates or warn me?

or does it automatically keep one of them ? what happens in case of date conflict ? like one of them has a wrong date and one of them correct date.

mholt commented 5 years ago

It looks to see if the file is byte-for-byte equivalent: https://sourcegraph.com/github.com/mholt/timeliner@3284be867396f6f5d8e2c850d165b099f06541bd/-/blob/itemfiles.go#L187-188

If it is a duplicate, it will keep the original unless its checksum now mismatches, in which case it is replaced by the new download.

I doubt that the photos downloaded from Google Photos and Facebook, for example, will be byte-for-byte identical, even if you uploaded the same file to each of them. Doing other kinds of equivalence computations on images is extremely nuanced and challenging...

medyagh commented 5 years ago

so even if the second downloaded file has no time stamp, it will replace the one that does have a time stamp ?

mholt commented 5 years ago

Depends what you mean by "has no timestamp". File modification time, for example, is metadata stored by your file system externally to the file. If the timestamp is embedded, then then a mismatched timestamp between two files will result in a byte-for-byte mismatch as well, so it would not be considered a duplicate.

medyagh commented 5 years ago

@mholt by timestamp I meant EXIF Tags, let say I have a photo and EXIF date is 2011, and then I import the same photo form another source and the new second photo's EXIF date is 2018. (fb screws up the EXIF data if you upload an old photo sometimes)

Will this replace my photo with 2011 with 2018 ?

it would be a good feature, if it is not sure, to keep both copies, and gives the users Manual Judgment Feature, to manually decide which photo is which year. I say this, because I tried a similar attempt to do what this project does, a few years ago, and it was a failure, I ended up loosing a lot of Real Exif data. because a lot of social medias they screw up your EXIF data, once you download them back.