Commit Graph

1249 Commits

Author SHA1 Message Date
John Cupitt bd3b3e04f9 sync 2013-12-13 17:34:38 +00:00
John Cupitt c782150a6d fix sharing detection (again) 2013-12-13 12:20:05 +00:00
John Cupitt ffd04bce91 sync 2013-12-12 09:51:55 +00:00
John Cupitt 9167767179 sync 2013-12-10 14:12:02 +00:00
John Cupitt dc229765ed sync 2013-12-10 10:31:11 +00:00
John Cupitt f606f038eb more restrict use 2013-12-03 14:25:22 +00:00
John Cupitt 4aedd7cd16 put the ORC stuff back in arithmetic
ready to use on linear.c
2013-12-03 12:39:13 +00:00
John Cupitt 0bb052414a use plain "restrict"
configure changes this to __restrict__ for us, if the compiler supports
it
2013-12-03 08:53:36 +00:00
John Cupitt 0f7e938aef sync 2013-12-02 18:53:56 +00:00
John Cupitt 7c43e3d332 remove the orc stuff from arithmetic
no faster than gcc auto vec
2013-12-02 11:22:08 +00:00
John Cupitt a44377f03e sync 2013-11-30 13:56:48 +00:00
John Cupitt dccc5d5180 add __restrict__ markup to loop pointers
helps auto-vec

also remove a couple of if()s from inner loops, again, helps auto-vec
2013-11-30 13:55:10 +00:00
John Cupitt 29eed7b2b5 remove repack code from affine
just done in compat wrapper now
2013-11-29 23:20:32 +00:00
John Cupitt 223cb02305 fix im_benchmark() 2013-11-29 22:30:20 +00:00
John Cupitt b619a8cc04 sync 2013-11-29 22:00:13 +00:00
John Cupitt b77b4fba0f sync 2013-11-29 15:10:16 +00:00
John Cupitt 45c8be3db6 small polish 2013-11-29 09:40:54 +00:00
John Cupitt e0b9b3cd5c more polishing
and instrument stuff for vipsthumbnail
2013-11-28 14:56:19 +00:00
John Cupitt 730d7d0bd6 sync 2013-11-28 09:22:39 +00:00
John Cupitt 0bf5ee12fd more calcs in output 2013-11-26 17:53:44 +00:00
John Cupitt 9b9d940148 parse profile output 2013-11-19 10:13:38 +00:00
John Cupitt 693ed09edd add --vips-profile
only added a few gates so far, try a visualiser next
2013-11-18 18:31:49 +00:00
John Cupitt 42e5d3dd80 sync notes 2013-11-15 12:42:44 +00:00
John Cupitt 5e0a9f941f added vips_gaussblur() 2013-11-15 12:37:26 +00:00
John Cupitt 82f680484c vips_colourspace() could fail
for images with alpha channels
2013-11-14 13:55:23 +00:00
John Cupitt a01e2e3e13 finish vips_sharpen()
does any image type, any number of bands
2013-11-14 12:09:42 +00:00
John Cupitt 8db331b4b5 started sharpen.c 2013-11-13 14:54:43 +00:00
John Cupitt c1e7bbab29 add "no-subsample" option to jpeg save
turns off chroma subsampling
2013-11-13 12:59:56 +00:00
John Cupitt 0444effb8e sync 2013-11-13 09:59:56 +00:00
John Cupitt ad723ade5a move --strip into save base class
was in jpegsave, now in save

need to add support to png writer, maybe vips as well, tiff could not
attach ICC profiles I guess
2013-11-13 09:00:47 +00:00
John Cupitt 3c4cd55d54 todo sync 2013-11-12 22:00:28 +00:00
John Cupitt a7b9783036 move vipsthumbnail to vips_conv() 2013-11-12 20:51:16 +00:00
John Cupitt 53e86e71f4 fix up XYZ PCS and vipsthumbnail
fix import and export scaling, get vipsthumbnail to use it in --linear
mode
2013-11-12 17:18:41 +00:00
John Cupitt 98d708a2d9 todo sync 2013-11-12 10:12:05 +00:00
John Cupitt 8dfe4611d2 add a --linear option to vipsthumbnail
thanks to Nicolas for the prodding
2013-11-12 09:53:41 +00:00
John Cupitt bc0c4f60d6 oops fix build 2013-11-11 17:38:34 +00:00
John Cupitt b1f01af01b add vips_crop()
a synonym for vips_extract_area()
2013-11-11 14:31:41 +00:00
John Cupitt 0200e229c7 fix wrapmany compat 2013-11-11 14:08:51 +00:00
John Cupitt 608e1007e8 todo notes 2013-11-11 11:32:47 +00:00
John Cupitt f0d4760560 redo correlation funcs as classes
im_fastcor()
im_spcor()
im_gradcor()

