V-Nova’s implementation of MPEG-5 Part 2 Low Complexity Enhancement Video Encoding (LCEVC) has been designed for easy integration with existing encoders and decoders, via a software update.
LCEVC adopts a multi-layer approach where any base codec (e.g. h.264, HEVC, AV1 and others), is enhanced via an additional low bitrate stream. LCEVC’s data stream structure is defined by two component streams:
- A base stream decodable by a hardware decoder; and,
- An enhancement stream consisting of one or two enhancement layers suitable for software processing implementation with sustainable power consumption. The enhancement provides improved compression efficiency to existing codecs, and reduces encoding and decoding complexity, for on demand and live streaming applications.
Sketch Low Complexity Enhancement Video Coding
LCEVC brings a new approach to video compression. It leverages a base video codec such as AVC, HEVC, VP9, EVC, AV1 etc. and employs a highly efficient and low complexity enhancement that adds up to two layers of encoded residuals that correct artefacts produced by the base video codec and add detail and sharpness to reconstruct the final output video. By doing so, it improves video compression efficiency while reducing the overall encoding complexity.
How LCEVC works: Two sub-layers of residual data
LCEVC can be rapidly implemented in existing decoders with a software update and is inherently backwards-compatible since devices that haven't yet been updated to decode LCEVC happily play the underlying base codec, which further simplifies deployment.
Decoding is extremely light weight, often freeing up resources and matching or reducing battery power consumption vs. native base codec decoding. Native base codec decoding can leverage the existing hardware for that codec, and LCEVC leverages available hardware acceleration for graphics and scaling.
- Reduce Churn – Better video quality and increased resolutions at the same bitrates drive up QoE and customer satisfaction, increasing viewing times for improved ad-monetization and significantly reducing subscriber churn
- Increase Reach – LCEVC enables stable video delivery at lower bitrates (as low as 100kbps) meaning viewers can be reached over the most limited networks.
- Reduced Delivery Costs – Storage and CDN delivery costs can be reduced by up to 50%
- Better Encoding Density – Applying LCEVC to any codec reduces its complexity and can typically improve encoding density by up to 30%
- Compatibility – LCEVC is delivered in industry-standard formats like HLS and MPEG-DASH meaning it is transparent to existing infrastructure (CDNs, DRM, Ad-insertion etc.) and even plays back on players that are not LCEVC-enabled
- Easy To Deploy – Supported by a broad range of encoding and player vendors or easily update systems with SDKs
- Broad Device Support – LCEVC has the same compatibility as the underlying codec it is enhancing.
The V-Nova LCEVC SDK consists of multiple encoding and decoding libraries to facilitate the rapid deployment of LCEVC across all platforms. There are also reference pre-integrations within popular video processing workflows such as FFmpeg and media players across platforms such as iOS, Android and Windows as well as scripted decoding options for HTML5 capable browsers enabling integration into existing video workflows.
The V-Nova LCEVC SDK provides:
- The industry’s first optimized software library for encoding and decoding MPEG-5 LCEVC enhanced streams
- The ability to deploy LCEVC at any level of your software stack with a range of options from low-level APIs to reference implementations in commonly used open-source encoders and players
The V-Nova LCEVC SDK 3.0 includes the following libraries and reference integrations:
Core Encoding and Decoding
- V-Nova LCEVC encoding libraries (EIL)
- V-Nova LCEVC decoding libraries (DIL)
- EIL Header file (optional)
- DIL Header file (optional)
- Product documentation
Base codecs Plug-in
LCEVC SDK support the enhancement of multiple codec implementation through a simple plug-in system. Available plug-ins include:
- vp8/vp9 (libvpx)
- AV1 (libaom)
and others can be developed and added even after integration within a system.
LCEVC-enabled builds and patches for:
- Windows (MFT)
Figure 1 below illustrates how LCEVC operates on both encoding and decoding pipelines. The base encoding (whether H.264, HEVC or others) is performed on a down-scaled input at a lower resolution, typically a quarter of the desired output resolution. LCEVC enhancement data is calculated at the two resolutions providing two levels of correction and enhancement. The LCEVC encoder generates the enhancement stream from two inputs: the base encoding and the original uncompressed full resolution video, effectively correcting the quality gap between the two. The LCEVC data can be packaged together with the base elementary stream (for example as Supplemental Enhancement Information (SEI) of the Network Abstraction Layer, NAL), as frame metadata in a WebM container or in an additional data Packet Identifier (PID) in a MPEG-2 TS stream.
Figure 1 – Logical block diagram of LCEVC-enhanced encoding and decoding
The LCEVC decoder works at an individual video frame level. As input it takes the decoded low-resolution picture from the base (H.264 or other) video decoder, which is typically provided by a hardware decoder on the device, and the LCEVC enhancement decoded in software to produce a full-resolution picture ready for rendering on the display view.
The V-Nova LCEVC Decoder Integration Layer (DIL) is a software library that extracts, decodes and applies LCEVC on top of the base decoded video during playback. Once integrated into the decoding device, the DIL enables decoding and playback of any LCEVC-enhanced video stream.