Nvidia NVDEC
Nvidia NVDEC (formerly known as NVCUVID[1]) is a feature in its graphics cards that performs video decoding, offloading this compute-intensive task from the CPU.[2]
It is accompanied by NVENC for video encoding in Nvidia's Video Codec SDK.[2]
Technology
NVDEC can offload video decoding to full fixed-function decoding hardware (Nvidia PureVideo), or (partially) decode via CUDA software running on the GPU, if fixed-function hardware is not available.[2][3]
Depending on the GPU architecture, the following codecs are supported:[4]
Versions
NVCUVID was originally distributed as part of the Nvidia CUDA Toolkit.[3] Later, it was renamed to NVDEC and moved to the Nvidia Video Codec SDK.[1]
Operating system support
NVDEC is available for Windows and Linux operating systems.[2] As NVDEC is a proprietary API (as opposed to the open-source VDPAU API), it is only supported by the proprietary Nvidia driver on Linux.
Application and library support
- Gstreamer has supported NVDEC since 2017.[5]
- FFmpeg has supported NVDEC since 2017.[6]
- mpv has supported NVDEC since 2017.[7]
GPU support
HW accelerated encode and decode are supported on NVIDIA GeForce, Quadro, Tesla, and GRID products with Fermi or newer generation GPUs.[8]
Board | Family | Chip | Desktop/ Mobile/ Server |
# Of Chips | # Of NVDEC /Chip |
Total # of NVDEC | MPEG-1 | MPEG-2 | VC-1 | VP8 | VP9 | H.264 (AVCHD) |
H.265 (HEVC) 4:2:0 | H.265 (HEVC) 4:4:4 | AV1 4:2:0 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
8 bit | 10 bit | 12 bit | 8 bit | 10 bit | 12 bit | 8 bit | 10 bit | 12 bit | 8 bit | 10 bit | 12 bit | ||||||||||||
GeForce 710A > 810A | Kepler | GK208 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GT 723A / 740A | Kepler | GK208 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GT 720M > 740M | Kepler | GK208 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GT 630 / 635/ 640 / 710 / 730 | Kepler | GK208 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce 710A / 810M / 820M | Kepler | GK107 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GT 640M > 755M / GTX 660M | Kepler | GK107 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GT 630 - 640 GeForce GTX 650 GeForce GT 740 | Kepler | GK107 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 645 -650 Ti Boost GeForce GT 740 | Kepler | GK106 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 660 - 690 GeForce GTX 760 - 770 | Kepler | GK104 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 760A/M > 880M | Kepler | GK104 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 680M/MX > 880M | Kepler | GK104 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 780 - 780 Ti | Kepler (2nd Gen) | GK110 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX Titan / Titan Black | Kepler (2nd Gen) | GK110 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX Titan Z | Kepler (2nd Gen) | GK110 | D | 2 | 1 | 2 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 745 - 750 Ti | Maxwell (1st Gen) | GM107 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce 845M / 940M / 940MX / 945M | Maxwell (1st Gen) | GM107 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 850A > 960A | Maxwell (1st Gen) | GM107 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 850M > 960M | Maxwell (1st Gen) | GM107 | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce 830A > 945A | Maxwell (1st Gen) | GM108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce 830M > 945M | Maxwell (1st Gen) | GM108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce GTX 920MX - 940MX | Maxwell (1st Gen) | GM108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce MX110 / MX130 | Maxwell (1st Gen) | GM108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce GTX 750 GeForce GTX 950 - 960 | Maxwell (2nd Gen) | GM206 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No |
GeForce GTX 965M | Maxwell (2nd Gen) | GM206 | M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No |
GeForce GTX 910M / 920M / 920A | Maxwell (2nd Gen) | GM208B | M | 1 | 1 | 1 | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 965M > 980M / 980MX | Maxwell (2nd Gen) | GM204 | M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 960 Ti / 970 / 980 | Maxwell (2nd Gen) | GM204 | M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX 980 Ti | Maxwell (2nd Gen) | GM200 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce GTX Titan X | Maxwell (2nd Gen) | GM200 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
GeForce MX150 | Pascal | GP108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce MX230 / MX250 | Pascal | GP108 | M | 1 | 0 | 0 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
GeForce GT 1030 | Pascal | GP108 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1050 / 1050 Ti | Pascal | GP107 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1050 / 1050 Ti | Pascal | GP106 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1060 | Pascal | GP106 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1060 | Pascal | GP104 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1070M / 1080M | Pascal | GP104B | M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1070 / 1070 Ti / 1080 | Pascal | GP104 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1080 Ti | Pascal | GP102 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX Titan X / Titan Xp | Pascal | GP102 | D | 1 | 1 | 1 | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
Titan V | Volta | GV100 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
GeForce GTX 1650 | Turing | TU117 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
GeForce GTX 1660 Ti / 1660 | Turing | TU116 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
GeForce RTX 2060 / 2070 | Turing | TU106 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
GeForce RTX 2080 | Turing | TU104 | D/M | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
GeForce RTX 2080 Ti | Turing | TU102 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
Titan RTX | Turing | TU102 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
A100 | Ampere | GA100 | S | 1 | 1 | 5 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
GeForce RTX 3080 / 3090 | Ampere | GA102 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
GeForce RTX 3060 Ti / 3070 | Ampere | GA104 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
GeForce RTX 3050 Ti / 3060 | Ampere | GA106 | D | 1 | 1 | 1 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
See also
- AMD Video Core Next, AMD's equivalent SIP core since 2018
- AMD Unified Video Decoder, AMD's equivalent SIP core up to 2017
- Intel Quick Sync Video, Intel's equivalent SIP core
References
- ^ a b "Video Decoder". CUDA Toolkit Documentation. Nvidia. Retrieved 2017-11-12.
- ^ a b c d "NVIDIA VIDEO CODEC SDK". NVIDIA Developer. Nvidia. Retrieved 2017-11-12.
- ^ a b "Nvidia Video Decoder (NVCUVID) Interface" (PDF). Nvidia. November 2015. Retrieved 2017-11-12.
- ^ "Video Encode and Decode GPU Support Matrix". NVIDIA Developer. Nvidia. Retrieved 2017-11-12.
- ^ Michael Larabel (27 June 2017). "GStreamer Adds NVDEC NVIDIA GPU Decoding Support". Phoronix.
- ^ Michael Larabel (11 November 2017). "FFmpeg Lands NVDEC-Accelerated H.264 Decoding". Phoronix.
- ^ wm4 (28 October 2017). "vd_lavc: add support for nvdec hwaccel". GitHub.
{{cite web}}
: CS1 maint: numeric names: authors list (link) - ^ https://developer.nvidia.com/video-encode-decode-gpu-support-matrix