though gradcor we just deprecate, it's complex and hardly used ...
rework later is anyone complains
2013-11-08 14:09:42 +00:00
John Cupitt 9a06b2cea7 small rad cleanups 2013-11-05 14:51:24 +00:00
John Cupitt 20410b79ef rewrite rad write 2013-11-05 11:19:51 +00:00
John Cupitt ae71229cf5 rewritten radiance load is much faster
the old rad code, from radiance.c, was using getc in a loop
2013-11-05 10:36:14 +00:00
John Cupitt ad94488734 deprecate im_contrast_surface()
slower than calling conv a few times
2013-11-03 12:24:46 +00:00
John Cupitt 9b72a57511 sync 2013-10-28 15:59:25 +00:00
John Cupitt 4b0bcd311b deprecate im_addgnoise()
it's just noise + add now.
2013-10-25 14:52:58 +01:00
John Cupitt 68c5f1909a redo im_convsep() as a class
and im_convsep_f()
2013-10-25 14:37:43 +01:00
John Cupitt 2e3d7db0e6 switch to new im_compass()
plus im_linedet() and im_gradient()
2013-10-25 13:46:17 +01:00
John Cupitt e74a0b71d9 almost done compass 2013-10-24 14:46:08 +01:00
John Cupitt 4d724c0023 started compass 2013-10-24 08:33:59 +01:00
John Cupitt 5475cabbf2 redo im_dilate()/erode() as classes
just a thin wrapper over the vips7 operations for now
2013-10-23 13:15:31 +01:00
John Cupitt 29a0c398aa todo 2013-10-23 08:49:44 +01:00
John Cupitt dd4a8435bf sync 2013-10-22 14:43:27 +01:00
John Cupitt 12cf71a6a9 combin copy_fields and demand_hint
We had two API calls, vips_image_copy_fields() and vips_demand_hint().
They are now combined in the single vips_image_pipeline() call.

All operations are now slightly smaller and simpler.
2013-10-22 09:29:40 +01:00
John Cupitt 8299bea984 todo updates 2013-10-21 13:13:34 +01:00
John Cupitt 30e6c27fd5 toto update 2013-10-20 16:56:42 +01:00
John Cupitt f7f061d265 vips_init() does ABI checking
just checks sizeof(VipsObject) for now
2013-10-20 16:46:55 +01:00
John Cupitt aa107b1bf7 remove old 45 degree mask rotate code
just a wrapper now
2013-10-20 12:30:54 +01:00
John Cupitt ece34465f0 fix compiler warnings
13.10 produces a few new ones
2013-10-18 09:13:24 +01:00
John Cupitt 8ef91f8df9 version bump ready for 7.36 2013-10-03 13:02:20 +01:00
John Cupitt aaa418ee22 revise TODO 2013-10-03 08:59:46 +01:00
John Cupitt 57b6622690 track local mem allocs for debugging 2013-10-02 21:20:41 +01:00
John Cupitt d329fb165d im_ismonotonic() becomes a class 2013-10-02 10:16:46 +01:00
John Cupitt 45a9e417f4 start vips_conv() 2013-10-01 14:26:13 +01:00
John Cupitt dfe2ddf6c5 oops anotehr vipsthumbnail fix
since "strategy" is now named "access"
2013-10-01 11:23:42 +01:00
John Cupitt 440b800e0e add a new unbuffered seq mode
things like

	vips copy huge.png x.v

