HEIF Image Container Format Leverages H.265/HEVC to Store Photos and Image Sequences

Orange Pi Development Boards

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 vs Animated GIF – Click here to see the animations in action

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

7
Leave a Reply

avatar
6 Comment threads
1 Thread replies
4 Followers
 
Most reacted comment
Hottest comment thread
6 Comment authors
RowandaveKellyitchy n scratchytkaiser Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Tesla
Guest
Tesla

So they made image format based on video format that can also hold video.

tkaiser
Guest
tkaiser

@Tesla
They made a new image format that provides better image quality compared to JPEG at the same or lower size. It’s well known that JPEG sucks here and that’s the reason JPEG2000 has been invented… yeah, as the name suggests back in 2000. Nobody is using it since all browser vendors except Apple boycott it: https://caniuse.com/#feat=jpeg2000

Another nice feature is transparency in images. Problem already solved long ago since PNG provides such an alpha channel mode (GIF too but only ugly 1-bit mode) but nobody is using PNGs with alpha channels since boycotted by Microsoft in IE for a very long time (or implemented too poorly prior to IE 9): https://caniuse.com/#search=png

Short auto-playing videos like animated GIFs but not that ugly and with true transparency like HEIF now? Problem solved long ago with Animated PNG (APNG) but nobody is using it since boycotted by Microsoft in their two ‘great’ web browsers. Again: https://caniuse.com/#search=png

Of course HEIF will be the way better alternative to animated GIFs since essentially it’s just a HEVC movie embedded in something called ‘new image file format’. But why should anyone provide contents using this format as long as relevant browser vendors boycott it?

So when looking at this format spreading it seems like a nice move if you’re MPEG patent holder (they’re in trouble now that the free AV1 codec is just around the corner) or if you’re malware author. The latter love complexity and especially extensibility in file formats since this ensures that there are magnitudes more bugs to exploit.

Most probably nobody will find a new bug that can be exploited by displaying an animated GIF (since file format old and primitive). With HEIF there will be a lot more opportunities as with everything new, complex and extensible. This link will be populated soon: https://www.cvedetails.com/google-search-results.php?q=heif 😉

itchy n scratchy
Guest
itchy n scratchy

Iknow its OT but:
the Bootlin Kickstarter campaign is about 1200€ short of reaching the stretch goal of h265 decoding on Allwinner. If anyone wants to contribute in the last minute: https://www.kickstarter.com/projects/bootlin/allwinner-vpu-support-in-the-official-linux-kernel

dave
Guest
dave

€579 needed for h265 playback, 8hrs to go.

Tesla
Guest
Tesla

@tkaiser
Yeah, it is all rather sad. There is also BPG format mentioned in the last column. Great stuff, can replace most if not all real world needs. Can be used right now with JS decoder but no native browser support because of patents and royalties.

For now we are stuck with JPEG optimizers

Kelly
Guest
Kelly

Lots of people use alpha channel PNG, I dunno what you are talking about there.

In any case, this patented nonsense has no future. We already have free webp, and some other possibilities coming along like FLIF

And people use webm already to replace large animated gifs

Rowan
Guest
Rowan

Poor quality is part of the charm of GIFs.