farbfeld is a lossless image format which is easy to parse, pipe and compress. It has the following format:

╔════════╤═════════════════════════════════════════════════════════╗ ║ Bytes │ Description ║ ╠════════╪═════════════════════════════════════════════════════════╣ ║ 8 │ "farbfeld" magic value ║ ╟────────┼─────────────────────────────────────────────────────────╢ ║ 4 │ 32-Bit BE unsigned integer (width) ║ ╟────────┼─────────────────────────────────────────────────────────╢ ║ 4 │ 32-Bit BE unsigned integer (height) ║ ╟────────┼─────────────────────────────────────────────────────────╢ ║ [2222] │ 4x16-Bit BE unsigned integers [RGBA] / pixel, row-major ║ ╚════════╧═════════════════════════════════════════════════════════╝

The RGB-data should be sRGB for best interoperability and not alpha-premultiplied.

Dependencies

libpng - for png conversions

libjpeg-turbo - for jpg conversions

Development

You can browse its source code repository or get a copy using the following command:

git clone https://git.suckless.org/farbfeld

Download

Also make sure to check your package manager. The following distributions provide packages:

Implementations

image Rust crate for image processing

imlib2 library (implies support in feh, w3m, giblib, sxiv, conky, magicpoint, scrot, libcaca, etc.)

lel farbfeld image viewer

sent presentation tool

ff-tools image filter/generator collection

ffmk makefile-based farbfeld mixer

Go encoder/decoder

resize image filter

gamut image filter collection

gimp-farbfeld gimp plug-in

farbfeld utilities huge collection of image filters

ff2sixel farbfeld image viewer for SIXEL terminals

xscreenshot screen capture tool

Author

Laslo Hunhold (dev@frign.de)

Please contact me when you find information that could be added to this page.