Commit Graph

855 Commits

Author SHA1 Message Date
John Cupitt 0d79221853 memuse improvements
- conv is now SMALLTILE
- more instrumentation
- better buffer recycling
- quicker buf freeing
2013-12-17 15:21:21 +00:00
John Cupitt bd3b3e04f9 sync 2013-12-13 17:34:38 +00:00
John Cupitt bfcd50acf2 works!
reusing work, though memuse seems high?
2013-12-13 16:51:01 +00:00
John Cupitt 61068cd03d added vips::init() and vips::shutdown()
OS X mav was having trouble linking im_init_world() via the C++ API, so
we now have C++ functions for startup and shutdown.
2013-12-11 14:43:58 +00:00
John Cupitt 4ec50c3715 on reflection, remove cmyk2srgbjpeg again
simpler to updat ethe blog post with a shell-script version using the
new icc_transform operation
2013-12-10 12:29:39 +00:00
John Cupitt aede2cafce paste in cmyk2srgbjpeg
many thanks Nicolas
2013-12-10 09:23:34 +00:00
John Cupitt b3d31ced79 vipsprofile graphs memory use
marks malloc/free as well
2013-12-09 13:45:41 +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 1da3064e7b Merge remote-tracking branch 'origin/7.36' 2013-11-29 22:15:04 +00:00
John Cupitt 53562905d4 remove use of PATH_MAX
helps gnu hurd, thanks Jay
2013-11-28 09:05:53 +00:00
John Cupitt 0bf5ee12fd more calcs in output 2013-11-26 17:53:44 +00:00
John Cupitt 5810ac761e Merge branch 'master' into gate 2013-11-20 16:32:39 +00:00
John Cupitt c6d9695431 Merge branch '7.36' 2013-11-20 16:32:09 +00:00
John Cupitt 7a5af8b610 allow larger tile_size in dzsave
bump the tile_size limit up, thanks Petter Ranefall
2013-11-20 15:27:47 +00:00
John Cupitt 4feaec77c3 Merge branch 'master' into gate 2013-11-20 15:12:26 +00:00
John Cupitt dc24afb28f Merge remote-tracking branch 'origin/7.36'
Conflicts:
	ChangeLog
	configure.ac
2013-11-20 15:12:14 +00:00
John Cupitt 88b2f4350d better cache sizing in unbuffered sequential mode
Previously we only ever had a single tile of cache in unbuffered mode.
This could break with many threads, if thread requests crossed tile
boundaries.

Now have one tile per thread, plus a bit for slop.
2013-11-20 14:46:46 +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 8b2dc6f53f Merge remote-tracking branch 'origin/master' 2013-11-16 18:40:24 +00:00
John Cupitt 8992110a85 Merge remote-tracking branch 'origin/7.36'
Conflicts:
	ChangeLog
	configure.ac
2013-11-16 13:18:45 +00:00
John Cupitt 4065ec925c add im_init_world() entry point
C++ programs need this as a function rather than just a macro, see
VImage.h

thanks Phil for finding this
2013-11-16 12:57:05 +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 847332a77e add --strip option to jpegsave
drops all metadata
2013-11-12 17:30:33 +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 8dfe4611d2 add a --linear option to vipsthumbnail
thanks to Nicolas for the prodding
2013-11-12 09:53:41 +00:00
John Cupitt b3484e1c8e rename vips_gammacorrect() as vips_gamma()
and swap exp to 1 / exp

also works for any format
2013-11-11 14:57:55 +00:00
John Cupitt b1f01af01b add vips_crop()
a synonym for vips_extract_area()
2013-11-11 14:31:41 +00:00
John Cupitt 6351bad027 Merge remote-tracking branch 'origin/7.36' 2013-11-09 16:03:24 +00:00
John Cupitt 3380f15da5 fix --delete option to vipsthumbnail
oops, ! missing
2013-11-09 13:10:11 +00:00
John Cupitt f8f61fedf3 operation flags were not disjoint
meaning CACHE / NOCACHE was not working correctly
2013-11-09 11:54:33 +00:00
John Cupitt 63c1efc3b4 fix blocking of caching of seq load
we were setting nocache too late for the cache to see, move nocache
logic to _build()
2013-11-09 11:38:32 +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 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 079c9775aa sequential mode for radiance read 2013-11-04 14:21:22 +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 e1f2c06772 add @point subsample mode
to vips_subsample()
2013-11-02 09:33:10 +00: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 dec76f566d Merge remote-tracking branch 'origin/master' into rot45 2013-10-25 12:58:17 +01:00
John Cupitt 3dce5951c2 reverse similarity rotation direction convention
The rest of vips uses +ve-is-clockwise convention, like almost all image
processing packages. The new similarity operator was mistakenly using the
mathematical +ve-is-anticlockwise convention, oops.
2013-10-25 12:56:24 +01:00
John Cupitt 33f978f0ca add vips_matrixprint() 2013-10-25 12:02:02 +01:00
John Cupitt 2720026a61 redo im_rank_image() as a class 2013-10-23 14:54:22 +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 8d270d49c4 allow non-square bounding boxes in vipsthumbnail
thanks seth
2013-10-23 09:37:45 +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 0bfb23eca8 add "interlace" option to vips_jpegsave()
see https://github.com/jcupitt/libvips/issues/77
2013-10-21 12:16:33 +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 7ef4573f18 redo im_log_*mask() as classes 2013-10-20 16:10:22 +01:00