now run with only a small line cache
2013-09-29 11:04:11 +01:00
John Cupitt e5ba019942 start adding unbuffered sequential mode 2013-09-27 14:47:04 +01:00
John Cupitt 608170f00e alloc larger tiles for tiff read 2013-09-26 21:50:06 +01:00
John Cupitt d28fe365a6 todo update 2013-09-26 13:12:04 +01:00
John Cupitt d435a5c14d todo update 2013-09-25 18:25:11 +01:00
John Cupitt 111a82c06e possible fix for tiff write assert fail 2013-09-25 12:57:36 +01:00
John Cupitt 6641d70652 debugging notes 2013-09-25 09:49:12 +01:00
John Cupitt aeaafe568b better sanity check for buffer sizing 2013-09-24 11:38:17 +01:00
John Cupitt a19a8ba9cb todo notes 2013-09-23 15:00:14 +01:00
John Cupitt 326365ab6c redo im_mpercent*() as a class 2013-09-21 16:19:51 +01:00
John Cupitt 481a4445fb add vips_image_new_matrixv() 2013-09-20 22:06:59 +01:00
John Cupitt a51681f490 start vips_ismonotonic() 2013-09-20 14:50:34 +01:00
John Cupitt d029461bc0 redo im_tone_build*() as classes
start vips_hist_percent() as well
2013-09-20 14:33:34 +01:00
John Cupitt 04701ad7d5 big tiff reader cleanup 2013-09-18 12:43:03 +01:00
John Cupitt 8fe0814775 todo notes 2013-09-18 11:04:27 +01:00
John Cupitt 5ffe42cec6 Merge branch 'webp'
Conflicts:
	ChangeLog
	TODO
2013-09-17 10:32:44 +01:00
John Cupitt 8ccb5bbe6d support greyscale tiff with alpha
thanks Robert for pointing out this omission
2013-09-16 15:25:02 +01:00
John Cupitt 2088e3d111 im_project() becomes a class 2013-09-16 12:19:48 +01:00
John Cupitt d78b417c3a im_lhisteq() -> a class 2013-09-05 13:50:47 +01:00
John Cupitt 7a5e04ba00 redo im_invertlut() as a class 2013-09-05 09:11:23 +01:00
John Cupitt 333d15aed0 new hist class structure 2013-09-03 14:49:57 +01:00
John Cupitt e2215bd04c redo im_histnD() as a class 2013-08-17 16:59:28 +01:00
John Cupitt eea3cbf180 small cleanups 2013-08-12 13:30:30 +01:00
John Cupitt 6855770362 rename vips_diag() as vips_info()
plus a command-line flag to turn it on
2013-08-07 09:22:24 +01:00
John Cupitt 44a0a876ba sync 2013-08-06 21:59:35 +01:00
John Cupitt ddc5f6977d read webp input with mmap 2013-08-06 21:46:48 +01:00
John Cupitt 4a65af9196 add save functions 2013-08-06 18:15:18 +01:00
John Cupitt addc48f70a TODO update 2013-08-05 21:27:25 +01:00
John Cupitt 9b6f96ed41 redo falsecolour, gammacorrect as classes 2013-08-02 09:41:11 +01:00
John Cupitt 226095c39d move im_maplut() to a class 2013-07-31 22:00:36 +01:00
John Cupitt 6b3dc259d1 more maplut hacking 2013-07-15 14:57:01 +01:00
John Cupitt da47510e37 fix some typos 2013-07-11 14:37:53 +01:00
John Cupitt d65b7b269a add multiscan jpg write? 2013-07-11 09:17:14 +01:00
John Cupitt aadd7c1ee5 vipsthumbnail rewrite 2013-07-10 11:05:45 +01:00
John Cupitt c936a86176 starting maplut 2013-07-06 11:49:27 +01:00
John Cupitt 27cec75cbd Merge remote-tracking branch 'origin/7.34'
Conflicts:
	ChangeLog
	TODO
	configure.ac
2013-07-03 11:38:15 +01:00
John Cupitt 9278498623 add vips_matrixload(), vips_matrixsave()
read and write vips mat format to and from VipsImage

