Commit Graph

1700 Commits

Author SHA1 Message Date
John Cupitt d3f87c5f44 notes 2016-01-20 11:58:59 +00:00
John Cupitt dbf9a5ed1c fix dzsave tile-width default
was wrong for google / zoomify layouts

revise tests too
2015-12-30 11:23:33 +00:00
John Cupitt 1593b23fc4 allow smaller rowsperstrip
and some other tiny things
2015-12-13 14:55:56 +00:00
John Cupitt 5916e25c31 rename python bandjoin as ibandjoin
oh argh class and instance methods are in the same namespace, so we have
to rename the instance one as ibandjoin

also, start adding a test for arrayjoin
2015-12-12 12:29:20 +00:00
John Cupitt 18baf40b1a fix mapim typo
oops! typo ... also an off-by-one issue for larger stencils

more error checking in interpolators

fix rounding in nohalo/lbb ... they were rounding to nearest in the
interpolator, rather than using floor. This broke assumptions about
stencil position elsewhere. The right way to do centre convention is to offset
the whole input by 0.5 pixels.
2015-11-22 10:29:45 +00:00
John Cupitt 16c4eeabad python does auto complx/uncomplx
this is a bit ugly :-(
2015-11-20 16:29:43 +00:00
John Cupitt a8b78371f8 better run_cmplx()
ready to go into Vips.py
2015-11-20 14:55:28 +00:00
John Cupitt 32f6f5ed22 fix atan() for -ve angles 2015-11-20 14:45:51 +00:00
John Cupitt 8506ff13a6 try to improve vips_resize() quality
small improvements to vips_resize() quality:

* turn down the anti-alias filter a little so we don't smudge out texture
* don't do the final sharpening pass if we skipped the anti-alias filter
* fix a >/>= mixup which meant we didn't sharpen for small resizes
2015-11-19 15:22:23 +00:00
John Cupitt 40173838d1 use atan2 and hypot more
might be a little quicker
2015-11-19 14:34:03 +00:00
John Cupitt 743b21e83e fix off by 1 error 2015-11-19 13:25:52 +00:00
John Cupitt d27bbd6803 add mapim test
and a python mapim example
2015-11-19 11:44:58 +00:00
John Cupitt e47b631105 add notes 2015-11-19 09:55:03 +00:00
John Cupitt 8e6ed3ef30 compiles 2015-11-16 14:58:51 +00:00
John Cupitt d88304a297 sync 2015-11-12 09:15:31 +00:00
John Cupitt 03a4e54649 slightly less stupid float->int mask
still not quite right
2015-11-11 16:51:08 +00:00
John Cupitt f32ab06a1c fix test suite 2015-11-11 15:00:15 +00:00
John Cupitt d94a2807c9 smarter cache sizing for vips_resize
see comment in code, should now account for max delay possible
2015-11-11 10:23:50 +00:00
John Cupitt aedb174537 note 2015-11-11 08:33:41 +00:00
John Cupitt ca51b46e9a docs, c++, all done 2015-11-07 20:54:00 +00:00
John Cupitt 295b18585a python uses bandjoin_const when possible
added a test case, speedup seems worthwhile
2015-11-07 20:34:56 +00:00
John Cupitt 9cb2674a77 now works woo
python interface plus test and benchmark to go

update c++ too I guess

oh docs as well sigh
2015-11-07 18:47:02 +00:00
John Cupitt 2f98f38d8a started bandjoinconst 2015-11-06 14:58:32 +00:00
John Cupitt de65da85b9 smarter conversion of float masks to int
we were just rint()ing masks going from float -> int, but this could
give bad results in some cases, with output images becoming darker
or lighter, as individual elemets moved up or down

now we adjust the output scale to try to keep the overall brightness
the same, if we can

see: https://github.com/jcupitt/libvips/issues/344
2015-11-06 14:29:23 +00:00
John Cupitt d38a78d0ea notes 2015-11-05 12:40:03 +00:00
John Cupitt 82d96fb73e notes 2015-11-04 21:19:31 +00:00
John Cupitt 30a3d2f7fa fix shrink with non-int args
fix a silly bug, add a test
2015-11-04 12:00:49 +00:00
John Cupitt d126a733a0 better rgb16/grey16 conversion
things like float tagged as rgb16 did not save well as png ... new
conversion rules should help

see https://github.com/jcupitt/libvips/issues/344
2015-11-04 11:34:52 +00:00
John Cupitt 11ce13d43d enable new shrink code
2x faster, much lower memuse
2015-10-31 12:15:48 +00:00
John Cupitt 582a7f1810 shrink2 now done
big mem saving, still a bit slower though
2015-10-31 10:43:08 +00:00
John Cupitt da8f236f95 try a split shrink
not quite done yet
2015-10-30 18:15:14 +00:00
John Cupitt 07ca974273 note on IM link problems
vips won't build against current imagemagick

seems to be a change in IM, see:

	http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=28603

see also:

https://github.com/jcupitt/libvips/issues/343
2015-10-30 14:53:35 +00:00
John Cupitt ceb1b96d06 note that quadratic is unfinished 2015-10-08 17:40:37 +01:00
John Cupitt e62df8c573 fix more cppcheck warnings
cppcheck now passes, with a few false positives

see https://github.com/jcupitt/libvips/issues/331
2015-09-29 09:23:01 +01:00
John Cupitt 6ec2364f84 TODO note 2015-09-09 16:08:03 +01:00
John Cupitt c4206536ee ping travis 2015-07-25 04:52:26 +01:00
John Cupitt d459b2f95d update notes 2015-07-21 16:06:18 +01:00
John Cupitt 4dec42a9e5 oops 2015-07-17 13:20:08 +01:00
John Cupitt 83cd265e7d one strange issue left 2015-07-16 15:40:11 +01:00
John Cupitt 69fc2c1b7c getting closer ...
fix RefString handling, add a test case
2015-07-16 11:14:33 +01:00
John Cupitt 6ffdc6a7b7 better sanity checking for input profiles
previously it could get RGBA and CMYK images mixed up, see:

https://github.com/lovell/sharp/issues/237
2015-06-26 11:07:00 +01:00
John Cupitt 17bace3483 fix corrupt test image 2015-06-22 06:52:02 +01:00
John Cupitt 230cc975fc Merge branch 'master' into add-hsv
Conflicts:
	TODO
2015-06-21 19:33:19 +01:00
John Cupitt 7077356496 another try at improving progress feedback 2015-06-21 19:28:10 +01:00
John Cupitt 12764053db note bug 2015-06-20 11:23:13 +01:00
John Cupitt 801cb67b6f notes 2015-06-20 11:17:04 +01:00
John Cupitt e4c53e59dd fix a compile error 2015-06-20 10:54:24 +01:00
John Cupitt 6fc3ec028c better progress feedback 2015-06-19 15:00:48 +01:00
John Cupitt e107dd11c0 test band fold/unfold factors 2015-06-11 12:49:11 +01:00
John Cupitt d7d8e03a86 add @factor to bandunfold 2015-06-11 09:45:14 +01:00
John Cupitt 65c343552c add @factor option to bandfold
how much to fold by
2015-06-10 14:57:50 +01:00
John Cupitt e83a3bbfd1 add a test for byteswap() 2015-06-07 16:24:52 +01:00
John Cupitt e9720afb18 add vips_bandfold()/vips_bandunfold()
was part of vips_copy(), but it was very ugly there
2015-06-05 14:52:05 +01:00
John Cupitt dbd852211e move bytw swapping out to vips_byteswap()
it was an option to vips_copy(), ugly!
2015-06-05 13:56:26 +01:00
John Cupitt e84b97038f add mono image -> many band column
or row ... handy for loading LUT images from CSV files
2015-06-04 16:02:41 +01:00
John Cupitt 5cb2239d7d try to support DOS ppm/csv files on linux
swap \r\n for \n in vips__fgetc()
2015-06-04 12:58:30 +01:00
John Cupitt a511221984 notes 2015-06-04 09:38:08 +01:00
John Cupitt c35e2e5427 add RefString getter
to python now unpacks VipsRefString on get_value()
2015-06-02 13:32:48 +01:00
John Cupitt baf78fc04a oops, fix base64 encode/decode padding
we were adding up to two bytes of null to the end of base64-encoded
binary data due to a signed/unsigned mixup

add a test for this, plus a test for vips file format
2015-05-31 18:17:26 +01:00
John Cupitt 98e80903e0 metadata was not being saved to vips files
broken by the rewind changes a few weeks ago

added a test too
2015-05-28 16:19:32 +01:00
John Cupitt 045678d438 vips_copy() can turn bands into width
handy for slicing up very large 3D arrays
2015-05-15 14:24:53 +01:00
John Cupitt 8566f3999a bug? 2015-05-14 21:50:12 +01:00
John Cupitt 29fc735f90 Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2015-05-11 13:30:35 +01:00
John Cupitt 25bf910f21 vipsthumbnail uses vips_premultiply() 2015-05-09 16:33:38 +01:00
John Cupitt ec52d1b922 change vips_flatten() alpha rules
now match vips_premultiply()

add tests

foreign knows about new logic
2015-05-09 12:10:42 +01:00
John Cupitt 9dda68f8cd final polish 2015-05-09 10:21:31 +01:00
John Cupitt ac800fd034 note on vipsthumbnail 2015-05-08 14:51:55 +01:00
John Cupitt 66c51b7d23 add an experimental premultiply operation 2015-05-07 23:42:02 +01:00
John Cupitt ad017dc56f add more C++ convenience functions
flipver() etc.
2015-04-24 10:10:44 +01:00
John Cupitt 9f0ecae95a better vips_warn() docs 2015-04-13 15:53:21 +01:00
John Cupitt 8d09db7cd4 found some old code we can remove 2015-03-05 14:49:13 +00:00
John Cupitt d20f0bf617 improve bandalike
better setting of interpretation in output
2015-03-05 12:10:26 +00:00
John Cupitt 339f268200 add some API for args, fix a docs messup 2015-03-02 22:02:33 +00:00
John Cupitt 094f690042 notes 2015-03-02 11:30:29 +00:00
John Cupitt e24fddc808 notes 2015-03-02 08:57:02 +00:00
John Cupitt 5ccb5ad70d add () overload to python
for vips_getpoint()
2015-03-01 12:15:48 +00:00
John Cupitt ded01df512 c++: add [], change ()
() used to return element zero, just return a vector

add [] overload
2015-03-01 10:43:02 +00:00
John Cupitt 367819b5cc oops 2015-02-28 22:56:09 +00:00
John Cupitt 5d912fdbbb add [] overload to python
index and slice image bands
2015-02-28 16:53:06 +00:00
John Cupitt a49e6772fd notes 2015-02-27 11:54:18 +00:00
John Cupitt fc5a4a917a make file format readers close fds early
we were using two fds per open image, now we just use one

jpg, magick, tiff, png
2015-02-26 14:09:01 +00:00
John Cupitt 2b9471b19d add note on tiff autorot 2015-02-24 14:04:04 +00:00
John Cupitt 78acd9b7a0 use a better name for the dzsave temp dir
see https://github.com/jcupitt/libvips/issues/242

dzsave with deepzoom layout and fs container writes a temp dir called
dzsave-temp-324857 or similar, and makes sure that this directory does
not exist

after write, the foo_files and foo.dzi files are picked out to the
current dir and the temp removed
2015-02-22 15:59:31 +00:00
John Cupitt 98b9214b4c add a note 2015-02-22 09:37:56 +00:00
John Cupitt 01d0a5f05e notes 2015-02-17 15:14:18 +00:00
John Cupitt 53c53006a6 add some more tests for the tiff saver 2015-02-17 15:04:15 +00:00
John Cupitt ed5c90175a final cleanup 2015-02-17 14:45:39 +00:00
John Cupitt 8f7c2c7110 sort out alpha going to and from 16-bit
rewritten sRGB <-> scRGB so that 16-bit alpha is scaled to float 8
2015-02-12 17:50:38 +00:00
John Cupitt 244ab301f7 start final push for vips 8 2015-02-11 17:01:02 +00:00
John Cupitt 5b90e36559 notes 2015-02-10 14:44:35 +00:00
John Cupitt 640477dc62 better python imageize
sets interpretation as well ... was causing problems with jpg save
colour transforms
2015-02-10 14:08:37 +00:00
John Cupitt 62177ad24e notes 2015-02-10 10:17:01 +00:00
John Cupitt 346a9e70c0 remove --disable-cxx flag
it was getting too hard to support :( automake now generates libtool
lines before configure runs, so it can't know we don't want a C++ link

see https://github.com/jcupitt/libvips/issues/231
2015-02-07 10:37:13 +00:00
John Cupitt d53e63e50f note 2015-02-05 14:55:40 +00:00
John Cupitt d6dbfea064 much faster RGB16 -> sRGB path 2015-02-04 16:48:25 +00:00
John Cupitt ddb43172f3 use new pyvips8 array constant syntax
also add median filter convenience function
2015-01-29 16:41:11 +00:00
John Cupitt 21b4748fe1 support 2D image array constants in py 2015-01-29 14:52:55 +00:00
John Cupitt d6ff5f24c6 all tests done and working
phew
2015-01-29 14:27:18 +00:00
John Cupitt 2a1a371e5c started test_resample.py 2015-01-29 09:29:10 +00:00
John Cupitt c384e2b664 finish morph
and add erode/dilate convenience functions to Vips.py
2015-01-28 21:58:08 +00:00
John Cupitt 6c35ae5540 display default and range in usage
eg. we now see:

$ vips gamma
gamma an image
usage:
   gamma in out
where:
   in           - Input image, input VipsImage
   out          - Output image, output VipsImage
optional arguments:
   exponent     - Gamma factor, input gdouble
  			default: 2.4
			min: 1e-06, max: 1000
operation flags: sequential-unbuffered
2014-12-30 13:16:22 +00:00
John Cupitt 32625146db cpp can set enums from strings
eg.

	set("extend", "copy")->
2014-12-30 11:27:04 +00:00
John Cupitt 1b86de44f4 "make check" works uninstalled
and skips tests for missing features
2014-12-22 10:35:26 +00:00
John Cupitt a560d3b8c2 more osx help 2014-12-20 22:25:19 +00:00
John Cupitt 6e6cabb6e0 better pyvips8 notes 2014-12-18 10:25:42 +00:00
John Cupitt abdd98409d add configure option for pyvips8
it tests for pygobject as well
2014-12-18 09:15:58 +00:00
John Cupitt d454b9161e more tests 2014-12-17 21:34:47 +00:00
John Cupitt 6e2135d8b5 mask builders take prec, not integer
vips_gaussmat() and vips_logmat() used to default to float, but
vips_conv() defaulted to int ... so this failed:

	vips gaussmat m.v 2 0.1 --separable
	vips convsep k2.jpg x.jpg m.v

since we were using a small float mask with an integer convolution

This change makes everything int by default, with gaussmat having a new
param called --precision whose arg can be int or float.

The old @integer param is deprecated.
2014-12-16 20:48:11 +00:00
John Cupitt 1f85ef7fbb more convsep tests 2014-12-16 14:58:21 +00:00
John Cupitt 71bb0e81d1 better Vips.py install
more work on test_convolution
2014-12-15 18:12:47 +00:00
John Cupitt b803b8f304 oops 2014-12-12 15:56:16 +00:00
John Cupitt a9109904c1 make check both py2 and py3 2014-12-12 14:50:31 +00:00
John Cupitt b4b8b8bd96 use bytes() for VipsBlob in python3 2014-12-11 13:08:14 +00:00
John Cupitt d5c164898e note 2014-12-11 09:33:12 +00:00
John Cupitt 9866127e6a small cleanups 2014-12-10 15:31:22 +00:00
John Cupitt 037f6cd162 tiles tiff write needs to cache input
to keep it seq, as it promises to be
2014-11-20 10:07:28 +00:00
John Cupitt ee4416040b make a test suite
put the python and non-nip2 bits of the nip2 suite together

some test images too
2014-11-19 15:01:28 +00:00
John Cupitt 384a5e05dc change parameters of vips_gaussblur()
sorry :-(

The old param (passing sigma*2 as an int) were just too confusing
coming from other packages. This new behaviour matches ImageMagick, and
almost everyone else in the world.

A new optional param lets you set the minimum amplitude as well.
2014-11-19 12:27:26 +00:00
John Cupitt 2a4f56ff9f notes 2014-11-19 09:51:52 +00:00
John Cupitt 77d5bd8d08 add sharpening step to vips_resize() 2014-11-18 21:39:29 +00:00
John Cupitt 589e15b8a4 better vips_resize() 2014-11-18 18:37:19 +00:00
John Cupitt c120edde0d get make dist going 2014-11-18 14:52:52 +00:00
John Cupitt dda412c85f add command-line option parsing to python 2014-11-18 11:29:32 +00:00
John Cupitt 240f0f1fd2 more doc work 2014-11-17 12:25:46 +00:00
John Cupitt 394149e9e8 fix all docs warnings 2014-11-17 10:32:40 +00:00
John Cupitt 703514b85d fix gtkdoc expansions in intro 2014-11-16 18:01:19 +00:00
John Cupitt 71c5069b42 revise cplusplus gen scripts 2014-11-16 12:19:04 +00:00
John Cupitt e3afa878e6 better support for drawing operations
much more mem efficient for repeated draws

doc updates too
2014-11-16 11:07:42 +00:00
John Cupitt d25beeddac remove wrap7 class
and pyvips8 now knows about deprecated args and ops
2014-11-14 22:41:05 +00:00
John Cupitt b40bad04bb hide deprecated args to operations in python 2014-11-14 12:19:25 +00:00
John Cupitt 742ff4c108 more pydoc hacking 2014-11-14 10:07:04 +00:00
John Cupitt 865fd9da5e more docstring updates 2014-11-13 20:07:12 +00:00
John Cupitt 6a25b04974 better docstrings
you now see:

class_method(cls, *args, **kwargs) method of gi.types.GObjectMeta
instance
    make a black image
    usage:
       out = Vips.Image.black(width, height, bands = gint)

    where:
       out        - Output image, VipsImage

    required parameters:
       width      - Image width in pixels, gint
       height     - Image height in pixels, gint

    optional parameters:
       bands      - Number of bands in image, gint
2014-11-13 14:37:59 +00:00
John Cupitt 326854843a tinkering with pyvips8 docs 2014-11-11 14:59:06 +00:00
John Cupitt 70e470b0a5 fiddle with pyvips8 docstrings 2014-11-10 22:37:16 +00:00
John Cupitt 2c93340c77 fix pngsave of grey plus many alpha 2014-11-10 12:56:28 +00:00
John Cupitt b8254eff77 stuff 2014-11-10 10:18:09 +00:00
John Cupitt ccedc7c037 better random numbers for gaussnoise
fixes a problem with repeated use of gaussnoise
2014-11-08 19:37:18 +00:00
John Cupitt cce90b4fba add pbm save
previously vips could load but not save pbm (one bit) images

fix a few bugs in float load and save as well, and improve one-bit load
2014-11-08 17:40:43 +00:00
John Cupitt be4ffa6d8a more pyvips8 docs
and cleanups of various small doc markup errors
2014-11-07 14:49:18 +00:00
John Cupitt 02e8c600db more small docs work
and don't cache gaussnoise
2014-11-07 09:25:40 +00:00
John Cupitt adf2d60940 update notes 2014-11-03 12:16:43 +00:00
John Cupitt 8a6c3606e8 start python and cpp docs 2014-10-31 20:09:24 +00:00
John Cupitt 5694bf6f4c add all new() and write() methods
VImage::new_from_buffer() etc.
2014-10-31 19:15:29 +00:00
John Cupitt 2a992375fe add more type conversions
so we automatically do int and double -> doublevec and intvec
2014-10-31 18:11:26 +00:00
John Cupitt d6a6d7ae71 set of overloads for new cpp API
all the usual ones .. compiles, but untested
2014-10-30 21:53:24 +00:00
John Cupitt 4173ddfa9c add make constant image 2014-10-29 12:39:25 +00:00
John Cupitt d012cef3b4 add some simple extras
.bandjoin(), .bandsplit(), .sin() etc etc
2014-10-29 09:47:02 +00:00
John Cupitt 63d4370043 split to a separate branch 2014-10-27 18:17:49 +00:00
John Cupitt 266e120676 new C++ interface works!
phew
2014-10-27 12:57:28 +00:00
John Cupitt ceb143a22a another stab at a C++ API design 2014-10-24 10:32:50 +01:00
John Cupitt f2898a8e3b more C++ hacking 2014-10-20 14:54:03 +01:00
John Cupitt e21cbb9d4f tiny 2014-10-20 11:03:33 +01:00
John Cupitt afdf22ac37 small fixups to autorot 2014-10-19 11:20:33 +01:00
John Cupitt 8a84d85335 sync 2014-10-17 14:08:35 +01:00
John Cupitt 14d7ce1e91 first try, not very good 2014-10-16 19:16:45 +01:00
John Cupitt 2acd185ee2 cleanups 2014-10-16 11:22:03 +01:00
John Cupitt a8f4ed7871 fix up ifthenelse and set_value 2014-10-16 10:58:54 +01:00
John Cupitt fc4c8b9cd7 constants as images working 2014-10-16 10:43:29 +01:00
John Cupitt 10b9374cb9 start adding auto image constants 2014-10-15 14:56:44 +01:00
John Cupitt b2de6d983c add build rules for new py binding 2014-10-14 14:56:49 +01:00
John Cupitt 6fb967ac3b more py tweaks
fast startup, reorganised python/
2014-10-14 10:17:33 +01:00
John Cupitt a0988ffc31 start using overrides in Python 2014-10-13 14:21:05 +01:00
John Cupitt ca2ae681cd add --with-gmic configure option 2014-10-07 14:54:53 +01:00
John Cupitt 2e2cc9ea7a add get_value()
and set_value(), do auto blob/unblob
2014-10-01 14:59:23 +01:00
John Cupitt 3067fee56f add ICC tests 2014-10-01 12:28:25 +01:00
John Cupitt e458365970 use vips__substitute() more
should probably remove vips_snprintf() from a few more places
2014-09-27 11:37:28 +01:00
John Cupitt 61bae5eeff more tests 2014-09-26 15:01:56 +01:00
John Cupitt 0a327af138 fixed extra band handling, again 2014-09-24 14:46:03 +01:00
John Cupitt 6ad94da99c Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2014-09-24 12:24:57 +01:00
John Cupitt 9f8083dc8f sync 2014-09-24 12:24:32 +01:00
John Cupitt 08e0d5d962 sync 2014-09-24 09:00:22 +01:00
John Cupitt 2cfffaa54e start conversion tests 2014-09-22 13:50:09 +01:00
John Cupitt 0ad165f557 update notes 2014-09-20 16:53:47 +01:00
John Cupitt 5ebe12273a more of colour unittest done 2014-09-18 15:04:12 +01:00
John Cupitt bb50478d77 fix more, moreeq
there was a problem with operation caching in complex programs because of
the way we were swapping pointers
2014-09-17 11:21:34 +01:00
John Cupitt 8b9dc20684 add relational overloads to python
and tests
2014-09-17 09:39:57 +01:00
John Cupitt 4968b9edaf fix optional output args in python
oh arg we have to return a dict

also, test hough circle and line, and add maxpos/minpos
2014-09-16 10:47:24 +01:00
John Cupitt c20c85b474 getting ready for hough test 2014-09-15 14:55:08 +01:00
John Cupitt a82fa01781 more tests 2014-09-15 13:58:31 +01:00
John Cupitt cc599844d2 fix getpoint(0,0)
and add more tests
2014-09-15 09:06:36 +01:00
John Cupitt 876a7538af more tests 2014-09-14 21:30:27 +01:00
John Cupitt 9a2c38e107 finish python vips8 2014-09-09 14:19:51 +01:00
John Cupitt 4c51e6aa0b draw and hough working in Python 2014-09-09 13:19:44 +01:00
John Cupitt 84e55b86e6 added class methods to python
we now have Vips.Image.black(w, h), woo
2014-09-08 14:53:37 +01:00
John Cupitt a26df2a8a9 get ready for class methods 2014-09-07 09:36:34 +01:00
John Cupitt 751982d9f0 add make vips matrix from python array 2014-09-05 14:53:05 +01:00
John Cupitt 92570b119c python new_from_memory()/write_to_memory() done 2014-09-05 12:54:07 +01:00
John Cupitt eca5ed12de buffer load/save in python works 2014-09-03 21:34:26 +01:00
John Cupitt 8f39f8ba3b start unboxing returns from Python 2014-09-03 14:59:35 +01:00
John Cupitt 4793c69bba turn VipsBlob into a proper type
with a .get() method we call call from Python
2014-09-02 21:59:11 +01:00
John Cupitt 5a0a98c922 sync 2014-09-02 14:57:37 +01:00
John Cupitt 6779e141a7 add Python .write_to_buffer()
now we need to be able to get the bytes from a VipsBlob
2014-09-01 17:44:33 +01:00
John Cupitt 804a2e6fca finish python operator overloads 2014-09-01 15:28:55 +01:00
John Cupitt f03dc3754f start adding python operator overloads 2014-09-01 11:32:17 +01:00
John Cupitt e6dba689ce auto array-ize scalars in python 2014-09-01 09:41:14 +01:00
John Cupitt 3b43bd76f3 set options in filenames in vips8 Python
now supports "fred.jpg[Q=90]" in Vips.Image.new_from_file() etc.
2014-08-31 21:16:39 +01:00
John Cupitt a370e5003e vips array types are more binding-friendly
this all works now:

```python
from gi.repository import Vips

a = Vips.ArrayDouble.new([1,2,3])
a.get()

a = Vips.ArrayInt.new([1,2,3])
a.get()

a = Vips.ArrayImage.new([c, d, e])
a.get()
```
2014-08-31 10:41:53 +01:00
John Cupitt 42dac9209a GBoxed almost working 2014-08-29 18:14:22 +01:00
John Cupitt 5125cc535c Merge branch '7.40'
Conflicts:
	TODO
2014-08-19 18:04:24 +01:00
John Cupitt 41ec99b8d5 note 2014-08-19 18:03:19 +01:00
John Cupitt af84b3097c more docs work 2014-08-19 16:57:37 +01:00
John Cupitt cb2b217434 fix 16-bit PNG save
see

https://github.com/jcupitt/libvips/issues/156
2014-08-18 13:54:06 +01:00
John Cupitt c646356b4f Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	ChangeLog
	TODO
2014-08-17 09:58:24 +01:00
John Cupitt 7b496fb2f5 udpate notes 2014-08-12 13:45:03 +01:00
John Cupitt b24cbb492c Merge remote-tracking branch 'origin/7.40'
Conflicts:
	ChangeLog
	TODO
	configure.ac
	libvips/foreign/vipspng.c
2014-08-12 13:41:52 +01:00
John Cupitt 2f72a9925f more docs work 2014-08-12 13:37:16 +01:00
John Cupitt ce428ffa94 more vipsthumbnail fixes
- handle CMYK images
- use unbuffered mode, we have a cache already
- don't try to anti-alias on upscale
2014-08-11 16:48:51 +01:00
John Cupitt b25dcc9ebe Merge remote-tracking branch 'origin/7.40'
Conflicts:
	TODO
2014-08-09 17:03:43 +01:00
John Cupitt 2e8217338b docs work 2014-08-09 10:25:34 +01:00
John Cupitt 2b086cfe6e add signed int bicubic path
better rounding for 8- and 16-bit signed int bicubic
2014-08-07 10:13:08 +01:00
John Cupitt 2e3baa1bef more docs stuff 2014-08-06 21:59:13 +01:00
John Cupitt 46673b60d7 small docs fixups 2014-08-05 10:09:13 +01:00
John Cupitt ebeee822bc better rounding behaviour for bicubic
fixed-point bicubic was not rounding to nearest, introducing some noise
in flat areas
2014-08-05 10:02:11 +01:00
John Cupitt f1df91eebb vipsthumbnail defaults to bicubic + noshapen
if bicubic is available
2014-08-04 09:55:18 +01:00
John Cupitt ebec31fe4a more careful p->t conversion
When we convert an image from "p" to "t" in vips_image_wio_input(), zap
start/gen/stop callbacks. This makes vips_region_prepare_to() read from
the "t" rather than trying to gen pixels again.
2014-08-03 17:59:25 +01:00
John Cupitt 004c98f296 pngsave interlaced makes a copy of the image
interlaced png is hard to write: you have to make seven passes over the
image to make the whole file. It advertises itself as sequential, it
needs to only ake a single pass. Therefore, it must take a copy in
memory of the image to write.
2014-08-03 09:34:46 +01:00
John Cupitt d438649fcb update notes 2014-08-02 05:14:37 +01:00
John Cupitt ecd771cde7 Merge branch 'affine-bug'
Conflicts:
	libvips/resample/transform.c
2014-08-01 16:35:59 +01:00
John Cupitt 639c22bf53 add "whole_slide" toggle
openslideload now crops to image bounds (if set) ... use @whole_slide to
stop this autocrop
2014-07-30 12:27:19 +01:00
John Cupitt 0bb8a218bb exit() in fewer cases
we now only exit() when we know the stack has been trashed, just warn in
other cases
2014-07-29 15:23:27 +01:00
John Cupitt 2115c6d166 sync 2014-07-29 09:59:33 +01:00
John Cupitt 20a239149f Merge commit 'f4671f46e807db0e02d763e3a1685ad012eace5b' into 7.40 2014-07-25 19:47:04 +01:00
John Cupitt 20eb893350 Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2014-07-25 19:37:57 +01: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 0114afa5fb limit nthr on tiny images
we always made N threads for a threadpool ... we could end up making
loads of threads we never used if the image was tiny

for very small images, limit the number of threads we make
2014-07-25 14:51:29 +01:00
John Cupitt a338a48c63 fix a race in im_maxpos_avg() 2014-07-25 13:52:36 +01:00
John Cupitt f4671f46e8 more work on docs
started adding .xml intro to vips sections
2014-07-25 09:22:49 +01:00
John Cupitt 9d096c39f1 update notes 2014-07-16 14:54:51 +01:00
John Cupitt 87698cc961 sync 2014-07-16 11:34:41 +01:00
John Cupitt 235eb87aa5 sort out sense of fourier filter masks 2014-07-15 09:05:00 +01:00
John Cupitt 89f8c58057 tiny vips_scale() fix
vips_scale() on a black image now returns an image with the right number
of bands ... was always a 1 band image before
2014-07-13 10:43:50 +01:00
John Cupitt a9fdde9ddb fix im_point()
oops ... helps ruby-vips self test
2014-07-12 15:29:02 +01:00
John Cupitt 1a8dd2f299 fix affine identity transform with clipping 2014-07-08 17:09:42 +01:00
John Cupitt 987021a68d notes 2014-07-04 14:46:28 +01:00
John Cupitt 70eacc4543 Merge branch 'dzsave-metadata'
Conflicts:
	ChangeLog
2014-07-03 09:42:13 +01:00
John Cupitt 50c98c39d1 cache the image before write for fits
write must be strictly top-to-bottom for :seq to work
2014-07-02 12:45:19 +01:00
John Cupitt 8e2d83e815 use the libxml2 pretty-printer 2014-07-02 12:04:28 +01:00
John Cupitt fc14733b2b Merge branch 'dzsave-metadata' of github.com:jcupitt/libvips into dzsave-metadata
Conflicts:
	ChangeLog
	configure.ac
2014-07-01 08:47:50 +01:00
John Cupitt c2a8c542b6 we assumed GType fitted in an int
which isn't true on freebsd, and perhaps others
2014-06-29 11:17:23 +01:00
John Cupitt 243c86f405 small fixes to help freebsd 2014-06-27 13:11:57 +01:00
John Cupitt 150927a27f better --vips-progress feedback for dzsave 2014-06-19 12:57:04 +01:00
John Cupitt 3797c1824a doc fixups 2014-06-19 12:14:41 +01:00
John Cupitt 415b6d08be small fixups
- remove -c abbrv. for --vips-concurrency
- better desc for insert
- revise vips.1 man page
2014-06-19 09:59:29 +01:00
John Cupitt 32f5c444c5 update notes 2014-06-18 14:50:35 +01:00
John Cupitt 0e68067a82 oops dropped a patch 2014-06-18 14:08:41 +01:00
John Cupitt 519898a7ac oop, affine coordinate error
we were offsetting the input image incorrectly, compare
the way the transform is set up in vips_affine_build() and
im__affinei()

see https://github.com/jcupitt/libvips/issues/131
2014-06-17 14:18:12 +01:00
John Cupitt b7f16a1de9 more docs work 2014-06-16 14:28:00 +01:00
John Cupitt a76df77942 docs updates 2014-06-15 11:52:06 +01:00
John Cupitt eed4bfc731 Merge remote-tracking branch 'origin/single-thread-first-tile'
Conflicts:
	ChangeLog
	TODO
2014-06-13 11:46:11 +01:00
John Cupitt 9d5ea2129b update notes 2014-06-13 11:45:19 +01:00
John Cupitt f5200dd4a0 Merge branch 'master' of github.com:jcupitt/libvips 2014-06-13 11:44:27 +01:00
John Cupitt 000d77e994 final clean-up 2014-06-13 10:52:07 +01:00
John Cupitt 6e48c47533 stop image abuse in labelregions
we were marking as image as changing by calling vips_image_readwrite(),
but the cache system didn't uncache it
2014-06-13 09:44:58 +01:00
John Cupitt 7bc0ca7283 update notes 2014-06-12 14:35:38 +01:00
John Cupitt d7bad8fd5b cache drops operations on invalidate
we can now enable the vips8 operation cache in nip2, woo!
2014-06-12 13:40:00 +01:00
John Cupitt 1769840b44 merge notes 2014-06-12 11:39:49 +01:00
John Cupitt a8d04a7dd1 add op invalidate stuff
still need to test and link to cache
2014-06-12 09:22:28 +01:00
John Cupitt cbc60722fc skipahead is back
thanks to a new threadpool idea, see

https://github.com/jcupitt/libvips/issues/117
2014-06-10 17:44:31 +01:00
John Cupitt 30eff079f1 hide VipsFormat and VipsWrap7 classes 2014-06-10 14:43:46 +01:00
John Cupitt 1d74aaecc3 require libgsf-1 1.14.27 or later
1.14.21 is known bad, 1.14.27 is fine, not sure about inbetween versions

1.14.30 works too
2014-06-10 14:14:44 +01:00
John Cupitt c85dd26627 oops, better filename set on foreign load
we were setting the filename in the wrong place
2014-06-10 13:46:05 +01:00
John Cupitt 72dc2e6371 Ooops 2014-06-10 13:02:37 +01:00
John Cupitt 9dea549063 oops savers were not setting filename
when we added all the buffer loaders, we cul dno longer set filename in
VipsForeign, it's now the responsibility of each load class
2014-06-10 11:26:09 +01:00
John Cupitt 0f33123dbf add vips_image_write_to_memory() 2014-06-09 14:03:45 +01:00
John Cupitt e373fbd0af update notes 2014-06-09 08:38:39 +01:00
John Cupitt 35533a54cf finish reviding the fixed-up image load/save API 2014-06-08 11:16:58 +01:00
John Cupitt d426abdcd8 stage1 seems to work 2014-06-07 16:47:53 +01:00
John Cupitt 339712fb13 hackey hack 2014-06-06 15:03:12 +01:00
John Cupitt b394948cd1 start hacking in better new from file 2014-06-06 13:46:26 +01:00
John Cupitt 3f021abe2d TODO notes 2014-06-06 10:58:57 +01:00
John Cupitt 5b19fc4f8d update notes 2014-06-05 14:49:27 +01:00
John Cupitt f1f6bde680 option to trace all orc calls
used to generate the program here:

https://bugzilla.gnome.org/show_bug.cgi?id=731227
2014-06-04 18:51:53 +01:00
John Cupitt 23911afb1c add more orc debugging 2014-06-04 15:05:23 +01:00
John Cupitt 5ffa46ebac sync 2014-05-29 14:33:44 +01:00
John Cupitt e7743ddc3c finish mosaicing rewrite 2014-05-29 09:35:17 +01:00
John Cupitt 8a38cb1946 fix up global balance names
track mosaic-name now
2014-05-28 23:00:41 +01:00
John Cupitt 170efb1452 redo im_*merge1() as classes 2014-05-28 18:15:20 +01:00
John Cupitt adfda3cf14 redo im_*mosaic1() as classes 2014-05-28 15:15:06 +01:00
John Cupitt b8886fc209 wrap im_remosaic() as a class 2014-05-27 15:18:19 +01:00
John Cupitt 781a7d4dc9 wrap im_global_balance*() as a class 2014-05-26 15:02:15 +01:00
John Cupitt e2cda919ea match works 2014-05-26 14:20:38 +01:00
John Cupitt 246525e649 more hackery 2014-05-26 11:24:46 +01:00
John Cupitt 4f3b37ad04 wrap im_match*() as a class 2014-05-23 13:46:38 +01:00
John Cupitt de409ecac8 vips_mosaic() outputs mosaic params 2014-05-23 12:37:10 +01:00
John Cupitt ab12cd1c3d wrap im_*mosaic() as classes 2014-05-22 18:14:40 +01:00
John Cupitt 98012d7613 im_*merge() class wrapper works 2014-05-22 16:32:09 +01:00
John Cupitt 496d523750 wrap im_*merge() as a class 2014-05-22 14:53:18 +01:00
John Cupitt 3a4569e99b longer stall time for ahead-threads
we must stall for AGES occasionally, really the stall time is about
enforcing a certain thread ordering
2014-05-22 13:40:06 +01:00
John Cupitt c3caa595a2 complex lut was broken 2014-05-21 17:34:53 +01:00
John Cupitt 011fd99a1a start fixing up the auto-decode stuff 2014-05-19 14:53:47 +01:00
John Cupitt 4993ff15d6 add Travis CI config
thanks Lovell
2014-05-19 12:54:04 +01:00
John Cupitt dc22d9c4c8 add hough_circle() to vipsCC and python
now exposed to Python and C++
2014-05-17 22:00:36 +01:00
John Cupitt 22d525d54f export a better cache operator for nip2 2014-05-10 14:00:01 +01:00
John Cupitt 4d17ebb3b4 add im_tile_cache() to vips7 op db
try using this from nip2 instead of im_cache()

im_cache() uses vips_sink_screen() and is probably quite a bit slower
2014-05-09 14:56:44 +01:00
John Cupitt ccead97c05 set Type on memory strip
we need to set Type on memory strips so we can convert to the output
format correctly, thanks philipgiuliani

see https://github.com/jcupitt/libvips/issues/120
2014-05-08 14:24:22 +01:00
John Cupitt f6f7d4eeed oops, don't treat RGB16 as sRGB in colourspace
we still had code to treat RGB16 inputs as sRGB even though we now have
a special set of RGB16 paths

vips copy 16bitRGB.tif x.jpg

now works
2014-05-08 14:13:40 +01:00
John Cupitt ff71a69827 Merge branch 'dzsave-gsf' 2014-05-08 12:15:55 +01:00
John Cupitt 0f1ba2c0b1 Merge branch 'dzsave-gsf'
Conflicts:
	libvips/include/vips/vips.h
2014-05-06 22:03:13 +01:00
John Cupitt 1a3c62851e move some junk to deprecated/ 2014-05-06 22:01:20 +01:00