Commit Graph

6121 Commits

Author SHA1 Message Date
John Cupitt
e7b6709f99 use a single loop to get frame and alpha metadata
we had two before, plus use the do/while form recommended for libwebp
frame iteration
2019-07-06 14:46:29 +01:00
John Cupitt
515bf68f46 reformatting for vips2webp
- move a couple of small functions inline for simplicity
- mark "gif-delay" as deprecated
- minor reformatting
2019-07-06 13:37:33 +01:00
John Cupitt
777c360774 safer gifload delay array init
- remove assumptions about n_pages
- minor reformatting
2019-07-06 11:34:20 +01:00
John Cupitt
00676a2166 Merge branch 'master' of git://github.com/deftomat/libvips into deftomat-master 2019-07-06 11:01:02 +01:00
Tomáš Szabo
1b54684650
Add set and get for an array of ints 2019-07-05 17:29:11 +02:00
Tomáš Szabo
bd9c97feed
Changes based on review 2019-07-05 17:23:29 +02:00
John Cupitt
fd9dfc4426
Merge pull request #1361 from pszemus/master
[webp] Use well documented use_sharp_yuv option instead of preprocessing
2019-07-05 13:27:42 +01:00
Przemysław Sobala
1c30a8567c [webp] Use well documented use_sharp_yuv option instead of preprocessing 2019-07-05 13:14:32 +02:00
John Cupitt
80f247cfb2 Merge branch '8.8' 2019-07-03 15:33:43 +01:00
John Cupitt
8cb2b613b7 note new heifsave param in changelog
plus tiny reformatting
2019-07-03 15:04:58 +01:00
John Cupitt
4a2c80043d
Merge pull request #1360 from lovell/heifsave-expose-compression
heifsave: expose compression option
2019-07-03 13:34:08 +01:00
Lovell Fuller
42f9f78c86 heifsave: expose compression option
improve error messaging, add further suffixes
2019-07-03 13:07:58 +01:00
John Cupitt
26100041e7 fewer warnings on tiffload
We were setting TIFFTAG_JPEGCOLORMODE == JPEGCOLORMODE_RGB for *all*
images, but libtiff warns if you use it on an image which is not
jpg-compressed.

Only set it for jpg-compressed images.

See https://github.com/libvips/libvips/issues/1329
2019-07-02 12:23:53 +01:00
John Cupitt
e596fe5cd3 Merge branch 'master' into add-unlimited-to-svgload 2019-07-01 12:04:54 +01:00
Tomáš Szabo
091bb853dd
Merge remote-tracking branch 'upstream/master' 2019-06-30 18:03:45 +02:00
John Cupitt
25af46a189 add rgba -> rgb stage for webp output 2019-06-30 16:53:11 +01:00
Tomáš Szabo
166aae1440
sync fork 2019-06-30 17:10:56 +02:00
John Cupitt
aac01126af magicksave supports strip option 2019-06-29 20:23:46 +01:00
John Cupitt
c5147afdcd require 2.40.3 to get unlimited flag 2019-06-29 14:55:47 +01:00
John Cupitt
20b9d77086 don't need to test xoff / yoff 2019-06-29 13:18:29 +01:00
John Cupitt
d3cd51a8c3 check alpha on animation rects too
see https://github.com/libvips/libvips/issues/1351#issuecomment-506942104
2019-06-29 11:50:26 +01:00
John Cupitt
260f3284ff require librsvg >= 2.40
we need the UNLIMITED open API
2019-06-28 18:49:10 +01:00
John Cupitt
55e49831b8 add "unlimited" to svgload
By default librsvg blocks SVGs > 10MB for security. This patch adds an
"unlimited" flag to remove this check.

We have to switch to using gio to get the librsvg API for this This
needs testing on the platforms we support.

We'll also need to bump the min version of librsvg we require in
configure.ac.

See https://github.com/libvips/libvips/issues/1354
2019-06-28 13:48:18 +01:00
John Cupitt
0706d65484 Merge branch 'master' of git://github.com/deftomat/libvips into deftomat-master 2019-06-28 09:24:34 +01:00
John Cupitt
7d8b6d9d9f note webp change 2019-06-28 04:09:31 +01:00
John Cupitt
8a354c5aec improve webp rgba handling
disable webp alpha output if all frame fill the canvas and are solid

