Michael Mayer
495c2afb01
Metadata: Remove debug log from data.go
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-05-26 15:04:58 +02:00
theresa
dc2a261884
Tests: Add unit tests for new exiftool tags
2022-05-25 17:26:26 +02:00
theresa
3b3276b53e
Metadata: Read additional exiftool tags Headline, By-line, CopyrightNotice and Caption-Abstract
2022-05-25 17:25:40 +02:00
Michael Mayer
53d814e62e
Metadata: Prefer SubSecDateTimeOriginal and SubSecCreateDate #2320
2022-05-17 02:03:50 +02:00
Michael Mayer
54700766df
Index: Truncate mod time to full seconds #2257
2022-05-17 01:04:26 +02:00
Michael Mayer
e59041e93f
Backend: Update Go package descriptions to improve generated docs
...
see https://pkg.go.dev/github.com/photoprism/photoprism
2022-04-25 09:53:55 +02:00
Michael Mayer
73be4df8f8
CLI/Docs: Improve photoprism show ... subcommands #2247 #2252 #2169
2022-04-16 19:52:53 +02:00
Michael Mayer
92e6c4fe1e
Download: Add Disabled, Originals, MediaRaw & MediaSidecar Flags #2234
...
Extends DownloadSettings with 4 additional options:
- Name: File name pattern for downloaded files (existed)
- Disabled: Disables downloads
- Originals: Only download files stored in "originals" folder
- MediaRaw: Include RAW image files
- MediaSidecar: Include metadata sidecar files (JSON, XMP, YAML)
2022-04-15 09:42:07 +02:00
Michael Mayer
e4999db92e
Metadata: Add IPTC 2021.1 JSON/YAML Schemas incl. test files #1143 #2252
2022-04-14 12:18:05 +02:00
Michael Mayer
0096243240
Metadata: Report supported Exiftool, XMP, and Dublin Core tags #2252
...
Replaces the --no-wrap flag with --md in all "photoprism show ..."
subcommands, as this is easier to understand. See also #2247 .
Unused code was opportunistically removed along the way.
2022-04-14 10:49:56 +02:00
Michael Mayer
82d61d1f93
File Types: Add experimental support for animated GIFs #590 #2207
...
Animated GIFs are transcoded to AVC because it is much smaller and
thus also suitable for long/large animations. In addition, this commit
adds support for more metadata fields such as frame rate, number of
frames, file capture timestamp (unix milliseconds), media type,
and software version. Support for SVG files can later be implemented in
a similar way.
2022-04-13 22:17:59 +02:00
Michael Mayer
68ba289d6c
CLI: Add "photoprism show config/formats" subcommands
...
Replaces "photoprism config", which could only display
current configuration values. Codecs and file formats
have been refactored along the way.
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-12 13:28:28 +02:00
Michael Mayer
f6def1ca2b
Exif: Replace if with switch in exif_parser.go #2231
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-10 12:02:55 +02:00
Michael Mayer
e1996f80b3
Exif: Ignore IFD1 tags with existing IFD0 values #2231
...
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2022-04-09 19:56:38 +02:00
Michael Mayer
9eda12ac20
Performance: Refactor database schema and UI components #995 #1438 #1811
2022-03-30 20:36:25 +02:00
Michael Mayer
39b0530313
Metadata: Skip brute-force search if no Exif headers were found #2196
2022-03-28 15:57:29 +02:00
Michael Mayer
680686185f
Metadata: Improve parsing of (incomplete) timestamp strings #625 #2133
2022-03-25 16:31:09 +01:00
Michael Mayer
893810f82f
Metadata: Read Zulu formatted timestamps from Exiftool JSON #2082
2022-02-28 19:12:54 +01:00
Michael Mayer
c256664a1b
WebDAV: Fix upload of complete albums #1376
2022-02-27 17:32:54 +01:00
Michael Mayer
c853b3cd2d
Backend: Shorten source file headers and normalize email addresses
2022-02-21 15:30:18 +01:00
Michael Mayer
6c4fc42415
API: Add Explicit Cache Header for Existing Thumbs #822
2022-02-20 17:36:51 +01:00
Michael Mayer
070988d0f4
Edit Dialog: Improve display of metadata in the files tab #2017
2022-02-07 12:41:11 +01:00
Michael Mayer
8a0e72db66
Exif: Change EXIF to Exif in comments
2022-02-02 17:41:45 +01:00
Michael Mayer
62f5a5f5f0
Exif: Stop search if no header was found in PNG, TIFF, and HEIF
2022-02-02 17:39:16 +01:00
Michael Mayer
58cc89e7a4
Index: Find photo stack by filename & recover original names #1823 #1892
2022-01-06 09:55:41 +01:00
Michael Mayer
5462b1e69e
Metadata: Reduce log level for missing Exif data from warn to info
2022-01-05 16:55:04 +01:00
Michael Mayer
dd9d7123d9
Index: Improve indexing and unstacking of related files #1823
...
This commit also adds initial HDR flag extraction from metadata.
2022-01-05 16:37:19 +01:00
Michael Mayer
58a5f94069
Backups: Rename album backups to exports and improve command help #1887
2022-01-05 11:40:44 +01:00
Michael Mayer
8efe473d30
Copyright: Update year in source files and footer.vue
2022-01-03 13:46:52 +01:00
Michael Mayer
0f0c0aaa0b
API: Improve path and filename parameter sanitation #1814
2021-12-14 20:01:39 +01:00
Michael Mayer
9a8144c046
Log4j: Sanitize user input in logs like filenames and album titles #1814
2021-12-14 17:07:38 +01:00
Michael Mayer
35ac1e730c
Docs: Update URL
2021-12-12 20:48:05 +01:00
Michael Mayer
5be456a09f
JPEG: Convert Apple "Display P3" colors to standard sRGB #1474
...
Other color profiles and file formats are not supported yet. Should
be easy to add though. Main difficulty will be profile name comparison:
For example "Adobe RGB (1998)" vs just "Adobe RGB".
2021-12-09 07:00:39 +01:00
Michael Mayer
9df31e2592
CLI: Update command descriptions, log messages and levels
2021-11-27 18:41:10 +01:00
Eng Zer Jun
44f7700c0c
Enable module graph pruning and deprecate io/ioutil ( #1600 )
...
* Backend: Enable Go module graph pruning and lazy module loading
This commit applies the changes by running `go mod tidy -go=1.17` to
enable module graph pruning and lazy module loading supported by Go 1.17
or higher.
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* Backend: Move from io/ioutil to io and os package
The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil . This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2021-10-06 07:10:50 +02:00
Michael Mayer
f7153cdd21
People: Improve logging, command help, and handling of broken files #22
2021-10-05 18:42:39 +02:00
Michael Mayer
2e18c2ef9c
Metadata: Upgrade all go-exif image structure libs to v2 #1326 #1463
2021-08-19 13:28:12 +02:00
Michael Mayer
bc86997ba3
Backend: Replace gopkg.in/ugjka/go-tz with gopkg.in/photoprism/go-tz
...
Original package was archived and not maintained anymore.
2021-07-17 15:21:03 +02:00
Michael Mayer
4fcd009b8b
Metadata: Fix time zone for Quicktime videos #1388
...
Assume UTC, same as for MP4 videos.
2021-07-13 18:08:47 +02:00
Michael Mayer
c819e9159c
Metadata: Fix time zone for MP4 videos #1388
...
As it turned out, the exiftool -api QuickTimeUTC parameter converts
CreateDate to local time using the server's time zone. This doesn't
help as it's technically still a local time and not UTC. Had to
implement this manually in our Exiftool JSON parser for MP4 videos only.
2021-07-13 17:56:26 +02:00
Michael Mayer
513a7e9257
Exiftool: Fix CLI parameters and add tests #1388 #1401
2021-07-12 21:41:44 +02:00
Michael Mayer
e29e9977a9
UI: Add people tab to photo edit dialog #22
...
Work in progress. Buttons don't work yet.
2021-06-01 17:39:03 +02:00
Michael Mayer
365e582ffd
Backend: Upgrade dsoprea/go-exif and revert exif test assertion
...
see https://github.com/dsoprea/go-exif/issues/55
2021-05-14 18:24:10 +02:00
Michael Mayer
e10118a65f
Metadata: Merge keywords if priority is the same #1153
...
Also reduces length limit for latin words to 2 letters.
2021-05-04 15:02:54 +02:00
Michael Mayer
2d7becdbbc
Metadata: Add keywords tests #1153
2021-05-01 10:52:28 +02:00
Michael Mayer
6cbf0696c4
Metadata: Don't remove stopwords from keywords #1153
2021-04-30 17:37:37 +02:00
Michael Mayer
28c5c1be7b
Metadata: Upgrade dsoprea/go-exif
...
See https://github.com/dsoprea/go-exif/issues/55
2021-04-30 10:59:06 +02:00
Theresa Gresch
da6e948f31
Metadata: Add support for XMP sidecar CreateDate and Keywords ( #1161 )
...
* Metadata: Read title, description, date and keywords from apple xmp
* Metadata: Add testfiles and tests
* Metadata: Add support for XMP sidecar CreateDate and Keywords #1151
Co-authored-by: Michael Mayer <michael@lastzero.net>
2021-04-26 13:54:14 +02:00
Michael Mayer
180e46b95f
Frontend: Add Yellowstone theme, unlock Grayscale for everyone
2021-04-26 12:37:52 +02:00
Michael Mayer
27c106863d
Metadata: Merge existing keywords #1153
2021-04-25 14:17:34 +02:00
theresa
1532e6b748
Tests: Add test and testfiles for bug #1153
2021-03-25 11:45:32 +01:00
theresa
bc714059c3
Meta: Add charset=Ascii to unwanted descriptions
2021-03-24 14:24:24 +01:00
theresa
0192f976bc
Tests: Add tests for internal/meta
2021-02-25 16:03:07 +01:00
Michael Mayer
f7f0b8d17a
Metadata: Add unwanted descriptions
2021-02-21 17:54:26 +01:00
Michael Mayer
d42eb4e01b
Classify: Improve moments & location labels
2021-02-21 17:18:36 +01:00
theresa
d6f7601246
Meta: Add default to unwanted descriptions list
2021-02-17 09:47:15 +01:00
theresa
74663f53b0
Meta: Add binary comment to unwanted descriptions #1046
2021-02-15 17:25:22 +01:00
Michael Mayer
e12eac7b23
Metadata: Re-enable gopro camera model assertion in test #990 #1046
2021-02-15 16:40:47 +01:00
Michael Mayer
a78a5f6f48
Metadata: Add workaround for exif strings containing \n or \r
...
See: https://github.com/dsoprea/go-exif/issues/55
2021-02-13 18:11:44 +01:00
Michael Mayer
aacb524f1e
Add video transcoding support to convert command #703
2021-02-11 21:37:44 +01:00
Michael Mayer
8b361093be
Metadata: Upgrade Go dependencies #990
2021-02-05 09:45:28 +01:00
Michael Mayer
67259fbca6
Metadata: Add "SAMSUNG CAMERA PICTURES" to unwanted descriptions
2021-01-27 12:13:09 +01:00
Michael Mayer
24f8c1acfa
Metadata: Add strings to unwanted descriptions in sanitize.go
2021-01-27 12:00:56 +01:00
Michael Mayer
9ec2381307
Update copyright after year change
2021-01-01 22:37:25 +01:00
Michael Mayer
8e22fbf8f6
Metadata: Store and compare data source for details #755
2020-12-31 13:51:31 +01:00
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