Commit Graph

4228 Commits

Author SHA1 Message Date
John Cupitt
ad046680f7 tiny polish to cpp 2016-08-04 12:37:48 +01:00
John Cupitt
e939103936 Merge branch 'master' into add-worley 2016-07-24 14:47:33 +01:00
John Cupitt
2dc43198e4 final fixups 2016-07-24 14:47:22 +01:00
John Cupitt
6db9a2fdf9 better smoothing for perlin 2016-07-24 12:58:45 +01:00
John Cupitt
c469bb3983 perlin sort-of works 2016-07-24 11:46:42 +01:00
John Cupitt
5bbeac7eff Merge branch '8.3' 2016-07-21 07:42:09 +01:00
John Cupitt
3efee94e19 fix possible out of bounds read in tiff2vips
reading a malformed tiff file from a buffer could trigger out of bounds
read

thanks Matt Richards
2016-07-21 07:40:33 +01:00
John Cupitt
99766dbd83 better hash for worley 2016-07-19 12:29:36 +01:00
John Cupitt
e14c97359a done!
perlin next I guess
2016-07-19 11:53:56 +01:00
John Cupitt
dac671439c kind-of working 2016-07-19 10:57:21 +01:00
John Cupitt
9c18f1b4d5 yet mmore doc fixes
classes are working again in gtk-doc, yay
2016-07-13 22:39:16 +01:00
John Cupitt
b814baa78c fix various small doc problems 2016-07-13 17:07:26 +01:00
John Cupitt
23d9bad581 doc improvements 2016-07-13 09:24:41 +01:00
John Cupitt
097ecd07c1 doc improvements 2016-07-13 07:06:43 +01:00
John Cupitt
828b36dfe5 fix --fail option to jpegload
getting --fail on jpegload working means tilecache must terminate on tile
calc error

make openslideload not report tile calc errors, it might need a --fail
option too

see https://github.com/jcupitt/libvips/issues/474
2016-07-11 10:07:41 +01:00
John Cupitt
f294ec5d9b oops 2016-07-09 19:10:17 +01:00
John Cupitt
4c1e6dd023 turn off chroma subsample for Q > 90
see https://github.com/jcupitt/libvips/issues/482
2016-07-09 18:49:22 +01:00
John Cupitt
de981cd9ec docs tweak 2016-07-08 12:18:07 +01:00
John Cupitt
0f2d1a6b0b improve docs 2016-07-08 09:15:56 +01:00
John Cupitt
3130b9b118 add note on Peter's CM work 2016-07-05 08:48:08 +01:00
John Cupitt
65067fd58b add some more auto init
vips_image_new_from_file() was missing a check_init
2016-07-04 14:51:00 +01:00
John Cupitt
b81ac67a98 tag tiff alpha as UNASSALPHA
we were using ASSOCALPHA, but that's only for pre-multiplied alpha
channels
2016-07-04 14:49:04 +01:00
John Cupitt
0c2259d34b improve similarity docs
rotation direction was wrong, add type comments

https://github.com/jcupitt/libvips/issues/475
2016-06-28 17:07:14 +01:00
John Cupitt
65105a9442 upsize with something other than nearest
vips_resize() uses to just use nearest when upsizing, following standard
practice in repro. This is often unfortunate for image processing, where
small nearest upsizes will produce obvious aliasing.

It now picks a VipsInterpolate which corresponds (roughly) to the
selected VipsKernel and uses that with affine for any upsizing.
2016-06-22 10:33:08 +01:00
John Cupitt
6f52f14fc5 fix comment 2016-06-19 09:37:26 +01:00
John Cupitt
3c7ce5f6fe better invalid test 2016-06-18 19:42:43 +01:00
John Cupitt
11b136b2df pyvips8 can create new metadata
previously it tried to lookup the type of the field in set(), now if
OK if there's no field there already
2016-06-17 11:27:13 +01:00
John Cupitt
d56cd4dcb2 note py problem 2016-06-17 09:36:04 +01:00
John Cupitt
f3326c8126 better vips_resize() for cubic/linear/nearest
vips_resize() used to do most of a downsize with vips_shrink() and the
final 200 - 300% with vips_reduce(). This was correct for lanczos2/3,
but not right for linear/cubic, which need more shrink and less
reduce to avoid aliasing.

