2018-01-19

HEIF Decoder Libheif

Libheif is an ISO/IEC 23008-12:2017 HEIF file format decoder (encoder is to come).

HEIF stands for High Efficiency Image File Format. It is a new file format for computer images and image sequences based on the h.265 (HEVC) video coding standard. The developers of the HEIF specification claim that the compression factor of HEIF is at least twice as high as for JPEG. HEIF also combines many nice features, like integration of alpha channels and lossless coding, which are both not possible with JPEG. Furthermore, it supports auxiliary depth images, storing image series like exposure sequences in a single image. As such, it could replace both JPEG and PNG and offer even more possibilities.

Simply put, HEIF brings you stunning image quality with a fraction of the size of a JPEG image. That's why it's called "high efficiency". The technical specification of this image format is the same as the core of the H.265 video codec. H.265 is essential for decoding/encoding ultra high definition video contents, those 4K or 8K videos.

The German company struktur AG is developing an open source library Libheif for the new image format. The decoder is ready to use and the encoder is to come. The developer of Libheif is Dr. Dirk Farin, who has been an expert in image/video coding since the 1990s.

Libheif is written in C++, with the public API being plain C. The implementation covers all common features like tiled images, alpha channels, depth images, thumbnails, and Exif data.

It is being continuously tested with static code analysis and code fuzzers to spot potential security issues. The code has also been compiled into JavaScript so that it can be used to render HEIF files in a variety of environments, such as a web browser. There is a demo page, on which you can view your own  HEIF photos rendered by Libheif completely in client-side JavaScript. There is also a HEIF plugin available for GIMP, based on libheif.


You are welcome to try out libheif and feedbacks are appreciated!

Libheif is distributed under the terms of the GNU Lesser General Public License. 

No comments:

Post a Comment