Commit Graph

320 Commits

Author SHA1 Message Date
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
dda412c85f add command-line option parsing to python 2014-11-18 11:29:32 +00:00
John Cupitt
bbf49be063 cleanup and bump to 7.42 2014-11-03 12:01:53 +00:00
John Cupitt
154796a8dc rename VIPS_ANGLE_0 as VIPS_ANGLE_D0
and other similar cases

VIPS_ANGLE_0 becomes Vips.Angle.0 in Python, which is very inconvenient, so we
rename ... the D stands for degrees, I think
2014-09-29 13:56:55 +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
1e6cd1b1a5 clean up length return
read file to mem was using uint for length for historical reasons
2014-09-18 10:19:24 +01:00
John Cupitt
ca0437d002 Merge branch '7.40' 2014-09-12 12:03:47 +01:00
John Cupitt
e4461ae1f9 fix vipsthumbnail with broken embedded profiles
if the embedded profile is broken or incompatible with the specified
output profile, retry with the specified input profile

see

https://github.com/jcupitt/libvips/issues/178
2014-09-12 10:51:49 +01:00
John Cupitt
b1f3acf17b fix vipsthumbnail
with input cmyk and output rgb profiles both specified ... it was
importing twice, causing a band mismatch

see

https://github.com/jcupitt/libvips/issues/177
2014-09-12 09:04:58 +01:00
John Cupitt
b746984318 Merge branch '7.40'
Conflicts:
	ChangeLog
	configure.ac
2014-09-08 19:49:09 +01:00
John Cupitt
501e900be5 tiny polish 2014-09-02 13:40:37 +01:00
John Cupitt
180142b2b1 Merge branch '7.40'
Conflicts:
	ChangeLog
	configure.ac
2014-08-27 14:00:54 +01:00
John Cupitt
694d86e5c5 fix vipsthumbnail on very-many-core systems
see:

https://github.com/jcupitt/libvips/issues/160

we were using UNBUFFERED, but on very-many-core systems this can get out
of order enough to make vipspng free the read object early
2014-08-21 13:05:29 +01:00
John Cupitt
a70da5b2d9 Merge remote-tracking branch 'origin/7.40' 2014-08-18 17:41:17 +01:00
John Cupitt
1abcc1eae4 rename vips_init() as VIPS_INIT()
stops a deprecation warning from gtk-doc

vips_init() is now a compat macro
2014-08-18 15:27:10 +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
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
ed3c56fcbf add an anti-alias filter to vipsthumbnail
vipsthumbnail blurs slightly between shrink and affine, if the affine
will be doing a large shrink
2014-08-11 10:26:12 +01:00
John Cupitt
e4996d8dce don't set shrink too low 2014-08-04 21:25:19 +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
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
8c82ffb865 fix interlaced thumbnails
we need to cache the thumbnail before we write it in case the writer
needs to make several passes

see https://github.com/jcupitt/libvips/issues/140
2014-06-30 12:07:00 +01:00
John Cupitt
9ad0942062 update man pages
oops, forgot to update man pages for header -> vipsheader rename
2014-06-24 14:19:57 +01:00
John Cupitt
da77b68d3e bump version to 7.40
and rename header and edvips as vipsheader and vipsedit

remove mergeup and find_mosaic
2014-06-23 20:22:50 +01:00
John Cupitt
30eff079f1 hide VipsFormat and VipsWrap7 classes 2014-06-10 14:43:46 +01:00
John Cupitt
a6ec270adf better shrink selection in vipsthumbnail
see:

https://github.com/jcupitt/libvips/issues/126

https://github.com/lovell/sharp/issues/41#issuecomment-44429413

thanks @ttback
2014-06-09 14:44:06 +01:00
John Cupitt
d426abdcd8 stage1 seems to work 2014-06-07 16:47:53 +01:00
John Cupitt
58239a4583 vipsthumbnail fix
fix to vipsthumbnail ... --crop could fail for very non-square images,
thanks Alessandro
2014-03-18 17:41:39 +00:00
John Cupitt
a2b760c523 handle other exif orientation tag values
though not the mirroring ones
2014-03-10 13:25:02 +00:00
John Cupitt
66d0e28dc2 remove the embedded thumbnail reader
remove the embedded thumbnail reader, embedded thumbnails are too unlike
the main image wrt. rotation / colour / etc.
2014-03-07 16:57:20 +00:00
John Cupitt
40a15b3aa0 move orientation tag from vipsthumbnail output 2014-03-06 23:24:46 +00:00
John Cupitt
fce4f2d1ef more vipsthumbnail --rotate work
now needs some changes to jpegsave
2014-03-06 22:41:56 +00:00
John Cupitt
ffed43dffe add basic auto-rotate support to vipsthumbnail 2014-03-06 19:39:18 +00:00
John Cupitt
1cf0768f94 clean up the vipsthumbnail fix
nicer way to copy the metadata
2014-03-05 11:41:16 +00:00
John Cupitt
4be4f9f0ff vipsthumbnail copies metadata to embedded thumb
when working from the embedded thumbnail, vipsthumbnail now copies the
metadata from the main image onto the thumbnail

