Commit graph

167 commits

Author SHA1 Message Date
Michael Mayer 5ec90a5fff Index: Skip redundant thumbs and support symbolic file links #1049 #1874
Signed-off-by: Michael Mayer <michael@photoprism.app>
2022-07-06 23:01:54 +02:00
Michael Mayer 519f0c49c9 Videos: Stream OGV, VP8, VP9, AV1, WebM, and HEVC if supported #2461 2022-06-24 06:59:22 +02:00
Michael Mayer a8db361268 Metadata: Use actual image width and height if available #2447 2022-06-20 11:41:41 +02:00
Michael Mayer 2f91813678 Metadata: Update list of unwanted descriptions 2022-06-16 09:36:34 +02:00
theresa 48de8bd0e0 Undo changes 2022-05-31 20:48:02 +02:00
theresa 226ff20b9b Tests: Adapt album tests to run on mobile 2022-05-31 20:36:44 +02:00
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