see https://github.com/libvips/libvips/issues/1351
2019-06-27 18:44:38 +01:00
John Cupitt
01a92679b5 oop left some DEBUG turned on 2019-06-27 17:34:07 +01:00
John Cupitt
72c103f95a Revert "remove no-alpha webp support"
This reverts commit d1094847a3.
2019-06-27 17:27:53 +01:00
John Cupitt
80648c2d2f text autofit could sometimes underfit
The autofit loop would terminate if either width or height fitted exactly,
but this could happen very early by chance. This patch makes it keep
looping until it finds a dpi which just fits.

See https://github.com/libvips/libvips/issues/1352
2019-06-27 17:19:53 +01:00
John Cupitt
d1094847a3 remove no-alpha webp support
We used to try to spot webp images with no alpha and load them as plain
RGB, but it turns out this is difficult to do reliably, especially
for animated images.

This patch simply removes support, so all webp images now load as RGBA.

See https://github.com/libvips/libvips/issues/1351
2019-06-27 16:37:11 +01:00
Tomáš Szabo
42218cd613
formatting: use tabs instead of spaces 2019-06-21 15:59:32 +02:00
Tomáš Szabo
ae50136845
feat: support frame delays 2019-06-21 15:06:22 +02:00
John Cupitt
ea2367e24c forgot to rename the wrapper script
and add tiny dbg to gifload
2019-06-20 12:18:40 +01:00
John Cupitt
17c7a78c1b version bump for libvips 8.9 2019-06-20 11:39:04 +01:00
John Cupitt
2aef873fcd add vips_image_get/set_array_int() 2019-06-20 11:32:47 +01:00
John Cupitt
8a98bea063 fix vipsthumbnail for pyr tiff files
thumbnail was not testing pyramidal tiff images for pyramidness correctly.

see https://github.com/libvips/libvips/issues/1297
2019-06-19 17:56:09 +01:00
John Cupitt
65c41ef7a5 fix a couple of clang compiler warnings 2019-06-15 17:35:46 +01:00
John Cupitt
631383026b revise README again 2019-06-15 13:21:43 +01:00
John Cupitt
aa9164713d note HEIC support in README 2019-06-15 13:14:26 +01:00
John Cupitt
75e69cc1e5 disable Orc if CET is on
If we are building with -fcf-protection (run-time checking of
indirect jumps) then Orc won't work. Make sure it's off.

Orc may support -fcf-protection in the future, but does not in June 2019.

https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html#index-fcf-protection
https://gitlab.freedesktop.org/gstreamer/orc/issues/17

see https://github.com/libvips/libvips/issues/1006#issuecomment-501802550
2019-06-14 14:22:00 +01:00
John Cupitt
db36e19ffa note PNG XMP support in docs 2019-06-13 09:26:09 +01:00
John Cupitt
37a3a6322c remove 256 band limit from arithmetic.c
there was a fixed-size array in vips__bandup()

see https://github.com/libvips/libvips/issues/1335
2019-06-12 09:22:30 +01:00
John Cupitt
ad98222073 better behaviour for vips_region_fetch()
we weren't clipping the fetch area against region valid, so in some
cases we could return many more pixels than expected

see https://github.com/libvips/pyvips/issues/103
2019-06-09 20:38:13 +01:00
John Cupitt
eaaa203f0a better compat with older IM
in the ismagick() test
2019-06-08 17:32:04 +01:00
John Cupitt
dc8555201d use our sniffer as well is ismagick()
We need to check files for magickload with our sniffer as well as the
imagemagick one.
2019-06-08 17:13:49 +01:00
John Cupitt
bb75535151 much faster ismagick
We used to Ping files to see if IM would load them, but this can be
extremely slow for file formats like ARW.

Instead, use GetImageMagick() ... it just checks the magic number.
2019-06-08 16:47:40 +01:00
John Cupitt
eb6c803481 istiff tests first dir rather than magic number
We were testing for TIFF by checking the magic number at the head of the
file. However, formats like ARW are TIFF-like without being TIFF, and
will not load with tiffload.

Instead, try reading the whole of the first directory. This is enough to
stop tiffload trying to load files where it will simply fail
immediately, and make libvips fall back to eg. imagemagick.

see https://github.com/libvips/libvips/issues/1304
2019-06-07 17:52:13 +01:00
John Cupitt
dc16f1253a fix a memleak in tiff pyr to memory
we were not freeing layers other than the top layer
2019-06-06 10:20:14 +01:00
John Cupitt
bddbecffaf
Merge pull request #1331 from lovell/webp-lossless-quality
Ensure WebP quality option is set for lossless
2019-06-06 06:39:30 +01:00
Lovell Fuller
8d0a42efe2 Ensure WebP quality option is set for lossless 2019-06-05 23:01:06 +01:00