High Efficiency Image File Format


High Efficiency Image File Format is a container format for individual images and image sequences.
It was developed by the Moving Picture Experts Group and is defined as Part 12 within the MPEG-H media suite.
MPEG claims that a HEIF image using HEVC requires about half the storage space as the equivalent quality JPEG.
HEIF also supports animation, and is capable of storing more information than an animated GIF or APNG at a small fraction of the size.
Introduced in 2015, HEIF was adopted by Apple in 2017 with the introduction of iOS 11, and support on other platforms is growing.
HEIF files are a special case of the ISO Base Media File Format, first defined in 2001 as a shared part of MP4 and JPEG 2000.
This file format standard covers multimedia files that can also include other media streams, such as timed text, audio and video.

History

The requirements and main use cases of HEIF were defined in 2013.
The technical development of the specification took about one and a half years and was finalized in the middle of 2015.
Apple was the first major adopter of the format in 2017 with the introduction of iOS 11 using HEIC variant.
On some systems, pictures stored in the HEIC format are converted automatically to the older JPEG format when they are sent outside of the system.

Features

HEIF files can store the following types of data:
; Image items: Storage of individual images, image properties and thumbnail.
; Image derivations: Derived images enable non-destructive image editing, and are created on the fly by the rendering software using editing instructions stored separately in the HEIF file. These instructions and images are stored separately in the HEIF file, and describe specific transformations to be applied to the input images. The storage overhead of derived images is small.
; Image sequences: Storage of multiple time-related and/or temporally predicted images, their properties and thumbnails. Different prediction options can be used in order to exploit the temporal and spatial similarities between the images. Hence, file sizes can be drastically reduced even when tens of images are stored in the same HEIF file.
; Auxiliary image items: Storage of image data, such as an alpha plane or a depth map, which complements another image item. These data are not displayed as such, but used in various forms to complement another image item.
; Image metadata: Storage of EXIF, XMP and similar metadata which accompany the images stored in the HEIF file.

Variants

As HEIF is a container format, it can contain still images and image sequences that are coded in different formats.
The main filename extensions are .heif for still images and .heifs for sequences, which can both be used with any codec.
Apple supports playback of .heif for still image files and .heifs for image sequence files created on other devices that are encoded using any codec, provided that codec is supported by the operating system.
Generic HEIF image files are typically stored with filename extensions .heif, but they may use a different extension to indicate the specific codec used.

MIAF

The Multi-Image Application Format is a restricted subset of HEIF specified as part of MPEG-A.
It defines a set of additional constraints to simplify format options, specific alpha plane formats, profiles and levels as well as metadata formats and brands, and rules for how to extend the format.

HEIC: HEVC in HEIF

is an encoding format for graphic data, first standardized in 2013.
It is the primarily used and implied default codec for HEIF as specified in the normative Annex B to ISO/IEC 23008-12 HEVC Image File Format.
While not introduced formally in the standard, the acronym HEIC is used as a brand and in the MIME subtypes image/heic and image/heic-sequence. If the content conforms to certain HEVC profiles, more specific brands can be used: HEIX for Main 10 of HEVC, HEIM for Main profile and HEIS for Main profile of L-HEVC.
The variation of HEIF used in Apple products exclusively uses HEVC compression technology and is known as HEIC. A HEIC photo takes up about half the space of an equivalent quality JPEG file, and meets many next-generation photographic needs.
The initial HEIF specification already defined the means of storing HEVC-encoded intra images and HEVC-encoded image sequences in which inter prediction is applied in a constrained manner.
HEVC image players are required to support rectangular cropping and rotation by one, two and three quarter-turns. The primary use case for the mandatory support for rotation by 90 degrees is for images where the camera orientation is incorrectly detected or inferred. The rotation requirement makes it possible to manually adjust the orientation of a still image or an image sequence without needing to re-encode it. Cropping enables the image to be re-framed without re-encoding. The HEVC file format also includes the option to store pre-derived images.)
Samples in image sequence tracks must be either intra-coded images or inter-picture predicted images with reference to only intra-coded images. These constraints of inter-picture prediction reduce the decoding latency for accessing any particular image within an HEVC image sequence track.
The .heic and .heics file name extensions are conventionally used for HEVC-coded HEIF files.
Apple products, for instance, will only produce files with these extensions, which indicate clearly that the data went through HEVC encoding.

AVCI: AVC in HEIF

is an older encoding format for video and images, first standardized in 2003.
It is also specified as a codec to be supported in HEIF in normative Annex 5 to ISO/IEC 23008-12.
The registered MIME types are image/avci for still images and image/avcs for sequences. The format is simply known as AVCI.
Apple products support playback of AVC-encoded .avci still image files and .avcs image sequence files, but will only generate .heic files.

AVIF: AV1 in HEIF

is a video encoding format that is intended to be royalty free developed by the Alliance for Open Media.
AV1 Image File Format is an image format based on this codec.
The registered MIME types are image/avif for still images which usually carry an .avif file name extension and image/avif-sequence for sequences which use .avifs file name extension.
This may be confusable with the classic AVI Windows multimedia format which typically uses .avi.

JPEG and HEIF

is the most commonly used and best supported lossy image format, first released in 1992 by ITU-T and ISO/IEC. Although Annex H to ISO/IEC 23008-12 specifies JPEG as a possible format for HEIF image data, it is only ever used for thumbnails and other secondary images. Therefore neither a dedicated MIME subtype nor a special file extension is available.
JPEG 2000 also uses ISOBMFF, but in a way incompatible with HEIF, while JPEG XR uses a TIFF-based container format. Neither of them is currently formally specified as an image codec for use within HEIF.
In 2017, Apple announced that it would adopt HEIC as the default image format in its new operating systems, gradually replacing JPEG.
Both AVIF and HEIC are currently being considered as possible replacements for the universal JPEG format because, among other technical contributions, both can reduce file size by about 50% while maintaining equivalent quality. However as of May 2020, there's no native browser support planned for HEIC, while both Google's Chromium and Mozilla's Firefox have experimental AVIF support.

Support

, no browser supports HEIC natively. Both Chromium and Firefox have merged experimental support for AVIF in their source code.

Image editing software

HEIF itself is a container that may not be subject to additional royalty fees for commercial ISOBMFF licensees. Note however that Nokia also grants its patents on a royalty-free basis for non-commercial purposes. When containing images and image sequences encoded in a particular format its use becomes subject to the licensing of patents on the coding format.