Video processing has become an integral part of many industries, from content creation to streaming services. To meet the demands for high-performance encoding and decoding, NVIDIA has been at the forefront with its dedicated encoders and decoders called NVENC and NVDEC. With the introduction of the Ada Lovelace architecture and the latest eighth-generation NVENC, NVIDIA continues to empower video processing with enhanced capabilities and optimizations.
Unlocking the Power of NVIDIA GPUs with NVENC and NVDEC
For over a decade, NVIDIA GPUs have incorporated NVENC and NVDEC, specialized encoders and decoders, respectively. These components offer a highly parallelized architecture, support for popular codec formats, and direct access to GPU memory. By leveraging these features, users can offload their video processing tasks to NVENCs and NVDECs, reducing CPU load and benefiting from the optimized hardware units within the GPU.
To enable GPU acceleration, NVIDIA provides the Video Codec SDK, a robust API that facilitates efficient encoding and decoding operations. This SDK empowers developers to harness the full potential of NVIDIA GPUs for video processing tasks, making it an indispensable tool in the industry.
Introducing Video Codec SDK 12.1: Enhancing Video Processing
With the release of Video Codec SDK 12.1, NVIDIA introduces several exciting new features that further enhance video processing capabilities. Let’s explore some of these features and how they are revolutionizing content creation and streaming on NVIDIA GPUs.
1. Explicit Split-Frame Encoding
Split encoding is a ground breaking technique that divides an input frame into multiple parts and processes them in parallel using multiple NVENCs on the GPU chip. This parallelization offers a significant speed boost compared to sequential encoding. In the past, split encoding was implemented by default on specific high-quality (HQ) and low-latency (LL) presets for HEVC and AV1 codecs on 4K and 8K resolutions.
However, Video Codec SDK 12.1 puts you in control by introducing a flag that enables or disables split encoding. By disabling the flag, you can revert to the original default functionality, limited to predetermined presets on 4K and 8K resolutions. On the other hand, enabling the flag activates split encoding across all resolutions and presets. Furthermore, you have the flexibility to adjust the split across two or three NVENCs, depending on the GPU’s capabilities.
2. NVENC Low-Level APIs for H.264, HEVC, and AV1
Video Codec SDK 12.1 exposes additional low-level APIs for H.264, HEVC, and AV1 encoders, offering finer control over the hardware encoder’s internal state. These APIs are particularly useful for applications that require precise control over encoding quality. Let’s explore some of these APIs:
- Iterative Encoding: This feature enables you to freeze the encoder’s automatic state advancement and re-encode the same frame with different delta-QP values. NVENC stores all possible new states, allowing you to manually force advancement based on any desired iteration.
- ReCon: With the ReCon API, you can access the higher-quality reconstructed frame in the hardware encoder’s recon loop. Additionally, NVENC provides support for QP and bit-count stats at the row and block levels, further enhancing control over the encoding process.
- External Look Ahead: This API provides enhanced control over lookahead functionality, allowing you to determine the scaling for the lookahead pass. By default, the scaling is set to 1/16th resolution.
These low-level APIs are leveraged by Beamr’s Content Adaptive Bit Rate (CABR) library, which seamlessly integrates with NVENC to generate fully standard-compliant bitstreams. By maximizing compression levels per frame without visible quality degradation, CABR produces bitstreams with the lowest possible bit rate for a given perceptual quality.
Revolutionizing Video Compression with CABR-NVENC
The integration of CABR-NVENC with the Video Codec SDK opens up a multitude of use cases and optimizations. Let’s explore the two primary scenarios:
1. Encoder Optimization:
Existing NVENC users can leverage CABR to achieve the same perceptual quality as the original NVENC encode while reducing file sizes by 10-30% compared to the original compression. By adopting CABR, organizations can significantly optimize storage requirements and reduce costs.
2. Encoder Modernization:
CABR-NVENC optimizations can be utilized without specifying a specific bit rate. In this case, the algorithm produces a compressed video of perceptually identical quality to the original, achieving up to 50% compression gain. This flow enables seamless transcoding between codecs while preserving the same quality across bitstreams.
CABR’s bitrate savings can vary depending on the content and scene but typically average around 30% – 40%. Such savings offer immense benefits in storage optimization, particularly when dealing with large-scale video streaming services that store millions of streams in high quality.
Additionally, CABR provides exceptional savings of up to 60%-70% for user-generated content (UGC) on smartphones, where conservative bitrates are used to maintain quality. These optimizations also play a vital role in minimizing content delivery network (CDN) costs by reducing bandwidth requirements.
Until recently, CABR was limited to offline processing. However, with the power of NVIDIA GPUs, CABR-NVENC can now run in real time, opening new horizons for optimizing live video creation services.
Realizing the Potential: Real-World Applications
The power and efficiency of NVIDIA GPUs and Video Codec SDK 12.1, combined with CABR-NVENC optimizations, have already made a significant impact in various industries. Let’s take a look at a couple of notable examples:
1. Wochit: Empowering AI-Driven Video Creation
Wochit, a leading cloud-based video content creation solution, has harnessed the power of CABR-NVENC to develop their AI-powered video creation tool called the Wochit Wizard. By leveraging the storage and delivery savings achieved through CABR-NVENC, Wochit can offer organizations streamlined tools for producing professional videos at scale. Dror Ginzberg, co-founder and CEO at Wochit, shares his excitement about using Beamr’s solutions on NVIDIA GPUs, stating, “We are excited to use Beamr’s solutions on NVIDIA GPUs to explore new frontiers of AI video creation and enhance our customers’ experience!”
2. V-Nova: Optimizing Cloud Streaming
V-Nova, in collaboration with NVIDIA, has optimized the Low Complexity Enhancement Video Coding (LCEVC) standard on NVIDIA GPUs. LCEVC introduces an enhancement layer that combines with a base-encoded stream to produce an enhanced video stream. By leveraging NVIDIA GPUs, LCEVC achieves lower bitrates compared to AVC, HEVC, or AV1 alone, while maintaining minimum latency and reducing computational load.
V-Nova and NVIDIA’s collaboration enables LCEVC support on lower-end devices for decoding, making it accessible on mobile phones (1080p60 low-latency decoding) and XR headsets (4Kp90). By harnessing Tensor Cores when available, LCEVC ensures minimal contention between GPU processing and rendering operations, making it an ideal solution for cloud-rendered, ultra-low-latency, XR streaming use cases.
NVIDIA continues to lead the way in video processing efficiency with its powerful GPUs and dedicated encoders and decoders. With the introduction of the Ada Lovelace architecture and Video Codec SDK 12
source:NVIDIA
[…] Boost Your Video Encoding with NVIDIA Video Codec SDKThe Future of Gaming is Here: GeForce RTX Graphics on Smartphones […]