revise whats-new again
This commit is contained in:
parent
c22215beef
commit
8402c8847a
42
whats-new.md
42
whats-new.md
@ -14,17 +14,16 @@ the new JPEG2000 features, see below.
|
|||||||
|
|
||||||
# Experimental JPEG-XL support
|
# Experimental JPEG-XL support
|
||||||
|
|
||||||
libvips 8.11 includes experimental support for JPEG-XL load and save.
|
We've added perimental support for[JPEG-XL](https://jpeg.org/jpegxl/).
|
||||||
|
This is a new iteration of the JPEG standard,
|
||||||
[JPEG-XL](https://jpeg.org/jpegxl/) is a promising new iteration of the JPEG
|
currently in development. The Chrome web browser supports it
|
||||||
standard that's currently being developed. The Chrome web browser supports
|
behind a flag, and it looks like it might be enabled by default this autumn
|
||||||
it, though behind a flag, and it looks like it might be enabled by default
|
in Chrome 89.
|
||||||
this autumn in Chrome 89.
|
|
||||||
|
|
||||||
There have been several attempts to replace JPEG with something better in the
|
There have been several attempts to replace JPEG with something better in the
|
||||||
last few years. HEIC is perhaps the best known: it can compress files to
|
last few years. HEIC is perhaps the best known: it can compress files to
|
||||||
about half the size of comparable JPEGs and supports a range of useful
|
about half the size of comparable JPEGs and supports a range of useful
|
||||||
features, like animations, transparency and lossless
|
features like animations, transparency and lossless
|
||||||
compression. Unfortunately, it has some patent issues which may limit its
|
compression. Unfortunately, it has some patent issues which may limit its
|
||||||
usefulness.
|
usefulness.
|
||||||
|
|
||||||
@ -60,10 +59,11 @@ be squeezed out.
|
|||||||
|
|
||||||
# Thread recycling
|
# Thread recycling
|
||||||
|
|
||||||
The threading system of libvips was revamped, the new implementation uses
|
We've revamped the libvips threading system.
|
||||||
the [thread pool semantics of GLib](https://developer.gnome.org/glib/stable/glib-Thread-Pools.html),
|
The new implementation uses a [GLib thread
|
||||||
which is a single thread pool shared across all pipelines. This
|
pool](https://developer.gnome.org/glib/stable/glib-Thread-Pools.html)
|
||||||
implementation allows the reuse of already started threads.
|
to provide a single set of threads for the whole of libvips. This means
|
||||||
|
threads get reused rather then being constantly created and destroyed.
|
||||||
|
|
||||||
This was originally intended for WebAssembly but it turned out to be useful
|
This was originally intended for WebAssembly but it turned out to be useful
|
||||||
for native environments as well. Relative speed-ups are varying between ~4%
|
for native environments as well. Relative speed-ups are varying between ~4%
|
||||||
@ -72,20 +72,20 @@ pipelines and long-running processes, a performance improvement can be observed.
|
|||||||
|
|
||||||
# Loadable modules for some dependencies
|
# Loadable modules for some dependencies
|
||||||
|
|
||||||
libvips now supports building OpenSlide, libheif, Poppler and libMagick as a
|
libvips now supports building OpenSlide, libheif, Poppler and libMagick
|
||||||
dynamically loadable module. This makes it easier for distributions to provide
|
as dynamically loadable modules. This makes it easier for distributions to
|
||||||
separate (optional) packages for these dependencies, making the core package
|
provide separate (optional) packages for these dependencies, making the core
|
||||||
much slimmer and thus reducing the attack surface. Distributing separate packages
|
package much slimmer and thus reducing the attack surface. Distributing
|
||||||
could also help to comply with GPL licensing (“mere aggregation” clause) or
|
separate packages could also help to comply with GPL licensing (“mere
|
||||||
patent-encumbered software.
|
aggregation” clause) or patent-encumbered software.
|
||||||
|
|
||||||
[GModule](https://developer.gnome.org/glib/stable/glib-Dynamic-Loading-of-Modules.html)
|
[GModule](https://developer.gnome.org/glib/stable/glib-Dynamic-Loading-of-Modules.html)
|
||||||
is used to accomplish this in a portable way. We already had a simple plugin
|
is used to accomplish this in a portable way. We already had a simple plugin
|
||||||
system based on this, but the build part was not yet implemented.
|
system based on this, but the build part was not yet implemented.
|
||||||
|
|
||||||
These loadable modules are built automatically when GModule is supported, which
|
These loadable modules are built automatically when GModule is supported,
|
||||||
should be supported on at least Linux, Windows and macOS. It can be disabled
|
which should be at least Linux, Windows and macOS. It can be disabled by
|
||||||
by passing `--disable-modules` while configuring libvips.
|
passing `--disable-modules` while configuring libvips.
|
||||||
|
|
||||||
# Full-colour text rendering
|
# Full-colour text rendering
|
||||||
|
|
||||||
@ -114,7 +114,7 @@ Thanks to generous sponsorship from Lunaphore, we've added support for the
|
|||||||
|
|
||||||
The `jp2kload` and `jp2ksave` operations support all the file format
|
The `jp2kload` and `jp2ksave` operations support all the file format
|
||||||
features: shrink-on-load, 8-, 16- and 32-bit data, any number of
|
features: shrink-on-load, 8-, 16- and 32-bit data, any number of
|
||||||
iamge bands, tiled images, YCC colourspace, lossless compression, and
|
image bands, tiled images, YCC colourspace, lossless compression, and
|
||||||
optional chroma subsampling. The lossy compression profile (controlled
|
optional chroma subsampling. The lossy compression profile (controlled
|
||||||
by a `Q` parameter) is derived from the [British Museum's JPEG2000
|
by a `Q` parameter) is derived from the [British Museum's JPEG2000
|
||||||
recommendations](https://purl.pt/24107/1/iPres2013_PDF/An%20Analysis%20of%20Contemporary%20JPEG2000%20Codecs%20for%20Image%20Format%20Migration.pdf).
|
recommendations](https://purl.pt/24107/1/iPres2013_PDF/An%20Analysis%20of%20Contemporary%20JPEG2000%20Codecs%20for%20Image%20Format%20Migration.pdf).
|
||||||
|
Loading…
x
Reference in New Issue
Block a user