Comprimato – Fast, Efficient Compression Preserves Quality & Space
Recent developments in video capture techniques for filmmaking and broadcast – including high resolutions, high frame rates and high dynamic range - have resulted in beautiful, high quality images that are dynamic, true to life and immersive - and need extremely large data files. Consequently, compression has become an important factor in media data management, processing and storage, from set to post.
Digital Media World spoke to Jiri Matela, CEO at Comprimato, about his company’s compression format and how it works. The Comprimato JPEG2000 codec is an implementation of the JPEG2000 format according to the JPEG2000 standard. It is available in the form of an SDK consisting of the API, which is an interface to the fast CPU and GPU JPEG2000 compression engine.
Comprimato includes plug-ins as well for different functions, and recently announced that it has integrated its multi-threading JPEG2000 codec into Intel Media Server Studio’s Media SDK. As a result, developers using this software package for developing media applications have simpler access to JPEG2000 and H.264 or H.265 codecs in the Intel SDK. System architects can access both Comprimato compression and the Intel SDK to build robust, compliant, very fast encoders in their own media transcoding set-ups.
Visually and Mathematically Lossless
Because the primary goal of video compression is to preserve image quality as far as possible while managing data efficiently, people are sometimes concerned about the difference between visually and mathematically lossless compression. Comprimato states that their codec can compress video visually losslessly up to 10x, and mathematically losslessly up to 2x.
To avoid confusion over those two terms, Jiri suggested first considering what lossy and lossless compression really mean. “Lossy compression is a data coding mechanism that discards some parts of the video information,” he said. “The result is an approximation of the original video that takes up much less disc space, but the discarded data is permanently lost. When we talk about video compression, we almost always implicitly refer to lossy compression.
“In fact, only very few video codecs allow for true, mathematically lossless compression. This type does not discard any of the original data so that, as the file is compressed, the picture quality remains the same. The compressed video can be reconstructed bit-for-bit, which in effect means it can be decompressed back to its original form and quality.
“On the other hand, visually lossless compression is actually a class of lossy coding but the compression is of very high quality and therefore, visually, it looks no different from the original. Most professional video cameras compress data with a visually lossless coding. This type of coding is often used for video production and, for example, the films shown in cinemas, which are typically compressed with a visually lossless JPEG2000 codec – like Comprimato.”
Although JPEG2000 is not exclusive to Comprimato, the company says that their development has resulted in the fastest JPEG2000 software codec available. Jiri described factors contributing to that speed – including optimisation aimed specifically to increase performance on CPUs and, if present, to access computing power from graphics cards.
He said, “GPUs are already powering various video processing tasks and will be even more important for 8K or larger video files and processing. Virtual reality production requires massively more video data, as well, which demands very fast processing - a GPU or multiple GPUs is only way to handle it.
“Meanwhile in the background, the single API makes integration of the Comprimato codec much easier and therefore faster – without needing dedicated GPU programming knowledge. The application can choose between CPU and GPU processing on the fly. This omnipresent nature of the API also makes the codec ready for most platforms, including cloud computing.”
Speed, Control, Precision
A typical IMF to H.264/265 workflow consists of decoding the JPEG2000 video contained in the IMF/MXF files and encoding it into the H.264/265 format. While H.264 encoding will normally take as much CPU core computing power as is available, because Comprimato can offload the JPEG2000 decoding to a GPU, more cores are left free for the H.264/265 encoding, which makes the overall transcode faster.
The fact that Comprimato is a software codec with performance that earlier on was available only with custom hardware chips, gives it an edge in product development. Integrating Comprimato into a 3rd party product is faster and less expensive than more protracted hardware design. The result is shorter development cycles.
Some useful characteristics of the Comprimato codec, included by default, give users more control over how their video is displayed and consumed, now and for applications arising in the future. Jiri said, “For example, extraction of random regions to preserve colour precision is important for very high resolution video streams like VR video where, at any moment, the viewer only sees the portion of the video that is in his or her field of view.
“Another interesting property relating to high resolution and VR video is resolution scalability. In situations or for devices that don’t need full resolution, only the HD part of 4K or 8K sources is read during processing, without having to decode the whole picture.” comprimato.com
CEO Jiri Matela at Comprimato, talks about compression in modern video workflows and how Comprimato’s JPEG2000 codec saves time, disc space and preserves quality.