also fix a leak with vips_check_matrix()
2013-07-02 12:08:46 +01:00
John Cupitt 3338b51871 TODO update 2013-07-01 13:20:31 +01:00
John Cupitt 610f7aa0eb fix morph on non-uchar images 2013-06-28 14:50:39 +01:00
John Cupitt de796417cb TODO note 2013-06-26 09:29:04 +01:00
John Cupitt 890d7b1205 tiny polish 2013-06-20 10:05:46 +01:00
John Cupitt d461d082fa sync 2013-06-18 11:01:43 +01:00
John Cupitt 4c0ace34f0 docs cleanups 2013-06-17 14:54:11 +01:00
John Cupitt dcd2dbb756 vips_pngload_buffer() works
fix a bug in vips_jpegload_buffer() too
2013-06-17 09:41:22 +01:00
John Cupitt 1dbff8f5c0 sync 2013-06-16 12:26:27 +01:00
John Cupitt 7bdc1e54f2 allow NULL out pointer for vips2buf*()
im_vips2bufjpeg() etc. needed a valid output IMAGE*, annoyingly
2013-06-16 10:24:56 +01:00
John Cupitt a1a5d0b376 sync 2013-06-14 08:53:05 +01:00
John Cupitt 6031b40b8d move im_zone*() over to a class 2013-06-13 17:37:24 +01:00
John Cupitt 86f3d2b083 add vips_xyz() 2013-06-12 14:51:43 +01:00
John Cupitt bd5c4757e8 fix vips_shrink() seq again
perhaps properly this time
2013-06-06 12:08:26 +01:00
John Cupitt ad08389fbf seq debug notes 2013-06-05 09:29:12 +01:00
John Cupitt dfd09a0285 redo im_text() as a class 2013-06-03 14:37:55 +01:00
John Cupitt 27b7332a60 im_msb() -> class
and some cleanups

add a --band option
2013-06-03 10:26:09 +01:00
John Cupitt 69136b1d8c auto rshift to 8 bits for 8-bit save 2013-05-28 10:32:37 +01:00
John Cupitt b0c5a9340e sync 2013-05-21 09:06:18 +01:00
John Cupitt f80bf594ce sharpen param to vipsthumbnail 2013-05-03 13:56:38 +01:00
John Cupitt f290b92e47 sync 2013-04-08 10:15:11 +01:00
John Cupitt 9cb1403b9b better error msg on unknown action
$ vips fred --n

would confusingly complain about unknown option --n, rather than the
unknown acrion "fred"
2013-03-15 12:15:35 +00:00
John Cupitt a731805344 sync 2013-03-05 14:46:08 +00:00
John Cupitt 3a188daa20 sync 2013-02-27 09:58:42 +00:00
John Cupitt 25a7b760d0 neater "header" output 2013-02-26 13:32:40 +00:00
John Cupitt 61875a4bca fix another dzsave corner case
better padding calculation fixes yet another corner case for dzsave,
thanks Martin
2013-02-26 12:32:01 +00:00
John Cupitt 144a95dc92 sync 2013-02-13 16:27:24 +00:00
John Cupitt 6fe6171973 remove a lot of the internal flag abbreviations
GOption doesn't seem to do anything clever with repeated flag
abbreviations. Remove most of the internal ones to stop clashes with
application flags.
2013-01-15 21:26:42 +00:00
John Cupitt caa51245c7 improve the cond wait wrapper
by removing it, we don't want to restart the timer on every loop
2013-01-15 17:23:58 +00:00
John Cupitt 384842cd0a make a fresh test dist 2013-01-15 14:52:46 +00:00
John Cupitt 2b6e3797fe fix libtool version number
we are binary API changed since 7.30, but back compat
2013-01-02 14:11:30 +00:00
John Cupitt 05324ca33c fix up affine
now passes valgrind with both vips7 and vips8 interfaces
2013-01-02 12:52:36 +00:00
John Cupitt 0951e2faa4 still segving with labq 2012-12-19 14:50:01 +00:00
John Cupitt a8b077cb4f sync 2012-12-18 14:50:04 +00:00
John Cupitt e6eb08173f can now displace affine input space
so hopefully that means you can change corner vs. centre convention
easily
2012-12-18 13:08:18 +00:00
John Cupitt 1fc10d56a8 half-way through expanding transform
started putting in input displacement
2012-12-17 09:59:04 +00:00
John Cupitt 43d69e74e7 use corner convention everywhere
all interpolators use corner convention
2012-12-13 14:10:52 +00:00
John Cupitt 823068a282 notes update 2012-12-13 13:08:52 +00:00
John Cupitt c5a600b286 tag Radiance images as scRGB
They aren't always, but scRGB is also 0-1 range, so conveniently this
now works:

	vips copy car-stack-eighth.hdr x.jpg
