Michael Mayer
8cfabe3205
Metadata: Cache ExifTool JSON by original file hash #755 #759
2020-12-30 13:33:47 +01:00
Michael Mayer
d430ae24ee
Indexer: Fix JSON sidecar creation using Exiftool
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-25 20:29:06 +01:00
Michael Mayer
837fc495f9
Metadata: Ignore invalid Exif GPS coordinates #736
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-23 18:43:52 +01:00
Michael Mayer
b433c630ed
Metadata: Fix negative time offsets in timestamps with zone #727
2020-12-22 09:43:19 +01:00
Michael Mayer
8859a23fd8
Metadata: Add iPhone X mov example JSON file #727
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-12-22 09:28:52 +01:00
Michael Mayer
2ed6880270
Metadata: Add support for CreationDate in ExifTool JSON files #727
2020-12-22 07:47:16 +01:00
Michael Mayer
bc535b6248
Metadata: Support time zones in ExifTool JSON files #727
2020-12-22 01:52:36 +01:00
Michael Mayer
473566f404
Videos: Enforce transcoding to MPEG-4 AVC #603
2020-12-12 17:20:31 +01:00
Michael Mayer
604f110277
Metadata: Add test case for bad Exif rotation #637
2020-12-05 00:46:54 +01:00
Michael Mayer
c4a94f8135
Indexer: Update changed Exif metadata #563
2020-12-04 22:06:23 +01:00
Michael Mayer
902aacece9
Indexer: Merge identical photos (stack files) #576
2020-12-04 19:51:51 +01:00
Michael Mayer
25e88bb1fc
Use mutex when extracting Exif metadata #600
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-11-21 23:43:53 +01:00
Michael Mayer
5daa689975
Backend: Format go imports
2020-11-21 18:08:41 +01:00
Theresa Gresch
67287a2d57
Backend: Add testdata
2020-10-27 09:30:20 +01:00
Theresa Gresch
c72ddbedcb
Backend: Add unit tests
2020-10-20 10:07:27 +02:00
Michael Mayer
5bafb17c4b
Metadata: Sanitize keywords, subject & artist #490
...
Signed-off-by: Michael Mayer <michael@lastzero.net>
2020-10-19 11:50:54 +02:00
Michael Mayer
2e51e84605
Backend: Index camera make & model for video files #506
2020-10-04 12:47:53 +02:00
Phil Davis
c90f19ec21
Fix minor typos
2020-10-01 16:00:43 +05:45
Theresa Gresch
c5b657ba05
Merge pull request #503 from nvllsvm/optimize
...
Optimize images
2020-09-30 10:48:40 +02:00
Theresa Gresch
f8e2b5800f
Backend: Add testdata for json files belonging to videos with information about camera
2020-09-23 16:36:55 +02:00
Andrew Rabert
443789a7e0
Optimize images
...
Used:
- `oxipng --zopfli --opt max`
- `jpegoptim --all-progressive`
2020-09-21 17:40:58 -04:00
Michael Mayer
b81b8e62cd
Backend: Add "qrf" to unwanted descriptions
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 03:54:40 +02:00
Michael Mayer
d38c84bbfb
Update trademark
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-09-21 02:48:22 +02:00
Michael Mayer
b39d660686
Exif: Fallback to SearchFileAndExtractExif for broken JPEG files #469
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-28 09:27:25 +02:00
Theresa Gresch
68d490c975
Backend: Add new stopword
2020-08-12 19:14:01 +02:00
Michael Mayer
3ffe74a7d6
Metadata: Revert tests after upgrading go-exif #431
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-07 10:38:40 +02:00
Michael Mayer
b232d374ad
Metadata: Update Exif tests and dependencies #431
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-08-06 10:55:15 +02:00
Michael Mayer
91a1a1ca27
Backend: Ignore image unique IDs that are not standard UUIDs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-23 15:34:20 +02:00
Michael Mayer
d20d9c50dd
Metadata: Upgrade go-exif v3
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-21 10:52:39 +02:00
Michael Mayer
4cda0fd9a8
Backend: Adjust metadata log levels
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 23:29:14 +02:00
Michael Mayer
a01e54070d
Index: Skip duplicates and handle files with wrong extension #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 19:48:31 +02:00
Michael Mayer
5839bc9c79
Metadata: Add test jpeg with "slice bounds out of range" error
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-20 13:53:08 +02:00
Michael Mayer
138dabd0c8
Metadata: Use mime type to determine file format and exif parser #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-19 16:39:43 +02:00
Michael Mayer
31647943d9
Add file timestamp map for faster indexing #391
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 12:47:12 +02:00
Michael Mayer
716aa082d8
Metadata: Upgrade to go-exif v3
...
See https://github.com/dsoprea/go-exif/issues/43
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 09:41:37 +02:00
Michael Mayer
4c72df7610
Metadata: Upgrade go-exif v2
...
See https://github.com/dsoprea/go-exif/issues/43
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-17 09:28:31 +02:00
Michael Mayer
08d89bfb1d
Metadata: Add *.heic parser and upgrade go-exif
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 20:32:45 +02:00
Michael Mayer
0e5fe5eb43
Index image projection and add panorama filter
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-16 13:02:48 +02:00
Michael Mayer
f484dd004c
Add Huawei P20 and P20 Pro #399
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-15 09:18:58 +02:00
Michael Mayer
8989c987a2
Unstack all types, except primary and sidecar files #394
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-14 11:00:49 +02:00
Michael Mayer
c14985095b
Backend: Improve description string sanitation and auto add keywords
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:16:09 +02:00
Michael Mayer
849225e1ea
Backend: Tweak db connection params and add stack to panic logs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-13 15:16:09 +02:00
Michael Mayer
8fd381860a
Backend: Refactor Google Photos metadata parsing
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 20:47:52 +02:00
Michael Mayer
99eaae0816
Backend: Import JSON metadata from Google Photos
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 16:46:29 +02:00
Michael Mayer
711522db68
Metadata: Add patterns to unwanted descriptions list
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-11 10:19:06 +02:00
Theresa Gresch
b3487fa3b3
Backend: Add unit tests for internal/meta
2020-07-08 10:13:11 +02:00
Michael Mayer
cbcd9e5cea
Metadata: Normalize exif date strings to fix broken files
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 17:11:36 +02:00
Michael Mayer
76c545c542
Backend: Shorten exif gps log message
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-02 10:07:26 +02:00
Michael Mayer
a158736463
Backend: Improve logging
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-02 09:44:45 +02:00
Michael Mayer
636b56008b
Backend: Add info to metadata logs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-02 08:26:15 +02:00
Michael Mayer
4721f9d044
Backend: Improve metadata logs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-02 08:16:27 +02:00
Michael Mayer
1c72f88e8c
Backend: Improve logging #369
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 13:16:55 +02:00
Michael Mayer
bfd73932e5
Improve UX and title generation from file names
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-29 11:10:24 +02:00
Michael Mayer
2b2cd8ed23
Backend: Sanitize metadata titles and descriptions
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-27 14:15:25 +02:00
Michael Mayer
1a0398d01f
Docs: Fix indentation
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-23 13:53:11 +02:00
Michael Mayer
4154715512
Docs: Update package information and copyright
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-23 13:44:14 +02:00
Michael Mayer
0032951b36
Update links to docs.photoprism.org
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-07 13:14:20 +02:00
Michael Mayer
ca8a8466d4
Indexing bug fixes and UX improvements
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-06-04 14:56:27 +02:00
Michael Mayer
f510ac994c
XMP: Group files based on DocumentID and Instance ID #335
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-27 13:40:21 +02:00
Michael Mayer
e61dda495a
Add PHOTOPRISM_SIDECAR_HIDDEN and PHOTOPRISM_JPEG_HIDDEN flags #311
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-19 11:00:17 +02:00
Michael Mayer
7f2b13bf71
Backend: Use actual instead of original dimensions from metadata #304
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-18 17:38:14 +02:00
Michael Mayer
a2d5da7afd
Entity: Fix query in File.AllFilesMissing()
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-18 16:36:24 +02:00
Michael Mayer
7121c09d66
Upgrade go-exif and go-jpeg-image-structure; see #302 , #304 , #305 and #295
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-18 08:44:40 +02:00
Michael Mayer
46f3f12da8
Upgrade go-exif, go-jpeg-image-structure and go-png-image-structure
...
See #302 , #304 , #305 and #295
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-17 11:05:57 +02:00
Michael Mayer
abfd2fa79d
Videos: Improve indexing and searching #312
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-16 17:07:44 +02:00
Michael Mayer
ba524d05d6
Metadata: Add DateTimeDigitized as fallback value for TakenAt #304
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-16 09:27:21 +02:00
Michael Mayer
9937304d0c
Metadata: Improve date and error handling; see #302 , #304 , #305 and #295
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-15 15:29:56 +02:00
Michael Mayer
fbc2cfaf22
Backend: Add test for (resized) JPEG with GPS issues #295
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-15 12:45:42 +02:00
Michael Mayer
a16f00f359
Backend: Add support for DateTime in Exif metadata #304
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-15 11:15:15 +02:00
Michael Mayer
71fb67adb2
Videos: Support H.264/AVC .mov files
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-15 09:39:32 +02:00
Michael Mayer
5a3014c3d9
Backend: Swap width and height to fix rotation when reading from JSON
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-14 14:28:23 +02:00
Michael Mayer
2045e3d770
Index and show video metadata #17
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-14 11:57:26 +02:00
Michael Mayer
cbeaab64e7
Backend: Remove story flag code
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-13 21:22:49 +02:00
Michael Mayer
5f408f4f76
Backend: Read from JSON sidecar files (created by exiftool) #4 #243
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-13 20:53:15 +02:00
Michael Mayer
6c6ea0ac3d
Support GPSVersionID 2.0.0.0 #295
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-06 08:03:57 +02:00
Michael Mayer
faa2074e69
Backend: Refactor exif parsing
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-29 16:42:06 +02:00
Michael Mayer
1e05670501
Increase NSFW detector threshold
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-29 16:12:09 +02:00
Michael Mayer
882340a14c
Refactor string clipping in frontend & backend
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 14:31:33 +02:00
Michael Mayer
4a6f1700c1
Exif: Shorten exposure time #227
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 12:17:49 +02:00
Michael Mayer
3edf30ab3a
Reduce location precision to float32
...
This is the practical limit of commercial data and should be more than enough for our use case while ideally providing better index performance.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-26 11:41:54 +02:00
Michael Mayer
f07064c2c3
Refresh titles, labels and locations
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-18 23:20:54 +02:00
Michael Mayer
4deca6b1ed
Metadata: Exclude null bytes from Exif #252
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-21 02:15:07 +01:00
Michael Mayer
c13e39e6d1
Backend: Add fields to Meta.Data struct #243
...
Added: Subject, Keywords, Comment, CameraOwner and CameraSerial
Todo: Read values from Exif.Image.XPTitle, XPSubject, XPKeywords,...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-07 14:40:06 +01:00
Michael Mayer
e1ad0684b3
Backend: Add "exif" prefix to log message #219
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 18:50:57 +01:00
Michael Mayer
54d33e2a43
Shorten unique IDs
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-23 09:50:43 +01:00
Theresa Gresch
6b1babe0ba
Improve test coverage ( #206 )
...
* #83 Add NewLocation() function
* #83 Add NewPlace() function
* #83 Add tests for maps/places/location
* #83 Add tests for maps/location
* #83 Add tests for internal/config
* #83 Add test for meta/exif
* #83 Add testfiles
2020-01-19 13:27:15 +01:00
Michael Mayer
9055581690
Backend: Re-add imports removed by make fmt (why?)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 20:05:29 +01:00
Michael Mayer
09bac902d0
Code clean-up (make fmt)
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 19:59:25 +01:00
Michael Mayer
bba914878a
Backend: Remove go-xmp import
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-14 03:41:40 +01:00
Dustin Oprea
9b1bf83abe
Optimize EXIF integration ( #192 )
...
Use JPEG- and PNG-specific parsing if possible and brute-force search
only for others.
- Adopted go-exif/v2.
Fixes #172
2020-01-14 01:47:26 +01:00
Michael Mayer
4a223f133f
Backend: Rename metadata example files #68
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:37:05 +01:00
Michael Mayer
4c8e7b6b15
Backend: Revert change in exif.go #68
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:19:06 +01:00
Michael Mayer
c978fa00f1
Backend: Proof-of-concept for indexing XMP files #68
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:14:10 +01:00
Michael Mayer
21451e8263
Backend: Code refactoring and clean-up #172
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-08 09:27:39 +01:00
Michael Mayer
b21ad9bece
Backend: Rename MediaFile.Exif() to MetaData() #172
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 18:13:53 +01:00
Michael Mayer
c147eee30f
Backend: Add stub for meta package #172
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 17:36:49 +01:00