This patch makes vips_resize() leave the final 100 - 200% to
vips_reduce() for linear/cubic, and leave everything to reduce for
nearest.
2016-06-16 09:46:02 +01:00
John Cupitt
a5bef08d4a better reducev multiplication
more accurate, no slower

add more tests too
2016-06-15 13:56:19 +01:00
John Cupitt
58be330714 oop problems found in reducev 2016-06-14 14:56:56 +01:00
John Cupitt
eb7768ff61 Merge branch 'master' into add-assignment-overloads 2016-06-11 20:15:42 +01:00
John Cupitt
83b1c33441 add tests for C++ += etc
all seems to work!
2016-06-11 20:14:48 +01:00
John Cupitt
28efdf1695 working! 2016-06-11 17:36:06 +01:00
John Cupitt
8667dd0d18 VImage::ifthenelse() fix
the prototype was missing =0 on options for scalar constant forms
2016-06-10 17:34:41 +01:00
John Cupitt
93951fd04a start adding 2016-06-10 14:57:46 +01:00
John Cupitt
6fa665d6de notes 2016-06-10 14:45:33 +01:00
John Cupitt
ad56c57830 add implementation for VImage::write()
oops, it was missing

also, change the return type from void to VImage. This makes chaining
possible, eg.:

   VImage memory = im.write( Viameg::new_memory() );
2016-06-10 14:22:08 +01:00
John Cupitt
1909b31bd6 vips_image_write() only refs input when it has to
when you write to a non-partial image, you create a sink ... so
vips_image_write() only needs to ref the input when writing to partials

this change makes it much easier to (for example) combine many images in
bounded space, see for example:

https://gist.github.com/jcupitt/c516325ebef7601b5da610af5619c9b2
2016-06-10 13:58:01 +01:00
John Cupitt
3ed174e9cb Merge branch 'master' into free-non-worker-buffers 2016-06-09 18:36:41 +01:00
John Cupitt
e2ca92e104 better dsave zip compression on older libgsfs
if you ask for compression on an older libgsf, you now get zlib default,
rather than no compression
2016-06-09 11:58:01 +01:00
John Cupitt
98bceec23f small dzsave cleanups
- rename compression_level as deflate_level to match libgsf convention
- use libgsf enums for GSF_ZIP_STORED, etc.
- configure-time checks for zip64 and deflate-level
- off-topic: rename NEED_TYPE_INIT as HAVE_TYPE_INIT for consistency
2016-06-09 09:36:37 +01:00
John Cupitt
8cd3d18caf remove is_zip from dzsave
we can use GSF_IS_OUTFILE_ZIP() instead
2016-06-08 14:46:45 +01:00
John Cupitt
88acc23e2b Merge pull request #461 from felixbuenemann/dzsave-zip-compression
Vips dzsave zip compression support
2016-06-08 13:51:35 +01:00
John Cupitt
6139c4ca7d Merge pull request #468 from felixbuenemann/re-enable-travis-on-all-branches
Re-enable Travis CI builds on all branches
2016-06-07 18:51:52 +01:00
Felix Bünemann
836c2339cf Target master branch for Travis CI build badge 2016-06-07 14:12:32 +02:00
Felix Bünemann
d7a39668e4 Revert "only run travis on master and stable"
This reverts commit 43e6e5361b.
2016-06-07 14:02:23 +02:00
John Cupitt
b90145ca31 free pixel buffers on image close
We were freeing pixel buffers on thread exit. This was convenient, but
meant that main thread buffers were not freed until program exit. As a
result, long-running programs which created main thread buffers would
slowly fill the operation cache with useless junk, forcing everything else out.

This change also frees pixel buffers on image close. This makes the
cache work much better in long-running programs, and can substantially
reduce memory use.

See https://github.com/jcupitt/libvips/issues/466
2016-06-06 13:50:25 +01:00
John Cupitt
55e5732d85 Merge branch 'master' into free-non-worker-buffers 2016-06-06 11:13:24 +01:00
John Cupitt
37131e5834 not working tests 2016-06-06 11:03:31 +01:00