Commit Graph

5032 Commits

Author SHA1 Message Date
Lovell Fuller
cac1b5b9c6 ~20% sRGB to scRGB speedup for common 3 and 4 band images 2017-11-24 21:45:00 +00:00
John Cupitt
f9f717a843 add VIPS_ONCE and use it everywhere
Lovell's idea: save the function call in the most common case
2017-11-23 08:43:08 +00:00
John Cupitt
8806e7039e
Merge pull request #813 from lovell/sRGB2scRGB-once-unlikely
Colour: ~20% speedup for sRGB to scRGB pixel conversion
2017-11-23 08:10:42 +00:00
Lovell Fuller
cef897ece8 ~20% speedup for sRGB to scRGB pixel conversion
by checking GOnce status with branch expectation
2017-11-23 07:36:19 +00:00
John Cupitt
72a493d2e6 fix build against giflib4 2017-11-22 19:52:40 +00:00
John Cupitt
6a4b249445 add dispose handling
see https://github.com/jcupitt/php-vips/issues/59
2017-11-22 17:37:31 +00:00
John Cupitt
27621733f2 add gif-comment 2017-11-22 13:10:06 +00:00
John Cupitt
c008bdddca gifload reports first delay, not last
many GIFs have a long delay on the final frame
2017-11-22 11:12:11 +00:00
John Cupitt
7aed4c04e7 fix gif-loop metadata
thanks Christian Stocker
2017-11-21 18:06:49 +00:00
John Cupitt
5361903fae make gif delay default to 4
should match imagemagick
2017-11-21 16:08:26 +00:00
John Cupitt
e56282e1fd add gif-loop metadata
see https://github.com/rokka-io/imagine-vips/issues/3
2017-11-21 16:04:18 +00:00
John Cupitt
b611f46d5a better gif delay decode 2017-11-21 15:09:44 +00:00
John Cupitt
d0c7f9d040 fix page-height in gifload
and add support for "gif-delay" metadata item
2017-11-21 11:21:27 +00:00
John Cupitt
8497840d97
Merge pull request #811 from lovell/smartcrop-luminance
Smartcrop: ~19% speedup by getting luminance from LAB instead of LCH
2017-11-21 08:31:53 +00:00
Lovell Fuller
e8b0e455d8 Take luminance value from LAB instead of LCH
Avoids costly atan2 conversion to polar coords
2017-11-20 20:56:45 +00:00
John Cupitt
43288833b9
Merge pull request #810 from lovell/smartcrop-clamp-sigma
Smartcrop: clamp sigma to avoid out of range warnings
2017-11-20 17:41:33 +00:00
Lovell Fuller
caa0988256 Clamp minimum sigma to avoid out of range warnings 2017-11-19 20:22:19 +00:00
John Cupitt
a4b89aa370 credit for affine fixup 2017-11-18 15:11:02 +00:00
John Cupitt
65cfe2e7c0 Merge branch 'master' into fix-affine-jaggies 2017-11-18 15:10:50 +00:00
John Cupitt
2815647ce3 fix background for affine on alpha images
need to convert to ink for premultiplied space
2017-11-18 13:42:00 +00:00
John Cupitt
e179e3b11f premultiply alpha (if necessary) in affine 2017-11-18 10:59:20 +00:00
John Cupitt
cd898c52de
Merge pull request #808 from lovell/prefer-sqrt-to-pow-0.5
Prefer ~10x faster sqrt instead of pow when y=0.5
2017-11-17 22:11:23 +00:00
Lovell Fuller
bb58685d1c Use ~10x faster sqrt instead of pow when y=0.5 2017-11-17 20:24:28 +00:00
John Cupitt
fcec6d639b fix jaggies on the edge of affine output
and add a "background" param
2017-11-17 16:30:25 +00:00
John Cupitt
ef9b23b95a update function list 2017-11-09 15:00:13 +00:00
John Cupitt
2bb7844f4c update docs
some old stuff in examples
2017-11-09 14:53:20 +00:00
John Cupitt
c01afbc559 update docs
the examples page was using the old python binding
2017-11-04 14:50:49 +00:00
John Cupitt
4ea743f5e6 add combine mode to find_indexed 2017-11-03 16:36:09 +00:00
John Cupitt
487c112807 add VIPS_COMBINE_MIN combining mode
for vips_compass()
2017-11-02 12:34:01 +00:00
John Cupitt
55e577a2fb rename nearest as fill_nearest
avoid a clash with the nearest-neighbour interpolator
2017-11-01 15:06:37 +00:00
John Cupitt
cdc286e9d6 switch to float distance calculations
removes dithering effects along edges
2017-11-01 13:16:36 +00:00
John Cupitt
cb37089c9b seems to work 2017-11-01 13:16:36 +00:00
John Cupitt
ae54f35ed1 start tinkering 2017-11-01 13:16:36 +00:00
John Cupitt
d90f2e649d no error for bad page-height in tiffsave
just don't write a toilet-roll image

