Commit Graph

93 Commits

Author SHA1 Message Date
Cédric Leporcq da764e94e6 Change date taken behaviour and use datetime format 2021-07-18 13:44:57 +02:00
Jaisen Mathai ed4b58aa0d
Add support for PNG photos. #361 (#383) 2020-10-09 00:55:14 -07:00
auenkind 7d77d55750
Add Quicktime:CreateDate to list of EXIF fields to check for video files (#375) 2020-04-26 16:18:23 -07:00
Evan Thomas b07d26c389 Fix issue that breaks elodie if coordinate from exiftool is empty #354 (#355) 2020-01-18 09:03:40 -08:00
Arian Maleki d8cee15f32 Optimize exiftool calls by adding an ExifTool singleton in pyexiftool library (#352)
This fix results in a 10x performance improvement [1] enabling a single exiftool subprocess to elimate spawing exiftool for each image.

Closes #350 #347 

[1] https://github.com/jmathai/elodie/issues/350#issuecomment-573412006
2020-01-13 23:04:33 -08:00
Jaisen Mathai 87e0420fba
Make Pillow optional due to external dependencies (#326)
Fixes #325.

`Pillow` has a number of external dependencies needed for installation. Since most media files are detected correctly with `imghdr` and `Pillow` is used as a fallback we can make it optional.

`Pillow` support was added in #320 to fix #281.
2019-07-14 17:36:09 -07:00
Jaisen Mathai 032e24b204 Use PIL(pillow) as a fallback mechanism image format identification and add HEIC support (#320)
Fixes #281 and #269

When elodie imports images, imghdr.what is used to determine the image
type. imghdr implementation won't support all JPEG variants. Because
of this, even for a valid JPEG file, imghdr.what returns None causing
elodie to skip the image during import.

This commit adds a fallback mechanism which uses PIL(pillow) library to
identify image formats. When imghdr fails, elodie uses pillow to
identify image format. When pillow is unavailable, it will be treated as
an invalid media file. Pillow is imported only when imghdr fails.
2019-07-10 04:05:32 -07:00
Jaisen Mathai 9ddb094ec7
Specify fully qualified path for exiftool program (#304) 2019-03-09 23:01:28 -08:00
Matt Carey 2e2c103cfb Fix issue #252 to not modify original source files on import (#272) 2019-02-04 14:20:39 -08:00
Vladimir Kuptsov 086c26c198 Add support for mts video files with H264:DateTimeOriginal create date field support (#295) 2019-01-24 07:34:02 +05:30
Jaisen Mathai 4cd91e9f2d
Add support for camera make and model in directory path #254 (#255) 2017-11-14 23:14:26 -08:00
Jaisen Mathai 15cfe61e03 Add tool to retroactively add OriginalFileName to all files in library #107 (#190) 2017-01-22 23:18:28 -08:00
Jaisen Mathai 0864f58a12 Add original file name methods to text and media class #186 (#187) 2017-01-22 00:19:44 -08:00
Jaisen Mathai a48a2edb62 Fix bug where zero value for latitude/longitude causes error gh-171 (#176) 2017-01-03 00:49:56 -08:00
Jaisen Mathai bf24f9689a gh-154 Add command to regenerate the hash database 2016-12-13 00:08:08 -08:00
Jaisen Mathai a1d3cb35fc Add log module and tests 2016-11-09 20:07:44 -08:00
Jaisen Mathai 55df0719e8 Merge pull request #131 from jmathai/increase-coverage
gh-40 Add tests to increase coverage in geolocation and photo module
2016-09-13 15:33:42 -07:00
Jaisen Mathai 71b1e9f0ed gh-40 Add tests to increase coverage in geolocation and photo module 2016-09-12 22:28:17 -07:00
Jaisen Mathai fe6121e43b Merge pull request #125 from jmathai/cr2-support-gh-124
gh-124 Add support for cr2 files
2016-09-04 16:20:39 -07:00
Jaisen Mathai 10e078baa5 gh-124 Add support for cr2 files 2016-09-04 16:15:11 -07:00
ZSerg ad1cbefb15 PEP8 fix 2016-08-22 09:10:45 +03:00
zserg af36de091e Python 3 compartibility added 2016-08-21 17:58:13 +03:00
Jaisen Mathai 21b7c9fad1 gh-120 Update EXIF date taken tags to use EXIF:CreateDate and EXIF:ModifyDate 2016-06-24 00:49:40 -04:00
Jaisen Mathai cbfd39a20e gh-119 Use XMP-xmpDM:Album instead of user defined tag with fallback support 2016-06-24 00:34:51 -04:00
Jaisen Mathai cb38bf5176 Fix numerous flake8 warnings 2016-06-24 00:31:58 -04:00
Jaisen Mathai 6114328f32 gh-62 [WIP] Remove pyexiv2 and avmetareadwrite dependency 2016-06-22 15:45:30 -04:00
Jaisen Mathai bd32c87b37
gh-113 Check for a file extension before doing a string in tuple conditional 2016-04-19 21:33:08 -07:00
Jaisen Mathai 479452b31c
gh-98 Check parsed metadata header in text file for type of dict 2016-04-19 21:09:27 -07:00
Jaisen Mathai e27fb951bc gh-98 Update calls to metadata to check that type is dict 2016-04-15 14:54:15 -07:00
Jaisen Mathai 1a1a50e656 gh-98 Check that metadata is dictionary before accessing it 2016-04-14 22:15:46 -07:00
Jaisen Mathai a0f744c082
gh-99 Add support for Sony ARW format 2016-04-12 23:47:41 -07:00
Jaisen Mathai ca04d3ca48
gh-32 Add `Creation Date (und-US)` to list of exif fields to read to support older versions of exiftool 2016-04-12 01:51:25 -07:00
Jaisen Mathai 5a82de0da0
gh-100 Add support for text files and associated tests 2016-04-12 00:06:22 -07:00
Jaisen Mathai 4c269b538a gh-92 Add support for RW2 (RAW) files 2016-03-23 09:41:22 -07:00
Jaisen Mathai a66fc7ca41 gh-31 Remove raise SkipTest for geolocation tests due to precision loss 2016-03-23 09:35:32 -07:00
Jaisen Mathai f234cb989d gh-93 Update media module to test for string before calling string functions 2016-03-23 00:25:27 -07:00
Jaisen Mathai ed127aa402 gh-93 Add tests for dng and nef files 2016-03-23 00:09:25 -07:00
Jaisen Mathai 510d81e142 Update Readme files to include links and information about GUI app 2016-03-20 00:46:31 -07:00
Jaisen Mathai 482f3d4de4 Fix syntax errors reported by flake8 2016-03-14 21:54:06 -07:00
Jaisen Mathai bd5a49d66c gh-89 Reapply album to video when updating EXIF via avmetareadwrite
Add failing test for when setting album then title reverts album
2016-03-14 21:39:40 -07:00
Craig Davison 1b1725fd8b Add .mpg and .mpeg to valid video file extensions 2016-02-14 17:41:13 +00:00
Jaisen Mathai e35e0ce471 gh-84 Added tests for invalid files with valid file extensions 2016-02-14 01:03:18 -08:00
zserg b686e7c228 LatLon removed 2016-02-12 22:22:26 +03:00
Jaisen Mathai 5204253ad2 gh-82 Fix notifications from flake8 and add mock module to requirements.txt 2016-02-11 15:24:42 -08:00
zserg 582d609023 windows timezone problem in filesystem test fixed 2016-01-27 18:28:18 +04:00
zserg 6e6f88c336 some fixes in subprocess.Popen args for windows/linux support 2016-01-27 15:54:56 +03:00
zserg 91e886163e core and photo_tests fixed 2016-01-26 22:01:05 +03:00
Jaisen Mathai c55b14e6c4 gh-74 Check for existing EXIF field before writing and create if needed. Add test case. 2016-01-12 20:48:58 -08:00
Nathan Ostgard cfe82012b0 gh-70 Adding Sphinx docs 2016-01-09 09:44:39 -08:00
Nathan Ostgard fa217e933b Added friendly errors when dependencies are not installed 2016-01-07 22:19:22 -08:00