see

https://github.com/jcupitt/libvips/issues/109

thanks ottob
2014-03-04 14:36:49 +00:00
John Cupitt
76b2fa9732 Merge remote-tracking branch 'origin/7.38'
Conflicts:
	ChangeLog
	configure.ac
2014-02-14 10:30:12 +00:00
John Cupitt
bf2acf2621 fix --sharpen=none
thanks ferryfax
2014-02-13 08:42:59 +00:00
John Cupitt
c8c532a068 version bump for new cycle 2014-01-21 19:34:40 +00:00
Lovell Fuller
9acaafc897 Ensure -interpolate flag is used with affine transformation 2014-01-20 22:20:35 +00:00
John Cupitt
fd617aa520 version bump for 7.38
and fix a few dist problems
2014-01-18 12:44:28 +00:00
John Cupitt
bbf899eb35 add --crop to vipsthumbnail 2013-12-18 14:23:39 +00:00
John Cupitt
d263c4d9c4 small vipsprofile cleanups 2013-12-18 11:49:32 +00:00
John Cupitt
a9f85e1fd9 vipsprofile speed problems fixed
moved to O(n) layout
2013-12-18 11:10:13 +00:00
John Cupitt
2c5ee332f0 make the buffer recycle list per image
so now recycle lists are short, scale with pipeline complexity, and
buffers are always appropriately sized for the image instead of being
slowly sized up to the max size for the pipeline

before:

$ vips sharpen k2.jpg x.jpg --radius 20
memory: high-water mark 38.99 MB

after:

$ vips sharpen k2.jpg x.jpg --radius 20
memory: high-water mark 29.46 MB
2013-12-18 09:54:26 +00:00
John Cupitt
3835834177 oops 2013-12-17 16:58:52 +00:00
John Cupitt
5780b33506 vipsprofile progress feedback
rather crude
2013-12-17 16:58:16 +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
34ce75a48d vips8ify cmyk2srgbjpeg 2013-12-10 10:22:51 +00:00
John Cupitt
aede2cafce paste in cmyk2srgbjpeg
many thanks Nicolas
2013-12-10 09:23:34 +00:00
John Cupitt
c0b8b67987 better memuse graph 2013-12-09 15:14:54 +00:00
John Cupitt
b3d31ced79 vipsprofile graphs memory use
marks malloc/free as well
2013-12-09 13:45:41 +00:00
John Cupitt
131594dde8 draw a time axis on vipsprofile
and set the start time correctly
2013-12-08 03:41:01 +00:00
John Cupitt
b77b4fba0f sync 2013-11-29 15:10:16 +00:00
John Cupitt
d935ccc752 oops 2013-11-29 14:48:47 +00:00
John Cupitt
fdad999f47 fix dist and build
was broken on old glibs
2013-11-29 14:28:55 +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
a83b44b7a4 fix overlap detection 2013-11-28 10:45:31 +00:00
John Cupitt
853124757b small polishes 2013-11-27 17:31:07 +00:00
John Cupitt
0bf5ee12fd more calcs in output 2013-11-26 17:53:44 +00:00
John Cupitt
eb3ad6d64f add lots of instrumentation
also svg output
2013-11-26 14:57:56 +00:00
John Cupitt
3a195d4d5c support main thread gates 2013-11-26 13:01:40 +00:00
John Cupitt
b746ab36d6 works! 2013-11-25 14:45:06 +00:00
John Cupitt
ba03c0921d txt rendering 2013-11-25 11:01:09 +00:00
John Cupitt
3ffebcbe69 now draws something 2013-11-25 10:36:37 +00:00
John Cupitt
d49eed6d20 Merge remote-tracking branch 'origin/master' into gate 2013-11-25 08:55:41 +00:00
John Cupitt
2f602eedd6 clang static analyze notes 2013-11-22 11:27:29 +00:00
John Cupitt
fb183e28a0 start adding cairo output 2013-11-21 14:58:44 +00:00
John Cupitt
5fce021c17 fix typo in find_mosaic.c
thanks dcb314

