A few years ago, Google introduced WebP image format leveraging VP8 video codec, and the Moving Picture Experts Group (MPEG) has decided to do something similar but instead of using VP8, they went with their own H.265/HEVC video codec for HEIF image container format.
HEIF stands for High Efficiency Image File, and is defined by ISO/IEC 23008-12 (MPEG-H Part 12). The storage of the data is based on ISO Base Media File Format (ISOBMFF), and HEIF appears to be especially useful to replace animated GIFs file with better quality and much lower sizes, as well as burst photos.

HEIF also appears to compress a little better than JPEG photo with similar quality, but HEIF appears to fallback to JPEG codec sometimes, so it may be improvement in the way metadata is handled? The comparison table show the different features between HEIF and other well-known image format (JEG, WebP, GIF, etc…). Source: Nokiatech Github.io page.
.heic | JPEG/Exif | PNG | GIF (89a) | WebP | JPEG-XR / TIFF | JPEG-XR / JPX | BPG | |
---|---|---|---|---|---|---|---|---|
Formats and extensibility | ||||||||
Base container file format | ISOBMFF | TIFF | – | – | RIFF | TIFF | – | – |
Lossy compression | Yes (HEVC) | Yes (JPEG) | No | No | Yes (VP8) | Yes | Yes | Yes (HEVC) |
Lossless compression | Yes (HEVC) | Yes (TIFF Rev 6.0) | Yes (PNG) | Yes (GIF) | Yes (VP8L) | Yes | Yes | Yes (HEVC) |
Extensible to other coding formats | Yes | Yes | No | No | No | Yes | Yes | No |
Metadata format (on top of internal) | Exif, XMP, MPEG-7 | Exif | – | – | Exif, XMP | Exif, XMP | JPX, (XMP) | Exif, XMP |
Extensible to other metadata formats | Yes | No | No | No | No | No | Yes (XML-based) | Yes |
Other media types (audio, text, etc.) | Yes | Audio | No | No | No | No | Yes | No |
Multi-picture features | ||||||||
Multiple images in the same file | Yes | No | No | Yes | Yes | No | Yes | Yes |
Image sequences / animations | Yes | No | No | Yes | Yes | No | Yes | Yes |
Image coding | Yes | No | No | No | No | No | No | Yes |
Derived images | ||||||||
Multiple-of-90-degree rotations | Yes | Yes | No | No | No | Yes | Yes | No |
Cropping | Yes | No | No | No | No | No | Yes | No |
Tiling/overlaying | Yes | No | No | No | Yes | No | Yes | No |
Extensible to other editing operations | Yes | No | No | No | No | No | No | No |
Auxiliary picture information | ||||||||
Transparency (alpha plane) | Yes | No | Yes | No | Yes | Yes | Yes | Yes |
Thumbnail image | Yes | Yes | No | No | No | Yes | Yes | Yes |
I had no idea you could embed audio into JPEG files until today.
HEIF files normally use .heic or .heif extension, and support has been implemented in macOS High Sierra and iOS 11, and it’s coming to Android P and Windows 10 Build 17123. Nokia has also released an open source JavaScript HEIF writer/reader with the code available on Github.
Via Liliputing

Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress