Short description: Raster graphics format
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] |
|---|
| Website | flif.info |
|---|
FLIF, reference implementation| Initial release | 3 October 2015; 8 years ago (2015-10-03)[2] |
|---|
|
| Stable release | 0.4
/ 21 November 2021; 2 years ago (2021-11-21)[3] |
|---|
|
|
Free Lossless Image Format (FLIF) is a lossless image format claiming to outperform PNG, lossless WebP, lossless BPG and lossless JPEG 2000 in terms of compression ratio on a variety of inputs.[4]
FLIF supports a form of progressive interlacing (a generalization of the Adam7 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 Free Universal Image Format ({{{2}}}) (FUIF), which itself was combined with Google's PIK format to create JPEG XL. As a consequence, FLIF is no longer being developed.[1]
History
The format was initially announced publicly in September 2015,[6]
with the first alpha release occurring about a month later, in October 2015.[2]
The first stable version of FLIF was released in September 2016.[7]
Design
For compression, FLIF uses MANIAC (Meta-Adaptive Near-zero Integer Arithmetic Coding), a variant of CABAC where the contexts are nodes of decision trees which are dynamically learned at encode time.
FLIF uses the reversible YCoCg color space[8] (unlike Y′CBCR that loses some color information to rounding errors, independently of its use in otherwise lossy JPEG). 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 optional alpha channel (RGBA) like PNG (but unlike JPEG); 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 supports grayscale, RGB and RGBA with color 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. A flifcrush tool is also available to achieve the minimal size.
Lossy compression can be achieved by preprocessing. The process is deterministic and does not cause generation loss.
Support
- XnView supports FLIF since version 2.36.[10]
- ExifTool supports reading and writing metadata in FLIF images since version 10.31.[11]
- UGUI-FLIF supports preview and converting PNG file to FLIF.[12]
- IrfanView supports reading FLIF images since version 4.52.[13][14]
References
- ↑ 1.0 1.1 "Notice for JPEG XL". 2020-04-12. https://github.com/FLIF-hub/FLIF/commit/973a6a564fbdffc2aff38ff474dd35aa5bb95aa7.
- ↑ 2.0 2.1
"Release v0.1-alpha". 2015-10-03. https://github.com/FLIF-hub/FLIF/releases/tag/v0.1-alpha.
- ↑ "Release v0.4". 2021-11-21. https://github.com/FLIF-hub/FLIF/releases/tag/v0.4.
- ↑
"FLIF is a New Free Lossless Image Format That Raises the Compression Bar". PetaPixel. 2015-10-02. http://petapixel.com/2015/10/02/flif-is-a-new-free-lossless-image-format-that-raises-the-compression-bar/.
- ↑ "Image compression race: PNG Adam7 vs FLIF (time: 0:00)". 2015-09-06. https://www.youtube.com/watch?v=ByH7RMsMxBY.
- ↑
"Free Lossless Image Format (FLIF)". 2015-09-06. https://boards.openpandora.org/topic/18485-free-lossless-image-format-flif/.
- ↑
"Release v0.2". 2016-09-22. https://github.com/FLIF-hub/FLIF/releases/tag/v0.2.
- ↑ 8.0 8.1 "FLIF16 Specification". https://flif.info/spec.html#_overview_of_the_format.
- ↑ "YCoCg Heuristics · Issue #258 · FLIF-hub/FLIF". https://github.com/FLIF-hub/FLIF/issues/258.
- ↑ Pierre-Emmanuel Gougelet (2016-11-08). "XnView 2.39". XnView. http://newsgroup.xnview.com/viewtopic.php?f=35&t=34085.
- ↑ Phil Harvey (2016-10-19). "ExifTool Ancient History". ExifTool. http://owl.phy.queensu.ca/~phil/exiftool/ancient_history.html#v10.31.
- ↑ "UGUI: FLIF Download". http://flif.info/UGUI_FLIF/.
- ↑ Irfan Skiljan (2018-12-12). "History of IrfanView Changes/Versions: [4.52 current 2018-12-12"]. https://www.irfanview.com/main_history.htm.
- ↑ Kuki Dent (2018-12-13). "IrfanView 4.52 has been released today -IrfanView Support Forum". https://irfanview-forum.de/showthread.php?t=11867.
External links
- – official site
- on GitHub
- PolyFLIF – a Javascript library to decode FLIF in browsers
- FLIF at Open Hub
- Phew – native macOS FLIF viewer
- FLIF Optimizer – tuning parameters for better lossless compression
Graphics file formats |
|---|
| Raster |
- ANI
- ANIM
- APNG
- ART
- BMP
- BPG
- BSAVE
- CAL
- CIN
- CPC
- CPT
- DDS
- DPX
- ECW
- EXR
- FITS
- FLIC
- FLIF
- FPX
- GIF
- HDRi
- HEVC
- ICER
- ICNS
- ICO / CUR
- ICS
- ILBM
- JBIG
- JBIG2
- JNG
- JPEG
- JPEG-LS
- JPEG 2000
- JPEG XR
- JPEG XT
- KRA
- MNG
- MIFF
- NRRD
- PAM
- PBM / PGM / PPM / PNM
- PCX
- PGF
- PICtor
- PNG
- PSD / PSB
- PSP
- QTVR
- RAS
- RGBE
- SGI
- TGA
- TIFF
- UFO/ UFP
- WBMP
- WebP
- XBM
- XCF
- XPM
- XWD
|
|---|
| Raw | |
|---|
| Vector |
- AI
- CDR
- CGM
- DXF
- EVA
- EMF
- Gerber
- HVIF
- IGES
- PGML
- SVG
- VML
- WMF
- Xar
|
|---|
| Compound |
- CDF
- DjVu
- EPS
- PDF
- PICT
- PS
- SWF
- XAML
|
|---|
| Metadata |
- Exchangeable image file format (Exif)
- Extensible Metadata Platform (XMP)
|
|---|
Category
Comparison
|
Multimedia compression and container formats |
|---|
Video compression | | ISO, IEC, MPEG |
- MJPEG
- Motion JPEG 2000
- MPEG-1
- MPEG-2
- MPEG-4
- Part 2 / ASP
- Part 10 / AVC
- MPEG-H
- MPEG-I
|
|---|
| ITU-T, VCEG |
- H.120
- DCT
- H.261
- H.262
- H.263
- H.264 / AVC
- H.265 / HEVC
- H.266 / VVC
- DV
|
|---|
| SMPTE | |
|---|
| TrueMotion | |
|---|
| Others |
- Apple Video
- AVS
- Bink
- Cinepak
- Daala
- DVI
- EVC
- FFV1
- Huffyuv
- Indeo
- Lagarith
- Microsoft Video 1
- MSU Lossless
- OMS Video
- Pixlet
- ProRes 422
- ProRes 4444
- QuickTime
- RealVideo
- RTVideo
- SheerVideo
- Smacker
- Sorenson Video/Spark
- Theora
- Thor
- WMV
- XEB
- YULS
|
|---|
|
|---|
Audio compression | | ISO, IEC, MPEG |
- MPEG-1 Layer II
- MPEG-1 Layer I
- MPEG-1 Layer III (MP3)
- AAC
- MPEG Surround
- MPEG-4 ALS
- MPEG-4 SLS
- MPEG-4 DST
- MPEG-4 HVXC
- MPEG-4 CELP
- MPEG-D USAC
- MPEG-H 3D Audio
|
|---|
| ITU-T |
- G.711
- G.718
- G.719
- G.722
- G.722.1
- G.722.2
- G.723
- G.723.1
- G.726
- G.728
- G.729
- G.729.1
|
|---|
| IETF | |
|---|
| 3GPP |
- AMR
- AMR-WB
- AMR-WB+
- EVRC
- EVRC-B
- EVS
- GSM-HR
- GSM-FR
- GSM-EFR
|
|---|
| ETSI | |
|---|
| Others |
- ACELP
- ALAC
- Asao
- ATRAC
- AVS
- CELT
- Codec 2
- DRA
- FLAC
- iSAC
- Monkey's Audio
- TTA
- MT9
- Musepack
- OptimFROG
- OSQ
- QCELP
- RCELP
- RealAudio
- RTAudio
- SD2
- SHN
- SILK
- Siren
- SMV
- SVOPC
- TwinVQ
- VMR-WB
- VSELP
- WavPack
- WMA
- MQA
- aptX
- aptX HD
- aptX Low Latency
- aptX Adaptive
- LDAC
- LHDC
- LLAC
|
|---|
|
|---|
Image compression | IEC, ISO, IETF, W3C, ITU-T, JPEG |
- CCITT Group 4
- DCT
- HEIF
- HEVC
- JPEG
- JPEG XR
- JPEG XT
- TIFF/EP
- Arithmetic
- JPEG-LS
- JPEG 2000
- LZ
- TIFF
- TIFF/IT
|
|---|
| Others |
- APNG
- BPG
- DjVu
- EXR
- FLIF
- ICER
- MNG
- PGF
- QTVR
- WBMP
- WebP
|
|---|
|
|---|
| Containers | | ISO, IEC |
- MPEG-ES
- MPEG-PS
- MPEG-TS
- ISO base media file format
- MPEG-4 Part 14 (MP4)
- Motion JPEG 2000
- MPEG-21 Part 9
- MPEG media transport
|
|---|
| ITU-T | |
|---|
| IETF | |
|---|
| SMPTE | |
|---|
| Others |
- 3GP and 3G2
- AMV
- ASF
- AIFF
- AVI
- AU
- BPG
- Bink
- BMP
- DivX Media Format
- EVO
- Flash Video
- IFF
- M2TS
- Matroska
- QuickTime File Format
- RatDVD
- RealMedia
- RIFF
- MOD and TOD
- VOB, IFO and BUP
|
|---|
|
|---|
| Collaborations |
- NETVC
- MPEG LA
- HEVC Advance
|
|---|
| Methods |
- Discrete cosine transform
- Entropy
- Arithmetic
- Huffman
- Modified
- FFT
- LPC
- Lossless
- Lossy
- LZ
- PCM
- Transform
- Wavelet
|
|---|
| Lists |
- Comparison of audio coding formats
- Comparison of video codecs
- List of codecs
|
|---|
See Compression methods for techniques and Compression software for codecs |