Free Lossless Image Format
FLIF development has stopped since FLIF is superseded by FUIF and then again by JPEG XL, which is based on a combination of Pik and FUIF.
A royalty-free and open source reference implementation of JPEG XL is available on GitHub. For more information, see JPEG XL community page or visit the JPEG XL Discord server.
FLIF is a lossless image format based on MANIAC compression. MANIAC (Meta-Adaptive Near-zero Integer Arithmetic Coding)
is a variant of CABAC (context-adaptive binary arithmetic coding), where the contexts are nodes of decision trees
which are dynamically learned at encode time.
FLIF outperforms PNG, FFV1, lossless WebP, lossless BPG and lossless JPEG2000 in terms of compression ratio.
Moreover, FLIF supports a form of progressive interlacing (essentially a generalization/improvement of PNG’s Adam7)
which means that any prefix (e.g. partial download) of a compressed file can be used as a reasonable lossy encoding of the entire image.
For more information on FLIF, visit https://flif.info
FLIF is copylefted free/libre software: you can redistribute it and/or modify it, provided that you share back.
The reference implementation of FLIF is released under the terms of the GNU Lesser General Public License version 3 or later (LGPLv3+).
The decoder library libflif_dec
is released under a weaker, non-copyleft free software license: the Apache 2.0 license.
The example application viewflif
illustrates how to use the decode library.
The example code in viewflif.c
is in the public domain (Creative Commons CC0 1.0 Universal).
On Debian:
sudo apt-get install libpng-dev
sudo apt-get install libsdl2-dev
On Fedora:
sudo dnf install libpng-devel
sudo dnf install SDL-devel
On Ubuntu:
sudo apt-get install libpng-dev make pkg-config
sudo apt-get install libsdl2-dev
make
to compile everything, ormake flif
to build just the flif
command line toolmake libflif.so
to build the LGPL’ed shared librarymake libflif_dec.so
to build the Apache licensed decode-only shared librarymake viewflif
to build the example viewer (it depends on the decode library)sudo make install
if you want to install it globallybuild\MSVC
folder and double-click the dl_make_vs.bat
file.nmake
to build flif.exe
.nmake libflif.dll
to build the shared librarynmake viewflif.exe
to build the example viewerbrew install pkg-config libpng sdl2
make
in the FLIF/src directoryThese will be available on the Release page
Or, you can get the Snap package: