John Cupitt
a5b3eb2040
amke vips_cache() a vips8 operation
2012-01-13 13:15:56 +00:00
John Cupitt
ae46447f5e
silently truncate long strings in arg handling
...
we were assert()ing out before
2012-01-08 13:57:43 +00:00
John Cupitt
c190c8e660
new Python binding
...
just a test thing for now, but seems to work OK
some small tweaks to help gobject-introspction
2012-01-05 13:26:25 +00:00
John Cupitt
405b89b000
get goi try.py going
2012-01-02 11:06:04 +00:00
John Cupitt
49d3542cc7
remove outchecks, again
2011-12-21 19:00:32 +00:00
John Cupitt
14734596a1
move VipsFormat to deprecated
2011-12-20 15:29:33 +00:00
John Cupitt
3e45e2cd6b
move rad over to the new thing
2011-12-20 14:57:05 +00:00
John Cupitt
70bde4a90d
move ppm read/write to new-style
2011-12-20 09:37:07 +00:00
John Cupitt
0377920764
mvoe png load/save over
2011-12-19 21:40:08 +00:00
John Cupitt
8653913654
add new-style raw load/save
2011-12-15 10:59:05 +00:00
John Cupitt
65ed140ae3
move im_raw2vips() to a class
2011-12-14 22:51:14 +00:00
John Cupitt
25e42d1625
fix up new-style analyze load
2011-12-14 18:02:46 +00:00
John Cupitt
0137186205
move fits read/write to new-style
2011-12-13 17:50:55 +00:00
John Cupitt
a2ed2edb5d
fix --without-tiff etc.
2011-12-13 13:19:20 +00:00
John Cupitt
5bc26b0b65
clean up options in image filenames
...
allow new-style options everywhere with the addition and use of
vips_foreign_write_options() and friends everywhere
2011-12-12 14:51:41 +00:00
John Cupitt
05fbb6b3bc
fix up openslideload
...
there was a problem with the tile cache ... plus some small tidies
2011-12-12 11:34:28 +00:00
John Cupitt
7fe4843250
Merge remote-tracking branch 'origin/master' into format-hacking
...
also, start adding openslide.c to foreign
Conflicts:
ChangeLog
TODO
libvips/iofuncs/image.c
2011-12-11 15:54:08 +00:00
John Cupitt
e34b6b92e9
small cleanups
...
minor changed to openslide.c, use PEL everywhere as the pixel pointer
type
2011-12-09 14:30:45 +00:00
John Cupitt
a43241a4e7
fix pixel addressing on 32-bit platforms
...
there was a size_t where there should have been a guint64, causing
addressing problems on very large images on 32-bit platforms (like
win32)
looks like this had been broken since March 2011
2011-12-08 21:38:07 +00:00
John Cupitt
7adddf7074
remove optional args to vips_call*()
...
Optional args to vips_call*() were broken. This is fixed correctly in
master. These are not actually used in 7.26, so we just comment the broken
code out.
2011-12-08 10:48:47 +00:00
John Cupitt
3e3c66fc32
lazy read from tiled tiff was broken
2011-12-05 22:00:01 +00:00
John Cupitt
5e037e4c68
foreign uses the cache
2011-12-02 13:15:05 +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
dd14948652
new-style jpeg save works
2011-11-25 14:34:17 +00:00
John Cupitt
173576259e
move im_ri2c() to a class
2011-11-21 14:51:34 +00:00
John Cupitt
0addd7fb6d
c2real(), c2imag() -> classes
2011-11-21 14:38:11 +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
187212768d
add class for complex ops
...
and it does conj as well
2011-11-19 11:24:04 +00:00
John Cupitt
2f7de7f8d0
redone ifthenelse/blend as classes
...
relational/ can now go, woo
2011-11-15 21:49:49 +00:00
John Cupitt
a31c7d8caf
added math2, various 2ary math ops
2011-11-13 17:45:27 +00:00
John Cupitt
5b133145a7
move im_shift*( to a class, remove bool package
2011-11-12 17:18:13 +00:00
John Cupitt
2d30264840
redo boolean as a class
2011-11-12 14:11:46 +00:00
John Cupitt
3c608233e5
moved remainder over to a class
2011-11-12 13:29:32 +00:00
John Cupitt
827e5311c1
finish unaryconst, move relational to it
2011-11-11 21:54:45 +00:00
John Cupitt
26ae049d91
redo binary relational as a class
2011-11-11 13:45:12 +00:00
John Cupitt
cc85f3dfe7
try to stop vips-n-xxx.v files being left in tmp
...
On Windows, set _O_TEMPORARY. On *nix, unlink after rewind.
2011-11-10 17:48:09 +00:00
John Cupitt
786eca0d3e
use atexit() to call vips_shutdown()
2011-11-10 14:10:24 +00:00
John Cupitt
8fe50220d5
move mask/ to deprecated, add VipsRound
2011-11-10 13:53:58 +00:00
John Cupitt
f79bb525f5
rewrite im_recomb() as a class
2011-11-09 14:48:38 +00:00
John Cupitt
62859facd4
VipsStats tracks minpos/maxpos
...
plus some small bugfixes
2011-11-08 21:50:19 +00:00
John Cupitt
1129d897ca
turn default disc thresh back to 100mb
...
only make temp disc files for very large (>100mb) images since they are
so often left lying around
2011-11-08 19:32:26 +00:00
John Cupitt
ff2e7b26de
im_stats() redone as a class
2011-11-08 18:18:42 +00:00
John Cupitt
c80a19747f
im_multiply() redone, fixes to max/min
2011-11-07 09:42:44 +00:00
John Cupitt
e5b5bed428
im_divide() -> VipsDivide
2011-11-06 22:24:42 +00:00
John Cupitt
1fd1559bb5
redo im_deviate() as a class
2011-11-06 17:59:07 +00:00
John Cupitt
77d386cdaf
redo im_max()/im_maxpos() as classes
2011-11-06 17:00:44 +00:00
John Cupitt
18a969c2f8
redo im_sign() as a class
2011-11-06 12:57:13 +00:00
John Cupitt
11d0a28ccb
redo im_abs as a class
2011-11-06 11:54:52 +00:00
John Cupitt
5a5c3a527e
use "rd" mode more often
2011-11-05 14:55:41 +00:00
John Cupitt
8e7d7063b2
change SMALLTILE down to 128x128
...
512x512 was just too big for large images
2011-11-05 14:20:36 +00:00
John Cupitt
b668879856
remove the old vips7 trig operations
2011-11-04 18:28:22 +00:00
John Cupitt
7352d51053
redo im_rot*() as a class
2011-11-04 14:45:56 +00:00
John Cupitt
86fa10d474
new exif tag format
...
jpeg2vips now attaches exif in a way that can be modified by client
programs
2011-11-03 10:50:58 +00:00
John Cupitt
52c8678b23
flush on too many open files
...
start to drop cached operations when there are too many files open
also, CLI args to control the cache limit, and more informative
--vips-leak messages
2011-11-02 14:51:39 +00:00
John Cupitt
550b914fa6
remove vipspool
...
vips_object_local_array() is much better ... get embed using this as
well
2011-11-01 14:45:56 +00:00
John Cupitt
3e72edf1b5
rewrite im_black() as a class
2011-10-31 14:49:39 +00:00
John Cupitt
735749a4a2
add VipsLinear
...
remove im_lintra*(), redone as a class
2011-10-31 14:25:27 +00:00
John Cupitt
b4531ff24b
add unary and invert
...
add a base class for unary operators, try it out with VipsInvert
2011-10-30 21:45:18 +00:00
John Cupitt
2da5560992
bandjoin done and dusted
2011-10-28 14:12:39 +01:00
John Cupitt
c027528b82
im_clip2fmt() redone as a class
...
plus some rationalisation of member names
2011-10-27 12:10:24 +01:00
John Cupitt
014763a845
rewrite im_replicate() as a class
2011-10-26 16:51:27 +01:00
John Cupitt
7e6f885ea1
redo im_extract*() as a class
2011-10-26 15:09:01 +01:00
John Cupitt
b969ce2aa5
im_*join() redone as a class
2011-10-26 13:26:20 +01:00
John Cupitt
2c4cbedc70
insert.c compiles
...
and we have VipsArea as a public struct for array arguments
2011-10-22 13:10:47 +01:00
John Cupitt
02d8f0925f
sybnc
2011-10-20 14:56:13 +01:00
John Cupitt
df7059bc4a
Merge remote-tracking branch 'origin/7.26'
...
Conflicts:
ChangeLog
configure.in
libvips/iofuncs/header.c
2011-10-18 14:40:04 +01:00
John Cupitt
b15f07e3ac
update exif orientation on jpeg write
...
test the value of the 'exif-Orientation' tag and update exif on jpeg
write
2011-10-18 14:29:35 +01:00
John Cupitt
ac377c143b
im_dlip*() redone as a class
...
VipsFlip replaces im_fliphor() and im_flipver().
2011-10-17 07:15:51 +01:00
John Cupitt
62baa5dfbc
remove old im_embed()
...
switched to the new class-based one
2011-10-16 18:02:23 +01:00
John Cupitt
8dfb3056ac
added VipsEmbed
...
added VipsEmbed class, new macros for arg boilerplate, new priority
thing for arg ordering
2011-10-16 14:48:47 +01:00
John Cupitt
fba3d000a3
handle offset correctly in convsep
...
separable convolutions didn't handle offset correctly, thanks Nicolas
2011-10-15 13:12:46 +01:00
John Cupitt
d25e94d0d2
squash compiler warnings
...
and rename vips_image_write_filename() to vips_image_write_to_file() to
be more consistent
2011-10-15 12:22:57 +01:00
John Cupitt
65e79de8f9
NOCACHE was not being set on OS X
...
mmap() on OS X caches too much and we were not turning it off correctly
2011-10-15 06:35:16 +01:00
John Cupitt
22a585c45b
Merge remote-tracking branch 'origin/7.26'
...
Conflicts:
ChangeLog
configure.in
po/vips7.pot
2011-10-12 12:09:08 +01:00
John Cupitt
8a8bb8fcf4
jpeg read/write copies XMP data
...
im_jpeg2vips() and im_vips2jpeg() now know about XMP metadata and copy
it over
2011-10-12 11:45:27 +01:00
John Cupitt
122c390c7b
vips_class_map_all() was broken
2011-10-11 21:09:39 +01:00
John Cupitt
ffe4483030
vips_class_map_concrete_all() needed a compat macro
2011-10-11 18:22:08 +01:00
John Cupitt
66126c1076
hackery to move to vips_copy()
...
half-way through moving over to the new vips_copy()
2011-10-11 17:47:06 +01:00
John Cupitt
35ff0fa7c4
im_openout() compat was wrong
...
The compatibility macro for im_openout() was wrong, causing ruby-vips to
break.
2011-10-11 14:45:43 +01:00
John Cupitt
c0610db15d
more VipsImage props
...
expose more fields of VipsImage as props
2011-09-30 13:59:05 +01:00
John Cupitt
952199e92a
add VipsCopy
...
add a basic VipsCopy operation, also demand_hint is now void
2011-09-29 13:34:14 +01:00
John Cupitt
0f46696f16
add --vips-leak
...
add --vips-leak flag for exit
2011-09-24 10:27:21 +01:00
John Cupitt
13e354e869
add vips_shutdown()
...
vips_shutdown() flushes caches, closes plugins and does a leak check
2011-09-24 10:17:32 +01:00
John Cupitt
2003b5b524
csv read knows about quoted strings
...
you can "enclose strings in \", and" it shouldn't get confused
2011-09-23 22:01:32 +01:00
John Cupitt
ae8faf6597
remove dmalloc support
...
we never used it and valgrind etc. is better anyway
2011-09-23 17:12:47 +01:00
John Cupitt
9c84b0dfd9
add vips_tracked_malloc()
...
new malloc()/free() pair do tracked allocations ... use g_new()/g_free()
everywhere else
2011-09-21 14:50:32 +01:00
John Cupitt
4b2c8587b2
vips_malloc() size tracking
...
vips_malloc() now tracks allocation size and can report total mem use.
It seems to trigger quite a few nip2 bugs though, I guess we are
g_free()ing the result in places (or vice versa).
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x78a8f)[0x2aae8e011a8f]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x73)[0x2aae8e0158e3]
/home/john/vips/lib/libvips.so.15(vips_free+0xc2)[0x2aae88f7717e]
/home/john/GIT/nip2/src/nip2[0x4c9ce2]
/home/john/GIT/nip2/src/nip2(path_map_exact+0x63)[0x4ca127]
/home/john/GIT/nip2/src/nip2[0x4b5381]
2011-09-19 16:44:51 +01:00
John Cupitt
df599f2f55
better vips_init() fallback
...
the vips_init() fallback was not working well ... new, better one gets
called more often
2011-09-12 12:28:01 +01:00
John Cupitt
5d1accfc83
fallback vips_init()
...
call vips_init() for the user if they forget
2011-09-09 17:14:27 +01:00
John Cupitt
e99f6cc49e
fix up VipsPool
...
vipspool working, test program in ~/try, passes valgrind
2011-09-06 10:37:00 +01:00
John Cupitt
b5cadc1815
move C API back to int operations
...
always return results through params
2011-09-05 21:28:35 +01:00
John Cupitt
ad016c53a2
C API supports optional output args
...
you can do stuff like
int x;
vips_min( fred, &min, "x", &x, NULL );
to get the x pos of the minimum
2011-09-05 18:16:32 +01:00
John Cupitt
4ce3346a4f
VipsMin stops early if it can
...
if VipsMin sees a minimum value (eg. 0 for uchar) it'll stop searching
early
2011-09-05 14:10:56 +01:00
John Cupitt
6f125a6f31
enable YCbCr compresison for jpeg in tiff write
...
if we're writing RGB jpeg in tiff, enable YCbCR chrominance subsampling
for a 3x improvement in compression
2011-09-05 10:53:17 +01:00
John Cupitt
7fe104fee6
support optional output args in the cli
...
the cli interface now supports optional output args ... C API next
2011-09-04 10:10:39 +01:00
John Cupitt
07eb155462
allow optional output args
...
optional output args in C API startup ... need to fix up C API shutdown,
plus CLI, see TODO notes
2011-08-31 11:37:12 +01:00
John Cupitt
2909cb93a4
add a 'stop' param to generate
...
generate now has a 'stop' param, set this to indicate early successful
termination
this will be used by VipsMin and friends to stop scanning early for
conditions like seen a 0 in a uchar image while searching for min
2011-08-29 14:29:33 +01:00
John Cupitt
ac3ce8b010
add VIPS_ARGUMENT_APPEND
...
to give more control over arg ordering, fixes a problem in avg
2011-08-28 12:46:50 +01:00
John Cupitt
7a392d4789
im_avg() is a class
2011-08-26 10:15:39 +01:00
John Cupitt
ae016dd408
turn im_subtract() into a class
2011-08-23 20:56:35 +01:00
John Cupitt
7111ff2433
version bump for next cycle
...
s Please enter the commit message for your changes. Lines starting
2011-08-21 18:06:19 +01:00
John Cupitt
11eb90cdb3
itest for C++ compiler
...
automatically disable C++ support if no compiler found
2011-08-16 13:26:57 +01:00
John Cupitt
1cfa33e4fb
better termination handling
...
setting and detecting ->kill is now treated more like a message ... you
can now cancel calculation in nip2 without breaking calculation
2011-08-15 16:24:46 +01:00
John Cupitt
1e21963f83
don't use G_VALUE_COLLECT_INIT
2011-08-15 13:59:47 +01:00
John Cupitt
f000d93042
fix --without-cfitsio
...
oops, was broken, thanks Mike
2011-08-11 09:35:02 +01:00
John Cupitt
b748961743
im_benchmark.c had some debugging left in
...
oops, im_benchmark.c had some work commenetd out, hence the fast run
times
2011-08-10 10:17:36 +01:00
John Cupitt
764ce559f8
better benchmark prog
...
the benchmark program (benchmark/benchmarkn.sh) runs each test three
times and just reports the fastest run
it also detects the number of CPUs you have and automatically loops the
right number of times
additionally, tiles now default to 512x512, so it explicitly sets tiles
back to 64x64 to make comparisons with earlier versions easier
2011-08-03 11:25:31 +01:00
John Cupitt
a848adc7b3
add im_concurrency_get() to operation db
...
to help benchmarkn.sh loop appropriately automatically
2011-08-03 11:17:57 +01:00
John Cupitt
8790e552b6
fix a race in xyz to lab
...
the table build had a race condition
2011-08-03 10:12:45 +01:00
John Cupitt
122c697349
vips7compat missed old enum names
...
oops, ==0 missing from a strcmp()
2011-07-28 16:52:29 +01:00
John Cupitt
e7dbd89938
bump version again, doc fixes
2011-07-26 22:37:03 +01:00
John Cupitt
b0e7c727fa
version bump
...
version bump for release, get make dist working again
2011-07-26 09:59:53 +01:00
John Cupitt
1b5803af2e
new man pages
...
restored and updated man.1 pages
2011-07-26 09:27:06 +01:00
John Cupitt
a9dc321afd
add wrap7
...
add a thing to wrap vips7 functions as vips8 classes
in and in use, but not yet working
2011-07-15 14:37:20 +01:00
John Cupitt
2ee4fefa46
better temp files for im_vips2tiff() pyramids
...
im_vips2tiff() used to keep intermediate files in the same directory as
the destination file ... instead, make temp files using im__temp_name(),
see im_system_image().
2011-07-12 15:27:22 +01:00
John Cupitt
0f20f9152b
icc import/export cast inputs
2011-07-12 14:56:58 +01:00
John Cupitt
e84640af58
im_falsecolour() does implicit conversion
...
convert input automatically to mono 8-bit in falsecolour
2011-07-12 13:30:25 +01:00
John Cupitt
6131388cc4
jpeg cmyk write was not inverting
...
the change to vips_sink_disc() for vips2jpeg make CMYK write fail, argh
thanks to Ole for the report
2011-07-08 11:34:26 +01:00
John Cupitt
180fa919e2
blend does sizealike
...
added sizealike to im_blend()
2011-06-27 12:28:10 +01:00
John Cupitt
4650234e20
add VIPS_EXEEXT to the exported API
...
EXEEXT was just internal, now it's part of the API we export
2011-06-15 14:42:49 +01:00
John Cupitt
971615d6ae
back to fixed refs, add a pool system instead
...
floating refs were very confusing and annoying, instead use simple fixed
refs and add a pool system to track refs for you
also fixed a couple of dumb errors in close callbacks
2011-06-02 12:23:56 +01:00
John Cupitt
75e5804e3c
small fixes
...
also bumped smalltile to 512x512 for tetsing aconv, this needs checking
2011-06-01 17:56:28 +01:00
John Cupitt
6819919f0c
im_aconv() works
...
got im_aconv() working, woo
2011-06-01 17:36:17 +01:00
John Cupitt
a55e8d15bb
fix -ve lobes on laplacian for large sigma
2011-05-30 12:14:20 +01:00
John Cupitt
10aecae374
added im_gauss_dmask_sep()
2011-05-26 13:20:15 +01:00
John Cupitt
8036dda5b7
vips8 CLI works
...
bugs fixed, leaks plugged, hooked up output write
2011-05-23 17:12:09 +01:00
John Cupitt
dd6f0e8b4d
sizealike everywhere
...
all ops now sizealike (I think) and docs are updated to match
2011-05-17 13:05:45 +01:00
John Cupitt
0c1034de44
vips7 has sizealike as well
2011-05-16 17:34:00 +01:00
John Cupitt
bc4accfc48
added sizealike
...
binary.c now does sizealike, so images no longer have to match exactly
in size for binary operations
2011-05-16 17:25:26 +01:00
John Cupitt
6cb6d2289b
new CLI done
...
the new cli interface is done, try "vips add a.jpg b.jpg out.jpg", or
"vips add".
2011-05-16 17:10:08 +01:00
John Cupitt
03d54dd099
im_conv() bug fixed
...
there was a typo in overflow estimation which could cause vips to use
the vector path when it should not, resulting in errors
2011-05-09 16:56:41 +01:00
John Cupitt
691893f31c
updated German translation
...
new German translation, thanks Chris, tiny change to jpeg2vips
2011-05-07 15:11:01 +01:00
John Cupitt
daf915fafb
added vips_image_get_data()
...
something to get the pixel data pointer
2011-05-01 11:32:59 +01:00
John Cupitt
0a2ef6e8c5
bufjpeg2vips has a header_only param
...
im_bufjpeg2vips() has header_only, meaning just read width/height/etc.
2011-05-01 11:02:31 +01:00
John Cupitt
e8a78916a3
add support for palette mono images
...
search the colormap for R==G==B and output mono in this case
there is a tiff extension for INDEXED images, but no one seems to use it
2011-04-21 12:01:37 +01:00
John Cupitt
f13bf34ce3
add n-bit palette tiff read
...
The tiff reader can do 1, 2, 4, 8 bits per sample palette read.
Greyscale palette images always come out as colour, I'm not sure how to
fix this. Perhaps I have to search the palette and see if r==g==b?
2011-04-21 09:53:02 +01:00
John Cupitt
c4f5c71507
add im_bufjpeg2vips()
...
add a thing to open a jpeg from a memory buffer, handy for processing
thumbnails from exif data
2011-04-20 15:23:34 +01:00
John Cupitt
e0d4ed89ff
reorganise tools/ dir
...
The subdir in tools are no lonmger necessary. Also, remove ther old bin
links feature, not very useful anymore.
2011-04-06 12:06:32 +01:00
John Cupitt
ac461e5cc6
tiff read uint/int mixup
...
there was a uint/int mixup in the tiff reader causing problems with
tiff files written in single strips, thanks Bubba
2011-04-04 16:56:26 +01:00
John Cupitt
8d367998c6
VipsAdd works
...
done VipsAdd class and made an im_add() stub for compat
2011-04-04 15:46:57 +01:00
John Cupitt
db41b6ac4e
add VipsOperation
...
abstract base class for all operations goes in
2011-03-29 12:12:20 +01:00
John Cupitt
0b9189b2ef
support old header names
...
vips_image_get_int() and friends let you use the old header names eg.
"Xsize"
2011-03-23 14:44:20 +00:00
John Cupitt
e66c2dc9a5
fits write done
...
fits write is working, tested read as well with valgrind, all fine, I
hope
2011-03-22 11:57:34 +00:00
John Cupitt
9a9704bcf6
basic fits write done
...
now sort-of works, but see notes in fits.c re. missing features
2011-03-18 14:44:35 +00:00
John Cupitt
3244d8f392
Merge remote branch 'origin/vipsobject-image'
...
Conflicts:
ChangeLog
libvips/iofuncs/im_cp_desc.c
2011-03-11 14:15:12 +00:00
John Cupitt
b8e526d40e
now runs simple operations
...
im_copy and im_invert at least seem to work
2011-03-09 17:45:37 +00:00
John Cupitt
05ab548636
ri2c was broken
...
Oops, im_ri2c() was totally broken :-(
2011-02-28 12:16:43 +00:00
John Cupitt
3e112602f2
vector im_add was broken for int/uint
...
oops, im_add() with Orc was broken for uint and uint. Added more tests
to nip2 to pick this up earlier in future.
2011-02-28 11:15:09 +00:00
John Cupitt
16b032f8c1
more hackery
...
getting closer, stuck on vips image byte-swap logic now, probably need a
im_file2vips() type function
2011-02-23 17:38:24 +00:00
John Cupitt
a7d2288bad
im_jpeg2vips() ignores weird APP1 chunks
...
Some JPEGs seem to have multiple APP1 chunks. There should only be one,
and it should only contain EXIF data (I think), but some seem to have
many.
This was causing problems: the loader was trying to read exif
from all chunks, and a second chunk with invalid data was zapping the
stored exif meta tag. As a result, things like
vips im_copy a.jpg b.jpg
would appear to lose EXIF info if a.jpg had spurious APP1.
2011-02-21 17:01:00 +00:00