The Turing codec is an H.265/HEVC software video encoder and decoder for efficient video compression
The codec is optimised for fast encoding of large resolution video content while at the same time preserving high perceptual qualities of the generated compressed video streams. It was originally developed by experts in video compression technology, software developers with background on practical codec optimisation and experienced researchers with many years of activity in multimedia signal processing. The Turing codec was designed with the ambition of creating the fastest high quality HEVC software encoder. With this purpose in mind, the Turing codec results from a combination of two essential features:
- An optimised software framework composed by state-of-the-art C++11 constructs and assembly optimisations.
- Highly advanced algorithms and coding tools, to ensure efficient encoding of videos at different quality levels under a variety of conditions.
Due to its good compression performance, low memory consumption and low execution time characteristics, we expect the Turing codec to become one of the most widely used open source HEVC software implementations. You can find more information about the codec in this IBC paper.
Can I use it?
The software is available open source under the GPLv2 licence. The source code is available on our GitHub repository. You can find more information on how to use the codec in the documentation. Also, you may be interested in contributing to our open source project.
A commercial licence is also available for those who may want to use it beyond the terms of the open source license. If you are interested in this option you can contact us at: firstname.lastname@example.org.
What is HEVC?
HEVC (High Efficiency Video Coding) is a state-of-the-art video coding standard that provides the highest compression performance compared to all other available solutions. It was developed by the Joint Collaborative Team on Video Coding (JCT-VC), a group of video compression experts supported by two major standardisation bodies, the ISO/IEC Moving Picture Experts Group (MPEG) and the ITU-T Video Coding Experts Group (VCEG). HEVC Version 1, that includes profiles for content distribution, was finalised in January 2013. The standard can achieve more than 50% bitrate reductions compared to its predecessor H.264/Advanced Video Coding (AVC) for the same subjective quality, as demonstrated in numerous studies such as this paper. You can find more information on HEVC here.
How does the Turing codec perform?
The Turing codec provides consistently good compression efficiency with very low computational complexity. Moreover, the codec is specifically designed to perform well when compressing very high resolution content, and it can significantly outperform competitors on Ultra High Definition (UHD) content.
The code-base at the core of the Turing codec was designed from scratch to be as lightweight as possible in terms of memory consumption. The memory resources consumed by the Turing codec during the encoding process are only a fraction of what is used by other practical HEVC encoders. This means that encoding with the Turing codec is potentially much cheaper than with its competitors, even when dealing with highly demanding tasks such as compression of ultra high definition content.
Why the name “Turing”?
This project is named after the pioneering scientist Alan Turing, one of the greatest minds of the 20th century and the father of modern computer science. Video transcoding represents one of the biggest challenges today both in terms of the volume of data it handles and of its vast demand upon computing resources. The name is also a nod to the fact that the project makes good use of C++ templates which have been shown to be “Turing complete” within the compiler.