This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Free Lossless Image Format" – news ·newspapers ·books ·scholar ·JSTOR(September 2017) (Learn how and when to remove this message) |
Free Lossless Image Format | |
---|---|
![]() | |
![]() | |
Filename extension | .flif |
Internet media type | image/flif |
Uniform Type Identifier (UTI) | public.flif |
Magic number | FLIF |
Developed by | Jon Sneyers and Pieter Wuille |
Latest release | FLIF16 |
Extended to | FUIF,JPEG XL[1] |
Open format? | Yes |
Website | flif |
FLIF, reference implementation | |
---|---|
Initial release | 3 October 2015; 9 years ago (2015-10-03)[2] |
Stable release | |
Repository | |
Website | flif![]() |
Free Lossless Image Format (FLIF) is alossless image format claiming to outperformPNG, losslessWebP, losslessBPG and losslessJPEG 2000 in terms of compression ratio on a variety of inputs.[4]
FLIF supports a form of progressiveinterlacing (a generalization of theAdam7 algorithm) with which any partial download (greater than couple hundred bytes[5]) of an image file can be used as a lossy encoding of the entire image.
Jon Sneyers, one of the developers of FLIF, since combined it with ideas from various lossy compression formats to create a successor called the Free Universal Image Format (FUIF), which itself was combined withGoogle's PIK format to createJPEG XL. As a consequence, FLIF is no longer being developed.[1]
The format was initially announced publicly in September 2015,[6]with the firstalpha release occurring about a month later, in October 2015.[2]
The first stable version of FLIF was released in September 2016.[7]
For compression, FLIF uses MANIAC (Meta-Adaptive Near-zero IntegerArithmetic Coding), a variant ofCABAC where the contexts are nodes of decision trees which are dynamically learned at encode time.
FLIF uses the reversibleYCoCgcolor space[8] (unlikeY′CBCR that loses some color information to rounding errors, independently of its use in otherwise lossyJPEG). Not yet implemented are some features,[9] e.g. other "color spaces (CMYK, YCbCr, ...)". The color space conversion is faster, but the overall decoding (and encoding) is still slower than it needs to be, or some of the competition, even with the better color space as that is only a small fraction of the overall process. The format supports an optionalalpha channel (RGBA) likePNG (but unlikeJPEG); and progressive coding, similar to PNG (unlike it, progressive compression doesn't increase file-size), but as FLIF's algorithm is more complex (and partly, may not have had as much tuning of the implementation yet), it has a higher computational cost; at least lower bandwidth requirements can offset some of that extra time. Progressive coding reduces FLIF's performance.
FLIF supportsgrayscale,RGB and RGBA withcolor depth of 1 to 16 bits per channel.[8]
FLIF has some tuning parameters which can result in differently sized images. All of the images are still lossless. Aflifcrush
tool is also available to achieve the minimal size.
Lossy compression can be achieved by preprocessing. The process is deterministic and does not causegeneration loss.