h.265 Video Codec Implementation

libde265 is an open source implementation of the h.265 video codec (HEVC) I am writing for Struktur AG. It is written from scratch in plain C for simplicity and efficiency. Its simple API makes it easy to integrate it into other software.

libde265 decodes all common types of HEVC files up to version 2 of the H.265 standard, including RExt (range extensions, 4:2:2 chroma, 4:4:4 chroma, up to 14 bit decoding). The decoder can parallelize the decoding of streams employing WPP and tiles. A branch supporting scalable coding (SHVC) is also available.

The decoder library is available as the libde265 package in Debian and Ubuntu and has been integrated into:


Currently, the encoder is under development. A major design goal is to provide a flexible software architecture, in which different coding algorithms or heuristics can be plugged in to adapt the encoder to specific application areas. I consider this a major feature because the requirements for offline coding, realtime coding (e.g. video-conferences), or screen-sharing are significantly different and specialized algorithms are needed for each to get good performance.

More information on its github page and especially its wiki.