Babl iconBabl 0.1.10

A dynamic, any to any, pixel format conversion library.
babl is a dynamic, any to any, pixel format translation library.

Babl 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.

Usage:

The simplest scenario for using babl is converting between linear buffers represented by an existing BablPixelFormat.

babl_process (babl_fish (babl_format ("srgb"), babl_format ("CIE Lab float")),
srgb_buffer, lab_buffer,
pixel_count);


If the existing pixel formats are not sufficient for your conversion needs, new ones can be created on the fly. The constructor will provide the prior created one if duplicates are registered.

format = babl_format_new (babl_model ("R'G'B'"),
babl_type ("u8"),
babl_component ("B'"),
babl_component ("G'"),
babl_component ("R'"),
NULL);

babl_process (babl_fish (source_format, destination_format),
source_buffer, destination_buffer,
pixel_count);

Main features:

  • Fast.
  • Accurate.
  • 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.

last updated on:
May 3rd, 2012, 6:23 GMT
price:
FREE!
developed by:
Babl Team
license type:
LGPL (GNU Lesser General Public License) 
category:
ROOT \ Multimedia \ Graphics

FREE!

In a hurry? Add it to your Download Basket!

user rating 16

UNRATED
3.5/5
 

0/5

Add your review! 1 USER REVIEW SO FAR

SUBMIT