babl is a dynamic, any to any, pixel format translation library.
It allows converting between different methods of storing pixels known as pixel formats that have with different bitdepths and other data representations, color models and component permutations.
A vocabulary to formulate new pixel formats from existing primitives is provided as well as the framework to add new color models and data types.
– Stable, small API.
– Self profiling and optimizing.
– ANSI C, works on win32, linux and mac, 32bit and 64bit systems.
– Extendable with new formats, color models, components and datatypes.
– Reference 64bit floating point conversions for datatypes and color models.
GEGL through GeglBuffer provides tiled buffers with on disk storage as well as linear buffers with accessor functions for efficient data access transparently using babl fishes for translation to the desired pixel formats.