2012-12-13 12:21:02 +00:00
John Cupitt 89ff89ebf8 remove sRGB2XYZ and back
now go via scRGB
2012-12-12 12:43:26 +00:00
John Cupitt c341f0d134 add scRGB functions 2012-12-11 15:25:28 +00:00
John Cupitt eba5f05649 vips_invert() only inverts real part 2012-12-07 11:37:00 +00:00
John Cupitt ee8d11ec6b small cleanups 2012-12-07 11:32:33 +00:00
John Cupitt 3dc10831c1 added vips_bandbool() 2012-12-07 11:17:09 +00:00
John Cupitt 6602b0680a compat wrapper for cross_phase 2012-12-06 21:36:41 +00:00
John Cupitt 1de6c6bcc6 add binary complex ops
cross_phase is the only one atm
2012-12-06 14:52:51 +00:00
John Cupitt a83da34355 more deprecations
im_point*() and im_linreg() this time
2012-12-06 14:10:43 +00:00
John Cupitt 797805f7e3 don't print output args on fail 2012-12-06 13:54:32 +00:00
John Cupitt 81158d5b34 clean up notes 2012-12-05 21:52:37 +00:00
John Cupitt 5b271d16ed deprecate im_maxpos_avg()
and add wrappers for im_maxpos_vec() / im_minpos_vec()
2012-12-05 21:44:41 +00:00
John Cupitt 4b9ca4cfce add compat stubs 2012-12-05 09:09:52 +00:00
John Cupitt 713ecf8252 compiles 2012-12-04 14:57:41 +00:00
John Cupitt 7a202cf95e Merge remote-tracking branch 'origin/master' into newmaxmin
Conflicts:
	TODO
2012-12-04 12:49:04 +00:00
John Cupitt 1aee7b73d5 start new max hacking 2012-12-03 14:53:10 +00:00
John Cupitt 6f22c00df4 NN now rounds down rather than to nearest
nearest-neighbour interpolation now strictly rounds down rather than
rounding to nearest

round to nearest caused strange half-pixels along top/left image edges
during enlargement, and extra 1.5 sized pixels everywhere else

instead we should fix the thing that round to nearest was supposed to fix by
adding an extra pair of params to the affine transform which displace in
input space (dx/dy displace in output space)
2012-11-30 21:35:12 +00:00
John Cupitt c3ef2be4ab preserve jpeg ipct data
now copies over ipct data from app13, thanks Gary
2012-11-21 21:33:50 +00:00
John Cupitt 65b4056c84 jpeg read is less fussy about exif data
even read truncated exif
2012-11-21 18:34:20 +00:00
John Cupitt ef54a06f80 clean up deprecated class list 2012-11-21 11:12:19 +00:00
John Cupitt 74f545fc6f keep exif rationals as a/b
we went via double before, which caused awful problems trying to
generate nice rationals again on save

keep everything as a/b as long as we can
2012-11-16 13:50:49 +00:00
John Cupitt 9abb7a1fd1 Merge remote-tracking branch 'origin/7.30'
Conflicts:
	ChangeLog
	configure.in
	libvips/conversion/tilecache.c
	po/vips7.pot
2012-11-14 14:52:27 +00:00
John Cupitt fdaad16407 better --help output for vips driver prog
now lists possible actions
2012-11-13 12:51:58 +00:00
John Cupitt b6a1c87d9c vips_quadratic() uses an interpolator 2012-11-09 14:53:32 +00:00
John Cupitt 8f364a8b51 rename some _get funcs
all the _get_ funcs that returned a bool have become _isthing()
functions, eg.

vips_object_argument_get_assigned() ->
  vips_object_argument_isset()
2012-11-09 13:08:59 +00:00
John Cupitt 8df32c84c1 more work on vips_quadratic 2012-11-08 13:34:37 +00:00
John Cupitt e951668e45 started adding im_transform() 2012-11-07 14:54:50 +00:00
John Cupitt f3cec87f5f enable seq for colourspace 2012-11-07 10:46:43 +00:00
John Cupitt 26d1f76469 support rgb16 as a source / dest in colourspace
so