https://github.com/jcupitt/libvips/issues/81
2013-11-20 21:38:31 +00:00
John Cupitt
d366320cb1 cleanups, vipsprofile.py now works 2013-11-20 21:35:18 +00:00
John Cupitt
e57492de54 stuff 2013-11-19 14:59:40 +00:00
John Cupitt
9b9d940148 parse profile output 2013-11-19 10:13:38 +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
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
8dfe4611d2 add a --linear option to vipsthumbnail
thanks to Nicolas for the prodding
2013-11-12 09:53: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
8d270d49c4 allow non-square bounding boxes in vipsthumbnail
thanks seth
2013-10-23 09:37:45 +01:00
John Cupitt
67dff74b2c rot45 works 2013-10-19 18:26:46 +01:00
John Cupitt
8ef91f8df9 version bump ready for 7.36 2013-10-03 13:02:20 +01:00
John Cupitt
461d619cde ... another vipsthumbnail fix
and it now warns about use of the old "sequential" flag
2013-10-01 13:31:42 +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
f23387ea67 oops fix compile break 2013-09-30 15:26:44 +01:00
John Cupitt
aa935133d0 vipsthumbnail uses new vips_info() 2013-08-07 09:57:18 +01:00
John Cupitt
d5cac2a0fe cache should be threaded 2013-07-31 22:00:52 +01:00
John Cupitt
101c60cf42 add a "const" to get_string 2013-07-13 13:02:06 +01:00
John Cupitt
aadd7c1ee5 vipsthumbnail rewrite 2013-07-10 11:05:45 +01:00
John Cupitt
ad258d9ad2 version bump 2013-06-07 09:53:22 +01:00
John Cupitt
7eb3513d46 vipsthumbnail sharpen defaults to mild
and add a "none" option
2013-05-06 14:01:29 +01:00
John Cupitt
f80bf594ce sharpen param to vipsthumbnail 2013-05-03 13:56:38 +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
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
ae27de5140 more granular cache for tiny speed up 2013-03-01 10:29:01 +00:00
John Cupitt
8269a79801 vipsthumbnail sizes cache better
the vipsthumbnail cache could be too small on many-cpu machines, size it
more intelligently
2013-03-01 09:44:19 +00:00
John Cupitt
2d085f753b record the image loader
and display in header too
2013-02-27 12:51:26 +00:00
John Cupitt
e4c2a14b7b fix make dist 2013-02-14 08:51:44 +00:00
John Cupitt
90709538e6 update configure system 2013-01-23 10:17:51 +00:00
John Cupitt
b3c16b69a1 version number bump
bump version for new stable cycle
2013-01-22 14:04:55 +00:00
John Cupitt
c43924f716 Merge remote-tracking branch 'origin/7.30'
Conflicts:
	ChangeLog
	configure.in
2012-12-31 14:40:30 +00:00
John Cupitt
ee2b1f71ce better option parsing for "vips"
The vips driver program was parsing options in a single pass. This
failed if an option came in two parts, for example:

	vips --plugin x.plg list

the argument to --plug would be picked up as the action for "vips",
since actions were selected before option parsing

Now we parse in two passes: the first pass picks up options for vips
itself and for the libvips library, then we select the action, then we
parse again, including any options created by the action
2012-12-31 14:10:54 +00:00
John Cupitt
767bfc3b7f allow absolute file names in vipsthumbnail -o
thanks fuho
2012-11-13 20:09:30 +00:00
John Cupitt
40fd51d165 Merge branch 'master' of github.com:jcupitt/libvips 2012-11-13 18:10:12 +00:00
Sebastian Gassner
274da3dcb6 tools/batch_* scripts: verify number of arguments before invoking 'shift'. 2012-11-13 15:11:34 +01: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
1e121f2da7 fixes to lcms2 support 2012-10-25 13:55:26 +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
822f1bbdd9 hackety hack
make a base class for colorimetric operations
2012-08-31 17:27:30 +01:00
John Cupitt
8653b23810 better handling of jpeg warnings 2012-08-23 21:44:14 +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
7df7bb85bb add --vips-version cmdline arg
print version of libvips that a program is running against
2012-07-20 13:34:05 +01:00
John Cupitt
41be00d5dd version bump for new stable 2012-07-20 10:32:20 +01:00
John Cupitt
cd7a769058 leak 2012-06-21 14:11:39 +01:00
John Cupitt
213b44894e Merge remote-tracking branch 'origin/7.28'
Conflicts:
	libvips/iofuncs/cache.c
