Video Super Resolution#

Video Super Resolution (VSR) is an AI-powered upscaling technology that uses deep learning to enhance video resolution. Unlike traditional bicubic upscaling, VSR can reconstruct fine details and textures. In addition to upscaling, VSR also supports denoise and deblur features.

VSR provides the following modes:

Mode

Name

0

VSR_Bicubic

1

VSR_Low

2

VSR_Medium

3

VSR_High

4

VSR_Ultra

8

Denoise_Low

9

Denoise_Medium

10

Denoise_High

11

Denoise_Ultra

12

Deblur_Low

13

Deblur_Medium

14

Deblur_High

15

Deblur_Ultra

16

HighBitrate_Low

17

HighBitrate_Medium

18

HighBitrate_High

19

HighBitrate_Ultra

21

STREAMING_MEDIUM

23

STREAMING_ULTRA

Modes 5–7, 20, and 22 are reserved and must not be used.

Configuration and Requirements#

VSR supports a floating-point Strength parameter in the interval [0.0, 1.0]. Higher values apply stronger enhancement. Set this parameter using the NvVFX_SetF32() function with the NVVFX_STRENGTH selector string before loading and running the effect.

The input and output of the VSR filter are GPU buffers. For 8-bit processing, VSR accepts BGRA or RGBA interleaved buffers, in which each pixel component is an 8-bit unsigned integer value. For 10-bit processing, VSR accepts RGB10A2 (R10G10B10A2) interleaved buffers, in which the R, G, and B components are 10-bit unsigned integer values packed with a 2-bit alpha component into a 32-bit word.

Upscaling is not supported in Denoise (modes 8–11) and Deblur (modes 12–15). For these modes, the output resolution must be the same as the input resolution.

For Windows GPUs that are Tesla Compute Cluster (TCC) devices, NVIDIA driver R595 or later is required.

On Linux, running the VSR filter requires NVIDIA driver version 570.190+, 580.82+, or 590.44+.

The recommended minimum input resolution for VSR is 360p.

The output frame aspect ratio is not restricted, but for best quality, keep it the same as the input.

Choosing a VSR Mode#

Choose the mode family that matches your source and intended operation. Test representative content because quality and processing speed depend on the source, resolution, and GPU.

Standard Upscaling Modes (0–4)#

Use modes 0–4 when the output resolution is larger than the input resolution and the source is typical compressed video. Modes 1–4 use AI to reduce compression artifacts while upscaling.

Mode

Name

When to use

0

VSR_Bicubic

Fastest, non-AI resize or comparison baseline.

1

VSR_Low

AI upscaling that prioritizes speed.

2

VSR_Medium

Balanced speed and output quality.

3

VSR_High

AI upscaling that prioritizes output quality.

4

VSR_Ultra

Maximum detail preservation when the processing budget allows.

If you are unsure which AI mode to select, start with VSR_High. Choose a lower mode for more speed or VSR_Ultra for maximum quality.

Denoise Modes (8–11)#

Use lower modes to preserve more texture and higher modes for stronger noise removal. Higher modes can soften fine detail.

The following are typical use cases of the denoise mode:

  • Low-light footage from consumer devices.

  • Archived content with film grain or analog artifacts.

  • Pre-encoding optimization to reduce bitrate overhead.

We do not recommend using denoise mode in the following cases:

  • Extreme noise levels obscuring underlying detail.

  • Structured compression artifacts (such as banding or blocking).

  • Content with intentional cinematic grain.

Deblur Modes (12–15)#

Use lower modes for light sharpening and higher modes for stronger sharpening.

The following are typical use cases of the deblur mode:

  • Low-to-moderate QP encoded video with visible softness but intact structure.

  • Pre-processing for super-resolution pipelines.

  • Consumer camera footage with focus or lens softness issues.

  • Digitized archival content with inherent optical blur.

We do not recommend using deblur mode in the following cases:

  • Severe motion blur or artistic bokeh effects.

  • Noisy or heavily compressed inputs in which deblurring amplifies artifacts.

High-Bitrate Modes (16–19)#

Within this family, lower modes prioritize speed and higher modes prioritize output quality.

The following are typical use cases of the high-bitrate mode:

  • High-bitrate natural and gaming video with minimal compression artifacts.

  • Detail restoration after downscaling or quality enhancement in pre-encode workflows.

We do not recommend using high-bitrate mode for heavily compressed or severely blurred content in which the underlying information is irrecoverable.

Streaming Modes (21 and 23)#

Note

STREAMING_MEDIUM and STREAMING_ULTRA require an NVIDIA Ampere or later architecture GPU and are not supported on NVIDIA Turing architecture GPUs.

The following are typical use cases of the streaming mode:

  • Clean or lightly degraded source content that requires resolution enhancement before re-encoding.

  • Live or VOD pipelines targeting higher-resolution delivery, such as SD-to-HD or HD-to-4K ladders.

We do not recommend using streaming modes in the following cases:

  • Workflows in which upscaling is applied post-encoding, because the model is optimized for pre-transcode use.

  • Content with extreme noise or structured blocking artifacts that might be amplified during upscaling.

Expected quality: The streaming modes produce crisper edges and more natural high-frequency detail than bicubic or Lanczos interpolation. They deliver texturally richer output than purely interpolation-based methods while maintaining visual stability without hallucinated or unstable artifacts.

Use STREAMING_MEDIUM for balanced quality and performance. Use STREAMING_ULTRA for stronger enhancement when the target GPU supports it.