vips colourspace x.v x2.v rgb16

will try to make a 16-bit sRGB image
2012-11-06 19:27:15 +00:00
John Cupitt e0b2919f16 add 16-bit sRGB export 2012-11-06 13:53:37 +00:00
John Cupitt c17cd32ea1 sync 2012-11-05 17:16:19 +00:00
John Cupitt faf6e03381 sync 2012-11-02 21:46:11 +00:00
John Cupitt 777d1ea554 better error domain names 2012-11-02 14:41:47 +00:00
John Cupitt 09789ebdfd add @depth option to dzsave
so you can ask for a 1 layer pyramid
2012-11-01 18:11:46 +00:00
John Cupitt 035cf44fe6 final cleanups 2012-11-01 15:59:46 +00:00
John Cupitt 4c5dd969bc rename colour_convert as colourspace
also rework im_icc_ac2rc
2012-11-01 14:59:20 +00:00
John Cupitt 8e72d25c9a better colourspace sniffing 2012-11-01 13:16:54 +00:00
John Cupitt f5790be152 rename UCS as CMC 2012-11-01 10:21:55 +00:00
John Cupitt 63a06e5f81 faster and more accurate sRGB <-> XYZ
just use one table, since all colour channels are the same now
have more points in the float -> int direction, fewer in int -> float
faster out of range detection
2012-11-01 08:53:54 +00:00
John Cupitt a2d4c15049 move dE00 to a class 2012-10-31 11:22:28 +00:00
John Cupitt 4901c9f6a5 clean out debugging code 2012-10-31 09:17:21 +00:00
John Cupitt 8e0de67f65 sync 2012-10-30 17:16:55 +00:00
John Cupitt 6e1e3d4be1 better cache trace, small fixes 2012-10-29 17:19:15 +00:00
John Cupitt 1e121f2da7 fixes to lcms2 support 2012-10-25 13:55:26 +01:00
John Cupitt f8a160de44 Merge remote-tracking branch 'origin/master' into colour
Conflicts:
	ChangeLog
	configure.in
	po/vips7.pot
2012-10-21 12:24:08 +01:00
John Cupitt d629e0cba7 merge parallel-read work 2012-10-17 00:19:24 +01:00
John Cupitt 3e1b30dbf9 TODO update 2012-10-09 11:11:05 +01:00
John Cupitt 2065317272 use new converter 2012-09-27 14:56:51 +01:00
John Cupitt d56943f2c2 add vips_colour_convert()
generic thing to change colourspace
2012-09-26 21:53:02 +01:00
John Cupitt 52a188c3c5 new icc stuff now works 2012-09-26 14:53:14 +01:00
John Cupitt e793d38aa7 new icc transformer compiles 2012-09-25 22:06:24 +01:00
John Cupitt 7130a74d0e redo rad2float / float2rad as classes 2012-09-20 15:13:44 +01:00
John Cupitt 496b4373a4 redo im_UCS2LCh() and im_LCh2UCS() as classes 2012-09-19 14:13:37 +01:00
John Cupitt a38fa9302e redo im_Lab2XYZ() as a class 2012-09-18 14:14:08 +01:00
John Cupitt 3836faffcb Merge remote-tracking branch 'origin/master' into colour
Conflicts:
	ChangeLog
	TODO
	configure.in
2012-09-15 17:42:06 +01:00
John Cupitt 81b962c447 todo updates 2012-09-13 13:27:55 +01:00
John Cupitt b3a8ff3378 linecache was oversized
the linecache resizer forgot to take the strip height into account when
growing, causing mem use to be higher than necessary
2012-09-13 13:25:23 +01:00
John Cupitt 5b03646799 Merge remote-tracking branch 'origin/master' into colour
Conflicts:
	ChangeLog
	TODO
	configure.in