the error was confusing and easy to trigger by mistake

see https://github.com/jcupitt/libvips/issues/782
2017-10-24 09:39:58 +01:00
John Cupitt
3b75b1e2ac fix gcc7 build
removed exception specs from deprecated C++ binding
2017-10-24 09:31:23 +01:00
John Cupitt
5ec1d5b72f fix vipsthumbnail --size Nx
oh dear, width but not height size specs to vipsthumbnail were not working

thanks jrochkind

see https://github.com/jcupitt/libvips/issues/781
2017-10-23 22:27:23 +01:00
John Cupitt
990b68b54b typos 2017-10-23 18:05:41 +01:00
John Cupitt
d99a189846 missing cast 2017-10-19 17:00:56 +01:00
John Cupitt
dd503c03c6 add vips_value_set_blob_free()
simpler for language bindings to call
2017-10-19 16:37:43 +01:00
John Cupitt
b060883706 default tiff predictor to horizontal
reduces default tiff lzw / deflate file size by ~20 - 30% at no performance
cost ... thanks @jrochkind

See https://github.com/jcupitt/libvips/issues/777
2017-10-19 08:50:16 +01:00
John Cupitt
6912fe91ed sniff webp from the magic number
removes the 100 byte minimum file size

see https://github.com/lovell/sharp/issues/996
2017-10-18 09:00:34 +01:00
John Cupitt
a8bbe05596 tiny optimisations 2017-10-16 20:55:58 +01:00
John Cupitt
99f02aeff1 allow approx gaussmat
works with gaussblur now
2017-10-16 17:10:16 +01:00
John Cupitt
5290901f86 ban gcc 5.x from vector stuff too
it seems to be easy to get internal compiler errors, thanks homm

see https://github.com/jcupitt/pyvips/issues/21
2017-10-16 17:08:07 +01:00
John Cupitt
0767e4f4c9 remove a 0.5 pixel shift from triangle
lines up with cubic and lanczos now
2017-10-16 09:38:04 +01:00
John Cupitt
53119250cc fix a crash in gifload with a missing colormap
it seems gifs can have a missing colormap, who knew

thanks Kleis

see https://github.com/jcupitt/libvips/issues/773
2017-10-15 22:35:52 +01:00
John Cupitt
68ed42e2fa make linear and cubic adaptive 2017-10-15 22:09:44 +01:00
John Cupitt
cfa96f735a only read ifd0 orientation
we used to set orientation from the first ifd, now just read ifd0, since
that's where the main image orientation should always be

see https://github.com/jcupitt/libvips/issues/772
2017-10-14 21:54:31 +01:00
John Cupitt
008fd21728 all done 2017-10-14 17:03:48 +01:00
John Cupitt
36f21138d7 builds half float mask 2017-10-14 13:46:51 +01:00