Romain
0adef54dc8
feat(core): add support for static and animated GIFs
...
GraphicsMagick can’t process animated GIFs well unless all frames are coalesced, which creates very large files.
This means there is a new dependency on Gifsicle which is very good at working with animated GIFs.
- Thumbnails are still processed through GraphicsMagick (more options, e.g. centre-crop)
- Large previews of animated GIFs go through Gifsicle
The startup checks are updated to check for the Gifsicle binary.
Fixes #96 .
2018-06-08 00:49:03 +02:00
Romain
e1517d2fbd
feat(core): when building thumbnails, fallback to JPG if the source is not a browser-friendly format
...
If the source is browser-friendly (jpg, jpeg, png) then keep the exact original extension.
2018-06-08 00:27:44 +02:00
klemens
424d2c8b8b
spelling fixes
2018-04-26 11:08:45 +02:00
Romain
03c3b38e82
fix(model): ignore the EXIF date if it’s not valid e.g. 0000:00:00
...
Closes #94
2018-03-29 20:21:58 +11:00
Romain
3152361e65
Fix #83 : handle IPTC keywords returned as string or array
2017-12-02 22:54:37 +11:00
Romain
b92724472e
Fix #71 : read both Quicktime CreationDate and CreateDate
2017-08-13 21:28:00 +10:00
Romain
0b27d37881
Read metadata from Picasa.ini if present
2017-08-07 22:53:04 +10:00
Romain
3e64d2ab38
Create a Metadata model attached to input files
...
- for easier unit testing
- to enable input filtering (e.g. only include photos with this keyword)
2017-08-07 22:52:26 +10:00
Romain
d24c5110cc
Fix #70 : files in the root of the source folder get added to the root gallery (index.html)
...
Before, they were added to an album called “.” which didn’t look good,
and the corresponding “.html” file (no base name) caused issues on web servers
2017-07-22 21:25:43 +10:00
Romain
dc40fbac09
Fix inferring data from the filename: was getting confused if the folder contained digits
2017-06-14 17:43:38 +10:00
Romain
3531f1e533
Try to infer dates from the filename if there is no "date" metadata
2017-04-01 00:07:04 +11:00
Romain
a7ad8dc9fc
Fix reading the original creation date of QuickTime and H264 movies
2017-03-19 00:12:21 +11:00
Romain
39ee2adf05
Read XMP ratings
2017-03-08 21:41:37 +11:00
Romain
449ee0b180
Read the caption from all standard EXIF/IPTC/XMP tags (issue #24 )
2017-03-08 21:40:09 +11:00
Romain
7e73e6a10b
Refactor album mapping code to be much simpler based on (media) => string
2017-03-08 20:12:05 +11:00
Romain
59b9bdbbd2
Use <standard> for code style, which removed lots of unused variables/requires
2017-03-06 23:46:46 +11:00
Romain
e719bf15b1
Single source of truth for input/outputs + view model for display ( #58 )
2017-03-06 22:16:36 +11:00
Romain
d3781b8fcf
Fix parsing of MIME Type into Media type (image/video)
...
This fixes download links, and being able to right-click on a video and save-as
2017-02-28 21:40:51 +11:00
Romain
8dccb88f25
Use [exiftool-json-db] to maintain the JSON database of media files
2017-02-28 00:13:45 +11:00
Romain
e36464a76a
New --albums-output-folder option to write all albums to a subfolder (cleaner output)
...
The main changes are
- this introduces relative paths, since some HTML files have to go ".." to get to public/media
- it also introduces the difference between album.path (OS dependent) and album.url (forward slashes)
2017-02-07 23:37:52 +11:00
Romain
e930af7f49
Add GIF support, fixes #22 .
...
One major change here is that thumbnails will always be generated as ".jpg".
This is potentially a breaking change, in the sense that all "png" or "jpeg" thumbnails
would be to re-calculated and re-uploaded.
2017-02-06 21:37:36 +11:00
Romain
4209466c14
More unit tests for the Album model (tests split into 2 files for legibility)
2017-02-05 18:38:44 +11:00
Romain
6772e9c9d9
Fix final options for nested albums, not being passed recursively
2017-02-05 15:39:52 +11:00
Romain
f235675f86
Don't concatenate the root album name to be 100% compatible with existing version for flat albums
2016-11-17 22:07:04 +11:00
Romain
0208babae1
Pick 10 previews per album, to make the mosaic theme work
2016-11-17 12:34:58 +11:00
Romain
b10e7ca6c9
Unit tests for album constructor + sorting
2016-11-15 13:28:37 +11:00
Romain
93ffff1e90
Move album.previews() test one level up
2016-11-13 13:22:43 +11:00
Romain
fd9bf181fd
Extract model from website generation
2016-11-02 11:35:27 +11:00