2012-09-06 16:29:22 +01:00
John Cupitt 0c87863222 argh still deadlocks on example.rb 2012-09-04 14:56:22 +01:00
John Cupitt 30a0b4e1bc sync 2012-08-31 17:48:35 +01:00
John Cupitt 4ef825014d extract is sequential again
a hack in seq.c will skip ahead if the very first read is not at line 0
2012-08-24 17:03:09 +01:00
John Cupitt 70bde1dd1e more tuning 2012-08-23 22:01:52 +01:00
John Cupitt 65f679c7ac add a line cache
add vips_linecache() ... like tilecache, but caches scanlines and sizes
dynamically with request size
2012-08-23 14:51:57 +01:00
John Cupitt 45e3c0bd39 fix some warnings from jpeg write
jpeg write with a non-jpeg source could produce some warnings as it
tried to update exif that wasn't there
2012-08-14 14:31:08 +01:00
John Cupitt 368d3c2b8f test for gtk-doc in bootstrap 2012-08-14 11:00:23 +01:00
John Cupitt 4cb63cf1ba update the C++ binding
and the Python one
2012-08-06 22:02:34 +01:00
John Cupitt 3276c636f7 add support for VipsInterpolate to the C++ API
quick and ugly hack, this will be replaced in vips8

necessary to get affinei and affinei_all in Python
2012-08-06 16:06:17 +01:00
John Cupitt dab22df75b fixes to deep zoom write
- shrink down to a 1x1 pixel tile, even for very long and thin images
- round image size up on shrink
- write a .dzi file with the pyramid params
- default tile size and overlap now matches the openslide writer

thanks to Benjamin Gilbert for pointing out the errors
2012-08-06 15:14:59 +01:00
John Cupitt 7ef115161d sync
finished ruby-vips testing
2012-07-20 15:04:49 +01:00
John Cupitt a71fe51d2d support "rs" mode in im_open()
vips7 compat mode now supports "rs" mode --- sequential read

ruby-vips uses this to get :sequetial=>true working
2012-07-20 13:07:49 +01:00
John Cupitt 5778dfac1a remove the version numbers from the .pc files
we used to have minor version numbers in the pkg-confiog files, eg:

pkg-config vips-7.28 --cflags

The idea was to make working with multiple installed versions (something
I do a lot at least) easier. But it was also annoying and made upgrading
harder for downstream packages. And the benefits were very marginal.
2012-07-20 10:22:43 +01:00
John Cupitt bb95b54679 oops vips7 png read was broken 2012-07-19 13:59:37 +01:00
John Cupitt 669babb177 sync 2012-07-13 13:51:31 +01:00
John Cupitt 3476e39c7e fix a leak in vips7 support
there was a ref cycle being created in file2vips ... fixed
2012-07-13 12:26:51 +01:00
John Cupitt 205f13eccb sync 2012-07-13 09:58:58 +01:00
John Cupitt 2c37e77dd8 small tiff save cleanups 2012-07-13 09:30:52 +01:00
John Cupitt 501fabccbe improvements to tiff/png load in vips7
same as we did for jpg

some work on pyramid save as well
2012-07-12 14:50:56 +01:00
John Cupitt f780e2b211 sync 2012-07-12 09:34:27 +01:00
John Cupitt 25ad2b7a53 turn off seq mode in vips7
the new sequential mode readers for tiff/jpg/png were not working well
from the vips7 command-line: they either decompressed twice, or handed
over a sequential mode image

it should now work as well as it did pre-seq.
2012-07-12 09:05:14 +01:00
John Cupitt 17b2592883 sync 2012-07-10 21:50:28 +01:00
John Cupitt 2332e0bfc3 move the vips7 loaders away from VipsForeign
the vips7 loaders were a thin layer over the new VipsForeign system

however! VipsForeign does various "useful" things, like open via disc,
and this resulted in stuff like

	vips im_jpeg2vips huge.jpg x.v

decompressing to a temp file before copying to x.v

im_jpeg2vips() and friends now call the low-level loaders directly and
avoid the extra mechanisms in VipsForeign

"nip2 huge.jpg" was loading twice as well, for the same reason
2012-07-10 14:38:38 +01:00
John Cupitt 643dc28950 turn on seq mode automatically in cli
cli operations turn on seq mode automatically when they can

vips_operation_get_flags() added: lets you attach a set of flags to an
operation

flags for now are "nocache" (replacing the old nocache system) and "seqential"

if vips_object_set_argument_from_string() from string sees "seq" flag on the
object for which it is setting the arg, it enables sequential mode

all operations which can run sequentially have been tagged