2012-06-21 13:32:47 +01:00
John Cupitt
4aa24358d8 Merge remote-tracking branch 'origin/7.28'
Conflicts:
	ChangeLog
	configure.in
	tools/vipsthumbnail.c
2012-06-19 17:24:43 +01:00
John Cupitt
bc60c7c886 oops variable left-over 2012-06-19 16:43:09 +01:00
John Cupitt
c7059af753 oop jpeg thumbnail 2012-06-19 14:48:32 +01:00
John Cupitt
400a40ea28 oops vipsthumbnail memleak 2012-06-19 14:24:24 +01:00
John Cupitt
f5134a2afd make vipsthumbnail use a sequential cache
it wasn't setting the sequential option in the line cache
2012-06-18 17:37:40 +01:00
John Cupitt
7061f0f00b put the shrink line cache back
so we can use THINSTRIP for the vips_shrink() operation
2012-06-18 09:19:31 +01:00
John Cupitt
df572e092b use the new geneal seq mode
vipsthumbnail was using the prototype seq: mode stuff, make it use the
final seq system
2012-06-18 08:44:45 +01:00
John Cupitt
b3d5f90c78 update the :seq stuff in vipsthumbnail
vipsthumbnail was not enabling sequential mode for tiff and jpg formats
2012-06-13 09:40:33 +01:00
John Cupitt
e8b83aa96e fail if numeric args to vips are malformed 2012-04-04 13:37:05 +01:00
John Cupitt
451ac04eba version bump 2012-03-09 09:47:28 +00:00
John Cupitt
9ea1387a68 add FLAGS args 2012-02-20 21:02:37 +00:00
John Cupitt
aee2999259 generic sequential read mode
moved sequential read stuff into VipsForeignLoad
2012-02-15 13:55:34 +00:00
John Cupitt
ed2f979497 vipsthumbnail shrinks to a scanline cache
so it works well with the new :seq mode for png
2012-02-08 14:05:58 +00:00
John Cupitt
e0f31e3b4a vipsthumbnail knows about :seq mode for png
also im_open() knows about old-style embedded filename options
2012-02-08 13:33:19 +00:00
John Cupitt
190d438ec1 long names for C++ decl args
swig needs long names for args in C++ decls to make %apply accurate

also, fix use of vips --list etc. in C++ makefiles
2012-02-06 12:05:45 +00:00
John Cupitt
ef2d7024bd version number bump
starting to stabilise 7.28, hopefully
2012-01-30 11:27:28 +00:00
John Cupitt
d1f5225e58 more robust char->enum
edvips has much safer char->enum conversion
2012-01-27 17:36:25 +00:00
John Cupitt
c197e2f90e more robust enum printing 2012-01-27 17:14:59 +00:00
John Cupitt
1583000298 oops 2012-01-17 11:14:15 +00:00
John Cupitt
5096031371 oops matlab load compat wrapper was broken 2012-01-12 14:14:54 +00:00
John Cupitt
351a2ad71c better saving of coded images 2012-01-12 13:39:58 +00:00
John Cupitt
b43f38997d small fixes 2012-01-11 15:00:37 +00:00
John Cupitt
bf88439c0a "vips list" can show any class 2011-12-14 14:13:34 +00:00
John Cupitt
94fcf5f362 added object summaries 2011-12-14 14:03:30 +00:00
John Cupitt
5e037e4c68 foreign uses the cache 2011-12-02 13:15:05 +00:00
John Cupitt
30ec51699d sync 2011-12-02 09:10:11 +00:00
John Cupitt
878edcf4ea copy swap uses glib byte order macros
2x faster byte swapping by using the glib byte swap macros
2011-12-01 18:47:36 +00:00
John Cupitt
48763493e5 get byteswap working again 2011-12-01 14:52:49 +00:00
John Cupitt
9154e03715 better header/edvips
header is now terse by default, edvips has a flag to set the endianness
2011-12-01 13:17:40 +00:00
John Cupitt
4fccf06e5d more work on refs 2011-11-30 22:06:52 +00:00
John Cupitt
588243c665 header command shows filenames 2011-11-30 14:56:57 +00:00
John Cupitt
f944742c2a bandmean as a class
also moved recomb over to conversion, other small fixes
2011-11-20 09:56:02 +00:00
John Cupitt
b41b9ac19c better vips list classes output 2011-11-19 12:51:13 +00:00
John Cupitt
cb5f199f1c misc big fixes 2011-11-08 18:36:33 +00:00