* Add configure check for libwebp >= 0.1.3
* Add custom memory writer using GNOME memory allocation
* Add various ABI checks and warnings for unsupported features:
** smart_subsample and near_lossless require 0.5.0
** lossless requires at least 0.1.99
This allows to control the fidelity of the alpha channel by allowing
webp to reduce the number of palette entries from 256 at alpha_q=100
to 2 at alpha_q=0. This is most useful with cutout pictures where
something like alpha_q=30 or around 8 levels is usually sufficient
for smooth outlines.
For some reason webp->Q was intiailized to 80 even though the Q option
and libwebp use 75 by default. This was never used, so it's just to
avoid confusion about what default is used.
The near_lossless option allows to enable preprocessing for the lossless
mode. This is a boolean instead of an int, because the amount of
preprocessing is controlled using the Q factor parameter which is
otherwise unused in lossless mode. This allows to re-use the quality
setting in existing tools.
This enables a high quality RGB to YUV converter in libwebp which
greatly improves the quality of fine details by reducing color bleeding
caused by the 4:2:0 chroma subsampling. This is slower and causes
slightly larger files. See WebPPictureSmartARGBToYUVA in libwebp.
GM is still using the old page interface of subimage/subrange, IM has
deprecated that in favour of scene/number_scenes
we were accidentally just supporting the new IM system ... this change
adds support for GM as well, plus a configure test to pick one
see https://github.com/jcupitt/libvips/issues/423
jpeg write is more careful about removing exif tags that have been
removed from the image metadata
it failed previously if there were multiple Orientation tags
you can now put options like [scale=2] at the end of out_format ...
these are stripped before running the command, but use to load the
output image back into libvips again