Nvidia VideoEffects SDK: API Source Code and Sample Applications
NVIDIA VideoEffects SDK is an SDK for enhancing and applying filters to videos at real-time. The SDK is powered by NVIDIA graphics processing units (GPUs) with Tensor Cores, and as a result, the algorithm throughput is greatly accelerated, and latency is reduced.
NVIDIA VideoEffects SDK has the following AI features:
- Encoder Artifact Reduction, which reduces the blocky and noisy artifacts from an encoded video while preserving the details of the original video.
- Super Resolution, which upscales a video while also reducing the blocky and noisy artifacts. It can enhance the details and sharpen the output while simultaneously preserving the content. This is suitable for upscaling lossy content.
- Upscale, which is a very fast and light-weight method for upscaling an input video. It also provides a sharpening parameter to sharpen the resulting output. This feature can be optionally pipelined with the encoder artifact reduction feature to enhance the scale while reducing the video artifacts.
NVIDIA VideoEffects SDK provides two sample applications that demonstrate the features listed above in real time by using offline videos.
- VideoEffects App, which is a sample app that can invoke each feature individually.
- UpscalePipeline App, which is a sample app that pipelines the Encoder Artifact Reduction feature with the Upscale feature.
All features in the VideoEffects SDK support 720p and 1080p as input resolutions. These are the scaling factors supported by the Super Resolution feature:
- 720p inputs can be scaled by a factor of 1.5x or 2x.
- 1080p inputs can be scaled by a factor of 1.33x or 2x.
Additionally, the Upscale feature supports any input resolution, and the following scaling factors:
- 1.33x, 1.5x, 2x or 3x
NVIDIA VideoEffects SDK is distributed in the following parts:
- This open source repository that includes the SDK API and proxy linking source code, and sample applications and their dependency libraries.
- An installer hosted on RTX broadcast engine developer page that installs the SDK DLLs, the models, and the SDK dependency libraries.
Please refer to SDK programming guide for configuring and integrating the SDK, compiling and running the sample applications.