Commit Graph

96 Commits

Author SHA1 Message Date
Kleis Auke Wolthuizen 0337c09700
Cleanup gettext handling (#2695)
Use GLib's i18n support instead of copying and pasting that
logic into its own header. This deprecates the vips/intl.h
header in favour of glib/gi18n.h.
2022-02-27 15:27:28 +00: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 870610af4e reduce stack usage to help musl
don't allocate a pointer array on the stack in arithmetic.c

see f3ef6e52ea
2018-09-04 08:46:37 +01:00
John Cupitt f3ef6e52ea bump max input images for sum
was only 64
2018-08-16 15:23:24 +01:00
John Cupitt 1e7541bfb8 add find_trim
compiles, not yet working
2017-07-25 14:52:45 +01:00
John Cupitt 362c7efdfc argh reapply seq removal 2017-03-06 11:55:38 +00:00
John Cupitt e6b20cbd0f Revert "remove stalling"
This reverts commit 959f412380.
2017-02-27 10:26:32 +00:00
John Cupitt 959f412380 remove stalling 2017-02-21 15:03:15 +00:00
John Cupitt f302bd6570 all working! 2017-01-12 14:06:54 +00:00
John Cupitt d1ef5a6890 compiles, needs more testing 2017-01-11 14:05:50 +00:00
John Cupitt fa79fcde35 more overcomp reporting 2016-05-19 14:40:16 +01:00
John Cupitt 05156edd15 add orc path for reducev
works, but still not quite right, see some banding
2016-03-18 17:41:51 +00:00
John Cupitt 3b32200cc1 sizealike() and friends elide completely
sizealike() / formatalike() and bandsalike() used to just vips_copy() if
the image didn't need any changes ... this was fast, but left a
vips_copy_gen() in the pipeline, wasting a lot of space on the C stack
during recursion.

They now vanish completely if the image is already in the right format.
Since we call them before most image processing operations, and
often all three of them, this saves a lot of C stack, more than x2 even
in simple cases.

There might also be a measureable CPU saving if the operations are very
simple (eg. insert).

See:

http://stackoverflow.com/questions/33658795/difficulty-with-handling-very-large-image-using-vips
2015-11-13 14:48:02 +00:00
John Cupitt d3351c77a3 revert a test change for coverity 2015-09-30 11:47:10 +01:00
John Cupitt d88dd1ab72 fix a few coverity issues
a couple of minor bugs, and a lot of warnings
2015-09-30 09:54:50 +01:00
John Cupitt d20f0bf617 improve bandalike
better setting of interpretation in output
2015-03-05 12:10:26 +00:00
John Cupitt 394149e9e8 fix all docs warnings 2014-11-17 10:32:40 +00:00
John Cupitt 32a8fe117e start working on --disable-deprecated
need to move im_conv() etc to classes to finish this
2014-07-25 18:06:52 +01:00
John Cupitt ee53b01886 vips_hough_circle() added 2014-04-01 12:27:15 +01:00
John Cupitt 9a1fa499f5 split hough to a base class and a line detector 2014-03-24 16:56:54 +00:00
John Cupitt 0e608c89bf basic hough transform seems to work 2014-03-22 17:07:35 +00:00
John Cupitt 4c31c77d80 add vips_sum()
sum an array of images
2014-03-18 19:39:47 +00:00
John Cupitt 25fbe71c74 do im_read_point() / im_draw_point() 2014-02-10 21:54:54 +00:00
John Cupitt fb489bad53 move vips_image_decode() into the public API 2014-02-03 14:29:57 +00:00
John Cupitt d059431867 more auto-decode stuff
more to do though
2014-01-22 14:53:48 +00:00
John Cupitt e489d2e099 add --uchar option to vips_linear() 2014-01-14 19:31:19 +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 7c43e3d332 remove the orc stuff from arithmetic
no faster than gcc auto vec
2013-12-02 11:22:08 +00:00
John Cupitt eb3ad6d64f add lots of instrumentation
also svg output
2013-11-26 14:57:56 +00: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 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 b11de1ce22 redo im_profile() as a class
also fix an oops in the new project.c code
2013-09-21 15:21:15 +01:00
John Cupitt 2088e3d111 im_project() becomes a class 2013-09-16 12:19:48 +01:00
John Cupitt 333d15aed0 new hist class structure 2013-09-03 14:49:57 +01:00
John Cupitt 13cf12f0df more im_histindexed() to a class 2013-08-19 15:14:15 +01:00
John Cupitt e2215bd04c redo im_histnD() as a class 2013-08-17 16:59:28 +01:00
John Cupitt ae6d917811 redo im_histgr() as a class 2013-08-12 11:47:53 +01:00
John Cupitt 2fd2fd58f7 fix up gtk-doc
fix various problems:

- out of date IGNORE in doc/reference/Makefile.am
- name clashes between private .h and public
2013-06-17 20:16:20 +01:00
Benjamin Gilbert 8cc76a6ba3 Update address for Free Software Foundation
Also update LGPLv2.1 license text from the copy currently on the GNU
website.
2013-03-07 00:40:19 -05:00
John Cupitt 3dc10831c1 added vips_bandbool() 2012-12-07 11:17:09 +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 97d1431abe move arith_dispatch to deprecated 2012-12-05 08:52:04 +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 777d1ea554 better error domain names 2012-11-02 14:41:47 +00:00
John Cupitt 8c894f283f fix a segv with colour difference 2012-10-30 10:57:33 +00:00
John Cupitt 26f2105e5b make everything LGPL2.1+
some files were incorrectly tagged as GPL, thanks Dmitry
2012-09-17 11:52:32 +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 c197e2f90e more robust enum printing 2012-01-27 17:14:59 +00:00
John Cupitt d0ec401a12 hackery to get goi working 2011-12-31 18:22:42 +00:00
John Cupitt a62f5f8832 remove wio_output 2011-12-21 12:08:29 +00:00