the operation printer knows about flags and can display them
2012-07-10 10:51:40 +01:00
John Cupitt af1f2b47c1 add "rs" image open mode 2012-07-09 21:35:53 +01:00
John Cupitt 911a1c7e71 move vips_operation_set_valist_optional() to obj
now a method on object, vips_object_set()
2012-07-09 14:51:37 +01:00
John Cupitt 3137ad983c sync 2012-07-09 09:03:12 +01:00
John Cupitt 89527b80eb fix odd tile height + no overlap
dzsave with zero overlap and odd height was broken

also, fix cache init
2012-07-08 10:37:35 +01:00
John Cupitt b32b54d0eb TODO update 2012-07-02 10:10:40 +01:00
John Cupitt 3694a2edc5 add sequential mode to vips7
the tiff and jpg readers let you give :seq as well
2012-06-24 09:44:50 +01:00
John Cupitt daac11b01c add "minimise" signal
on end of an image loop, send a "minimise" signal down the pipeline

tilecache listens for this signal on its output and drops the cache

helps reduce ruby memuse
2012-06-23 11:51:57 +01:00
John Cupitt 928827960a sync 2012-06-21 14:54:22 +01:00
John Cupitt 7a51b59016 some vips_shrink() tuning
tried an int coordinate path for vips_shrink(), no significant speedup
2012-06-21 13:11:35 +01:00
John Cupitt f07fb25ab5 fix write RGBA as JPG
it was saving RGBA as CMYK JPG, with comical results (thanks Tobias)
2012-06-17 22:16:20 +01:00
John Cupitt 0a74a34096 remove logging, fix shrink hint
vipsthumbnail works again now
2012-06-15 09:28:57 +01:00
John Cupitt 021ba9a01c sync 2012-06-14 09:31:05 +01:00
John Cupitt a2c37d10f0 sync 2012-06-13 09:45:32 +01:00
John Cupitt 1f69943639 Merge remote-tracking branch 'origin/master' into colour 2012-05-17 21:36:12 +01:00
John Cupitt d5bd8d0de0 improve resolution unit handling in tiff save
the deprecated tiff saver used to use pixels/mm in resolution
specification, rather than the user's suggested unit
2012-05-17 11:13:38 +01:00
John Cupitt c394f54952 sync 2012-05-16 14:51:22 +01:00
John Cupitt 40f60c4b9e Merge remote-tracking branch 'origin/master' into colour
Conflicts:
	TODO
	libvips/colour/colour.c
2012-04-18 17:20:36 +01:00
John Cupitt 0231cdf134 Revert "add ARGB coding"
This reverts commit 78b5ad5883.

Conflicts:

	libvips/colour/im_rad2float.c
2012-04-04 17:18:32 +01:00
John Cupitt 3d514cc16f hackety hack 2012-04-04 09:39:09 +01:00
John Cupitt 78b5ad5883 add ARGB coding 2012-04-02 11:12:40 +01:00
John Cupitt 4595413e0d add ICC profile read/write for png 2012-03-13 14:22:13 +00:00
John Cupitt 3297400952 disable debug in production builds
by default all debug (including assert and cast checks) is disabled in
production builds
2012-03-02 14:19:32 +00:00
John Cupitt 5771be4186 xres/yres become double
we had them as float before to make load/save easier, but that means we
need lots of hacks to make properties work correctly

instead, convert to/from float on read/write and have them as double
internally
2012-03-02 12:54:50 +00:00
John Cupitt 792ff7f03d sync 2012-03-02 10:16:58 +00:00
John Cupitt 59c655683a relax assert() checks for foreign
load from buffer can have get_flags() but no get_flags_filename(),
remove assert test
2012-03-01 14:21:06 +00:00
John Cupitt 8344dbb808 complex ==, != was broken
argh the broken test suite was hiding some nasties
2012-03-01 14:09:52 +00:00
John Cupitt 58439e31fb fix filename display in "header" and friends 2012-02-29 13:49:48 +00:00
John Cupitt 6ab6ec410c cleanups 2012-02-28 14:17:02 +00:00
John Cupitt 6ba96b2333 fix hist normalisation
hist norm was broken due to the VipsStats width change
2012-02-28 12:05:25 +00:00