GEGL (Generic Graphics Library) is a data flow based image processing framework, providing floating point processing and non-destructive image processing capabilities to GNU Image Manipulation Program and other projects (imgflo, GNOME Photos, gcut, iconographer, …)
With GEGL you chain together processing operations to represent the desired image processing pipeline. GEGL provides operations for image loading and storing, color adjustments, GIMPs artistic filters and more forms of image processing GEGL can also be used from the commandline.
The primary repository for the GEGL source code in GNOME git, and at GIMPs download site tarball releases.
GEGL is Free Software, and both new functionality in new operations as well as relevant development, enhancement requests, patches and bug reports for GEGL at gitlab.gnome.org/GNOME/gegl ,
Finanical support for fun new filters and capabilities as well as gardening/janitor bits and offshoot new color related infrastructure as part of project maintainership is welcome through the patreon campaign at GIMPs donation page.
Homepage
Download
Recent Releases
0.4.5028 Nov 2024 19:25
minor bugfix:
Core:
Better Gobject Introspection annotation coverage.
Improved error handling for gegl chain processing.
Added accessors for pad meta-data, to be able to show names and descriptions in UIs.
GeglColor: more lax parameters for g_arapm_values_cmp.
Ops:
.
API: GEGL_OP_NAME needs to be uniqe.c filenames no longer needs to be.
First registered op with a given name now takes precedence over later.
- exr-save: store 16bpc files as half, ing gimp#10778.
- ff-load, ff-save: build with FFmpeg 7.
- dither: do processing in linear when all levels==2.
- OpenCL: upgrade from 1.1 to 3.0, disable opencl caching system - not crashing
is more important than caching. And to the opencl operation of the following
ops:
- alien-map.
- color-to-alpha.
- edge-sobel.
- hue-chroma.
- noise-reduction.
- oilify.
- snn-mean.
New Ops:
styles: a UI for achieving many visual effects for use on text and similar.
alpha defined shapes.
bevel: simulate light and shadow on an alpha defined shape.
inner-glow: an inner shadow glow effect
New Ops in workshop:
ctx-script: an experimental op for rendering ctx protocol this might be a.
future basis for ctx-based vector layers.
Build:
Various meson cleanups.
Generate.pdb (CodeView) desymbols for Windows
Reproducible build by getting rid of runtime values in.gir files.
Updated vendored libraries.
ctx has been updated from upstream, perhaps most significantly the.
protocol/drawing API has been fuzzed with afl+ +
Contributors to this release, including translators:
Alan Mortensen, Alexandre Prokoudine, Alx Sa, Anders Jonsson, Andi Chandler.
Andre Klapper, ArtSin, Asier Sarasua Garmendia, Bruce Cowan, Bruno, Bruno Lopes,
Daniel Șerbănescu, Ekaterine Papava, Jacob Boerema, Jehan, Joe Locash, Jordi Mas,
Kolbjørn Stuestøl, Lukas Oberhuber, Luming Zh, Marco Ciampa, Martin, Morgane Glidic,
Niels De Graef, Rodrigo Lledó, Sabri Ünal, Sam Lester, Tim Sabsch, Varun Samaga B L,
Yuri Chornoivan, dimspingos, lillolollo, psykos
0.4.4819 Mar 2024 12:43
minor feature:
0.4.4406 Jul 2023 02:33
minor feature:
0.4.1803 Jan 2020 22:52
minor feature:
0.4.1626 Sep 2019 01:01
minor feature:
Buffer
Swapped behavior of cubic interpolation from cubic to mithcell coefficients, leading to crisper results in all uses of the cubic sampler.
Use a custom allocator for tile data which aligns data and groups allocations in blocks - improving performance on windows by keeping more slack allocation memory in-process. On linux the opposite was needed and is achieved by using the GNU extension malloc_trim which permits forcing invokation of the glibc malloc/free allocators garbage collection function.
Permit tiles to be unreffed after GEGL shut-down without crash, which is likely when using bindings to dynamic languages.
Improved deadlock prevention in gegl_buffer_copy() when using copy on write.
Core
Platform specific build fixes for both win32 and OSX.
Avoid in-place processing for cached nodes.
Indentation consitency improvements.
Permit more detailed specifying/overriding of OpenCL device through the GEGL_USE_OPENCL environment variable.
New call gegl_update_anim_time for applying the animation curves of properties.
Build
Added gitlab continuous integration.
Operations
Use indirect buffer inputs on main thread during multi-processed processing for point-filters/composers and tranform base classes.
Smaller required/invalided ROI for map-absolute/relative when using nearest neighbor.
tiff-save and jpg-save fixed dimensions when buffer saved has non-zero origin
Added missing descriptions of properties for cubism, mosaic, tile-paper, color, mantiuk06 and vignette operations.
ff-load fix some of the deprecation warnings.
ff-save avoid crashing if audio or video codec fails to initialize.
cache, parent class changed - it is no longer a point operations, also speed up processing and permit copy on write handling of tiles.
opacity and invert - crash for 8bpc buffers, reimplemented logic for (non-)associated alpha OpenCL kernel selection.
Tools
Drop direct dependency on exiv2 - we now only transiently depend on it through the gexiv2 abstraction.