John Cupitt
444a04e94f
formatting, another MCU test
2021-10-08 17:58:17 +01:00
David Manthey
46a67cfab9
Add jpeg restart_interval option. ( #2468 )
...
* Add jpeg restart_interval option.
This allows saving a jpeg with MCU restarts.
* Fix code style. Add description of restart_interval.
* Add a basic test based on output length.
* Update main change log.
2021-10-08 17:33:32 +01:00
John Cupitt
7e8af07c66
Fix flatten clip ( #2432 )
...
* fic gtk-doc typenames in cgif
* fix flatten clipping
flatten could produce out of range values if max_alpha was less than
the limit of the numeric range of the format
https://github.com/libvips/libvips/issues/2431
2021-09-13 11:23:02 +01:00
Lovell Fuller
f7619cf33e
gifsave: expose bitdepth property ( #2429 )
...
Provides control over the maximum number of colours in the output
image palette, making the API more closely match that of pngsave.
Lowering the bitdepth to 7 (from the default value of 8), which
halves the maximum number of colours from 255 to 127, typically
reduces encoding time by ~20%.
2021-09-10 08:57:12 +01:00
Kleis Auke Wolthuizen
f2e5b7e9da
CI: resolve failures and various improvements ( #2426 )
...
* Simplify CI workflow
* CI: upgrade Ubuntu's Clang version to 12
* CI: upgrade macOS runner to version 11 (Big Sur)
* CI: temporarily disable the M1 runner
* CI: output test suite log upon failure
* CI: avoid brew update/upgrade steps
Since it may take a long time.
* CI: all jobs are supposed to succeed
* Fix test_descriptors.c failure after f8c2a36
Use a RANDOM image to create many crops from one source.
2021-09-07 11:14:45 +01:00
John Cupitt
b9230edcbe
Merge branch '8.11'
2021-08-29 19:13:12 +01:00
Lovell Fuller
1f5d6f6bc9
Add gifsave operation, depends on cgif and libimagequant ( #2381 )
2021-08-22 18:11:41 +01:00
Doug Nazar
97f5417aaa
Fix tests when using a separate build dir. ( #2405 )
2021-08-18 11:45:02 +01:00
Kleis Auke Wolthuizen
b978ed8e8f
Adapt TestForeign.test_heifsave
test ( #2402 )
...
- `heifsave` defaults to AV1 compression for .avif suffix since commit 8c44863
.
- Test lossless compression mode.
2021-08-16 22:25:14 +01:00
John Cupitt
2ca96a3fef
add another test for tiff ifd pyramids
...
test loading from a lower layer
2021-06-29 08:34:42 +01:00
John Cupitt
95bf1367ba
fix jpeg tiff pyramid save
...
we were not copying the quant tables on lower pyr levels correctly
add a test too
2021-06-28 20:24:00 +01:00
Lovell Fuller
d1c038c22d
svgload: skip images with invalid dimensions
2021-06-28 14:21:40 +01:00
John Cupitt
6804ff61df
load non-transparent GIFs as RGB
...
And GIFs with transparent elements as RGBA. This can make downstream
processing (eg. in vipsdisp) much quicker since it can save a
composite.
2021-06-07 09:54:53 +01:00
John Cupitt
53255419d7
fix "make check" on raspbian
...
unset LC_ALL in test/, thanks ewelot
2021-05-09 15:49:44 +01:00
Kleis Auke Wolthuizen
25a268c341
Fix CI failures
...
- Include the rgba image in the teardown of TestForeign.
- Fix merge conflict.
2021-05-03 12:39:40 +02:00
John Cupitt
0eda488c60
make the tiff test less sensitive to rounding
2021-05-01 23:26:28 +01:00
John Cupitt
03f76b73b4
add "premultiply" param to tiffsave
...
Some programs, like indesign, only work with premultiplied alpha in TIFF. To
make TIFFs which are compatible with these programs, we'll need an extra
TIFF save flag (perhaps premultiply?) to premultiply alpha and save as
EXTRASAMPLE_ASSOCALPHA.
see https://github.com/libvips/libvips/issues/2192
2021-05-01 20:08:06 +01:00
John Cupitt
edcdf8af70
rebase add-jp2ktiff on master
2021-04-26 15:16:20 +01:00
John Cupitt
0054c7dafa
add some more gifload tests
2021-03-28 13:49:34 +01:00
John Cupitt
69fcf1b9e9
Merge branch 'master' into add-openjpeg
2021-03-27 15:22:13 +00:00
John Cupitt
9cbb4c2cd1
Merge pull request #1709 from libvips/add-libnsgif
...
Add libnsgif support
2021-03-27 15:10:30 +00:00
John Cupitt
40c020ccd2
more jp2k tests
2021-03-23 17:15:02 +00:00
John Cupitt
2575d963bd
add jp2k tests
...
and buffer load/save
2021-03-20 12:16:10 +00:00
John Cupitt
8d6f90c060
Merge branch '8.10'
2021-03-14 11:03:40 +00:00
Kleis Auke Wolthuizen
62b0939c4b
vips2webp: force low duration frames to 100ms
2021-03-13 22:04:37 +01:00
John Cupitt
f74d6c795d
Merge branch 'master' into add-libnsgif
2021-03-07 14:37:14 +00:00
John Cupitt
2e56828053
Merge branch '8.10'
2021-03-06 11:47:02 +00:00
John Cupitt
48d9c5d0d4
update test suite for new gif loader
2021-02-28 13:50:04 +00:00
John Cupitt
0b74acf7ba
add a test for unpremultiply
...
we actually test vipsthumbnail --linear on an RGBA image, which should
catch everything, hopefully
2021-02-27 15:48:02 +00:00
John Cupitt
679665b403
fix a memleak in vips__correl
...
and some more tests
2021-02-06 15:42:31 +00:00
John Cupitt
6782769d8c
add some more mosaicing tests
...
to try to pin down the memleak
2021-02-05 17:14:48 +00:00
Lovell Fuller
3ad7363104
heifsave: add option to control subsample_mode
...
Defaults to no subsampling when Q>90 for consistency with jpegsave.
Deprecate VipsForeignJpegSubsample enum, replace with more generic
VipsForeignSubsample.
2021-01-13 10:01:34 +00:00
Kleis Auke Wolthuizen
ae55fd9523
Regenerate AVIF test image with libheif v1.10.0
...
Saves a few bytes since the software version comment is no longer included in the hdlr box.
2021-01-06 12:14:22 +01:00
Kleis Auke Wolthuizen
030bf91815
Save AVIF test image with speed=0
...
Reduces the size of the image by 6 kB.
2021-01-06 12:14:21 +01:00
Kleis Auke Wolthuizen
6e72b75efa
Adapt test suite for AVIF support
2021-01-06 12:14:21 +01:00
John Cupitt
42af1cec36
add vipsload_source
...
plus small openslideload_source fixes
2020-12-31 19:47:36 +00:00
John Cupitt
233609368b
add a test for openslideload_source
2020-12-30 18:01:54 +00:00
John Cupitt
59ea801627
Merge branch '8.10'
2020-12-27 03:08:17 +00:00
John Cupitt
158e9e153a
add some more ppm tests
2020-12-26 18:35:11 +00:00
John Cupitt
2348a02351
Merge branch '8.10'
2020-12-18 10:14:03 +00:00
Lovell Fuller
45fd740130
webpload: prevent divide-by-zero when blending pixels
...
Adds a test case to prevent regression - see commit 6eaf1ed
2020-12-17 20:23:06 +00:00
John Cupitt
25db7849e7
Merge branch '8.10'
2020-12-09 15:19:18 +00:00
John Cupitt
3996f3279b
fix range clips for casts to and from int
...
Fix two bugs:
- clip in casts from int32 and uint32 could overflow -- do these as gint64 now
- clip in casts from float to int could overflow since float32 can't
represent the full range of int32 without losing precision -- do these
as double
And add some more tests.
Thanks ewelot.
see https://github.com/libvips/libvips/issues/1922
2020-12-09 15:14:59 +00:00
John Cupitt
f6d7af46b8
Merge branch '8.10'
2020-11-24 11:15:45 +00:00
Kleis Auke Wolthuizen
ea53660a6b
Port Ruby test case to Python
2020-11-23 14:40:59 +01:00
John Cupitt
013e8beba7
Merge branch '8.10'
2020-11-11 10:06:22 +00:00
John Cupitt
6894159ad5
fix icc-profiles and dzsave --no-strip
...
We were not copying metadata down pyramid layers in dzsave, so
--no-strip didn't allow icc profiles on tiles.
Thanks altert
See https://github.com/libvips/libvips/issues/1879
2020-11-11 10:02:46 +00:00
John Cupitt
20988977ab
Merge branch '8.10'
2020-11-03 23:45:17 +00:00
John Cupitt
39899582d4
add tests for tiff pyr save region-shrink flag
...
we were testing the flag before, but not that the result was correct
see https://github.com/libvips/libvips/issues/1875
2020-11-03 23:44:11 +00:00
John Cupitt
4799df9efb
fix two small bugs in test_connections.c
...
We were passing NULL rather than argv0 to VIPS_INIT(), and we were not
freeing the loaded file.
thanks zodf0055980
see https://github.com/libvips/libvips/issues/1867
2020-10-27 15:11:29 +00:00
John Cupitt
f1c8959e66
add a test for vipsthumbnail of stdin/stdout
2020-10-04 16:14:13 +01:00
John Cupitt
48a2551957
fix TIFF thumbnail of buffer and source
...
We had dropped a couple of patches.
see https://github.com/libvips/libvips/issues/1815
2020-09-14 17:26:19 +01:00
John Cupitt
6b2079bfd3
update magick metadata naming
...
IM seem to have changed their rules for naming metadata chunks. They are
now lowercase and ICM is renamed to ICC. Add a simple test too.
See https://github.com/libvips/ruby-vips/issues/246
2020-09-06 12:59:10 +01:00
Lovell Fuller
69ee8a32b6
Ensure SVG loader skips input with chars outside x09-x7F range
...
Add test with example valid WebP image that happens to contain
the string '<svg' within its compressed image data.
2020-08-21 11:38:40 +01:00
John Cupitt
0803de07e7
move vips__lr|tbmerge to private API
2020-07-01 17:31:25 +01:00
John Cupitt
e3a500204a
Merge pull request #1593 from kleisauke/disable-deprecated
...
Fix for --disable-deprecated (#1273 )
2020-06-28 11:07:56 +01:00
John Cupitt
d831ad34d5
add ppm load/save to a connection
...
plus some more tests
2020-06-27 15:23:18 +01:00
John Cupitt
4bf27acccb
add 1/2/4 bit PNG save
...
- new @bitdepth param
- deprecate @colours param
2020-06-25 10:40:43 +01:00
Kleis Auke Wolthuizen
541e58610b
Add unit test for vips_mosaic / vips_globalbalance
2020-06-18 14:42:55 +02:00
Kleis Auke Wolthuizen
4b5db786f0
Add unit test for vips_matrixinvert
2020-06-18 14:41:03 +02:00
Kleis Auke Wolthuizen
8abcae3abc
Avoid using vips7 symbols
2020-06-18 14:21:43 +02:00
John Cupitt
b7a285e84b
remove f"" from test suite to help older pythons
2020-06-18 10:10:39 +01:00
John Cupitt
19077b53ac
revise tiff2vips 1/2/4 bit load
...
simpler, faster, smaller
2020-06-17 13:59:02 +01:00
John Cupitt
99d7573ab6
add tests for 2 and 4 bit tiff
2020-06-16 21:49:07 +01:00
John Cupitt
c307d3686f
add some more thumbnail tests
2020-06-15 14:06:16 +01:00
John Cupitt
1e015654c3
deprecate heifload autorotate
...
heifload autorotate is now always on, and we always delete EXIF
orientation tags. If a HEIC image fails to rotate upright, at least it's
someone else's fault.
see https://github.com/libvips/libvips/pull/1680
2020-06-10 19:57:50 +01:00
John Cupitt
30386db775
Merge pull request #1650 from wix-playground/master
...
Handle mirrored orientations in autorot
2020-06-06 14:46:15 +01:00
John Cupitt
6d5a371147
add some tests for subifd pyramids
...
fix a problem with jpg-compressed tiffs too
2020-06-02 18:08:34 +01:00
elad laufer
c993a7ad2a
- use jpeg in test target
2020-05-13 11:12:01 +03:00
Elad Laufer
b05cf39df8
Handle mirroring in autorot ( #8 )
...
* handle mirroring in autorot
* added tests for autorot
2020-05-12 13:01:48 +03:00
John Cupitt
c2094fcd7c
relax thresh for jpegload
...
some lib jpegs have slightly different rounding behaviour
2020-04-24 19:26:17 +01:00
John Cupitt
b689235f57
missing include in test_connections
...
Thanks brcarp.
See https://github.com/libvips/libvips/issues/1571
2020-03-11 09:11:29 +00:00
elad laufer
8749871c71
- remove no_subsample from inner calls
2020-02-18 18:04:29 +02:00
elad laufer
22b3a0d161
- use enum string
2020-02-18 13:43:02 +02:00
elad laufer
838b5e7458
- add test case
2020-02-18 11:33:29 +02:00
elad laufer
65b1a3eac2
- add test case
2020-02-18 11:09:18 +02:00
elad laufer
494d8876eb
- don't skimp on names
2020-02-17 17:15:43 +02:00
elad laufer
d2b794ec35
- use a single enum and switch that replaces no_subsample, force_subsample
2020-02-17 11:29:57 +02:00
elad laufer
c626c9de14
add force subsample argument that overrides the Q deduced subsampling directive
2020-02-16 18:37:32 +02:00
alon-ne
f88dab9ccd
Fix gif dispose handling for DISPOSE_BACKGROUND and DISPOSE_PREVIOUS
...
- Add 'scratch' field to gif that holds temporary 'scratch buffer' used for rendering frames
- For DISPOSE_BACKGROUND: Set background color to transparent instead of 0
- For DISPOSE_BACKGROUND: Write background pixels into scratch after rendering current frame, so it will be used in next frame
- For DISPOSE_PREVIOUS: Save frames that are not disposed into 'previous' field in gif, when DISPOSE_PREVIOUS is specified start with that previous frame. see http://webreference.com/content/studio/disposal.html
- Add "ANIMEXTS1.0" to Application Extension parser
- Graphic Control Extension parser refactor
- Compare file contents to expected images for animated gifs in foreign tests
2020-02-06 17:36:13 +02:00
John Cupitt
34fcd1fe69
fix autorot in thumbnail
...
`vips_thumbnail()` was not taking a private copy of the image before
modifying metadata during auto-rotate.
Thanks janko.
See https://github.com/libvips/libvips/issues/1523
2020-01-12 14:24:23 +00:00
John Cupitt
2e9d89b6d4
enable connection tests now pyvips is updated
...
pyvips should now support connections, so always enable the tests
2020-01-12 14:15:23 +00:00
Andrii Dmytrenko
d0b69826cc
Reset orientation if exif data is incorrect
2020-01-06 11:02:10 +00:00
Kleis Auke Wolthuizen
31bf0e3cb7
Update function list for stream -> source rename
2020-01-01 12:28:18 +01:00
John Cupitt
252996e3ff
make check passes after stream -> source rename
2019-12-30 12:48:20 +00:00
John Cupitt
119dd2cb72
pytest passes again after stream -> source/target
2019-12-29 23:08:33 +00:00
John Cupitt
4c5873809f
experiment with renaming stream
...
rename as VipsConnection, VipsSource, VipsTarget etc.
see https://github.com/libvips/libvips/issues/1494#issuecomment-569498619
renamed with this script:
```
set -e
edit() {
sed -i -E "$1" rename
}
for i in $*; do
cp $i rename
edit s/VIPS_STREAMOU/VIPS_TARGET_CUSTOM/g
edit s/VIPS_STREAMO/VIPS_TARGET/g
edit s/VIPS_STREAMIU/VIPS_SOURCE_CUSTOM/g
edit s/VIPS_STREAMI/VIPS_SOURCE/g
edit s/VIPS_STREAM/VIPS_CONNECTION/g
edit s/vips_streamou/vips_target_custom/g
edit s/vips_streamo/vips_target/g
edit s/vips_streamiu/vips_source_custom/g
edit s/vips_streami/vips_source/g
edit s/vips_stream/vips_connection/g
edit s/VipsStreamou/VipsTargetCustom/g
edit s/VipsStreamo/VipsTarget/g
edit s/VipsStreamiu/VipsSourceCustom/g
edit s/VipsStreami/VipsSource/g
edit s/VipsStream/VipsConnection/g
# eg. VIPS_TYPE_STREAM or VIPS_IS_STREAM
edit "s/VIPS_([A-Z]+)_STREAMOU/VIPS_\1_TARGET_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMO/VIPS_\1_TARGET/g"
edit "s/VIPS_([A-Z]+)_STREAMIU/VIPS_\1_SOURCE_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMI/VIPS_\1_SOURCE/g"
edit "s/VIPS_([A-Z]+)_STREAM/VIPS_\1_CONNECTION/g"
edit s/streamou/target_custom/g
edit s/streamo/target/g
edit s/streamiu/source_custom/g
edit s/streami/source/g
# various identifiers which also change
edit s/is_a_stream/is_a_source/g
edit s/find_load_stream/find_load_source/g
edit s/find_save_stream/find_save_target/g
edit s/new_from_stream/new_from_source/g
edit s/write_to_stream/write_to_target/g
edit s/vips_thumbnail_stream/vips_thumbnail_source/g
# eg. vips_webpload_stream
edit "s/vips_([a-z]+)load_stream/vips_\1load_source/g"
# eg. vips_webpsave_stream
edit "s/vips_([a-z]+)save_stream/vips_\1save_target/g"
mv rename $i
done
```
2019-12-29 21:40:21 +00:00
John Cupitt
664796acab
relax text test render threshold
...
so we pass on win as well, see 981ffe752b (r36581177)
2019-12-26 14:11:15 +00:00
John Cupitt
f43d6c4cf7
add note in test_desc about ppm loader
...
and why we can't test_destriptots on that
2019-12-23 14:58:22 +00:00
John Cupitt
981ffe752b
add test for text autofit
2019-12-21 05:38:39 +00:00
John Cupitt
1e2ca2e0bf
fix refleak in webpsave_buffer
...
And add teardown to the test-suite so we can spot refleaks more easily.
2019-12-21 05:13:54 +00:00
John Cupitt
e1baf66f19
"squash" to tiffsave now does lab as well
...
The "squash" option to tiffsave now also squashes 32-bit 3-band float
CIELAB images down to 8 bits.
See https://github.com/libvips/libvips/issues/1499
2019-12-18 17:29:34 +00:00
John Cupitt
6c038f5ca8
add a test for tuncated image files
2019-12-18 14:48:59 +00:00
John Cupitt
6b02c22457
add a test with VIPS_STALL
...
stresses the caching and locality systems
2019-12-18 14:41:35 +00:00
John Cupitt
e236f19f97
add fallbacks to new_from_stream
...
If the stream-based loaders fail, vips_image_new_from_stream() now falls
back to the old file and buffer loaders.
The file and buffer loaders already try the stream loaders first.
2019-12-10 17:19:12 +00:00
John Cupitt
a50405c1f7
fix some run-time errors from clang
...
Travis is now running with some amount of run-time checking enabled and
it spotted a couple of harmless things.
2019-12-05 14:14:27 +00:00
John Cupitt
ae7aaea077
doc polish
2019-12-01 15:29:28 +00:00
John Cupitt
163b0165d7
Merge pull request #1483 from libvips/check-metadata-changes
...
block metadata changes on shared images
2019-11-30 17:37:20 +00:00
John Cupitt
686829166d
fix some more metadata updates
...
some more minor cases picked up by the test suite
2019-11-30 12:11:23 +00:00
Kleis Auke Wolthuizen
2499b38403
Update C++ binding and function list
...
The generators use the new Introspect class of pyvips.
2019-11-29 14:51:03 +01:00