NVENC (short for Nvidia Encoder)[1] is a feature inNvidia graphics cards that performsvideo encoding, offloading this compute-intensive task from theCPU to a dedicated part of theGPU. It was introduced with theKepler-basedGeForce600 series in March 2012 (GT 610, GT620 and GT630 is Fermi Architecture).[2][3]
The encoder is supported in many livestreaming and recording programs, such asvMix,Wirecast,Open Broadcaster Software (OBS) andBandicam, as well as video editing apps, such asAdobe Premiere Pro orDaVinci Resolve. It also works withShare game capture, which is included in Nvidia's GeForce Experience software.[4][5][6]
Until March 2023 consumer-targetedGeForce graphics cards officially support no more than three simultaneously encoding video streams, regardless of the count of the cards installed, but this restriction can be circumvented onLinux andWindows systems by applying an unofficial patch to thedrivers. Doing so also unlocksNVIDIA Frame Buffer Capture (NVFBC), a fast desktop captureAPI that uses the capabilities of the GPU and its driver to accelerate capture.[7] Professional cards support between three and unrestricted simultaneous streams per card, depending on card model and compression quality,[2] the restrictions were loosened in 2023 allowing up to 5 simultaneously encoding video streams.[8] From January 2024 onwards, eight simultaneous encoding video streams became the baseline. From November 2025 onwards, twelve simultaneous encoding video streams became the baseline.[9]
Nvidia chips also feature an onboard decoder,NVDEC (short forNvidiaDecoder), to offload videodecoding from the CPU to a dedicated part of the GPU.[2]
NVENC has undergone several hardware revisions since its introduction with the firstKepler GPU (GK104).[10] Graphics cards with NVENC of the second and third generations in its were not released.[11]
| GPU Hardware | H.264 (AVC) (In H.264, NVENC always hasB frame support, max 4096×4096 resolution) | H.265 (HEVC) | AV1 | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| NVENC Generation | GPU Code Name | NVENC per Chip | Chroma | Lossless Coding | Resolution | Color Depth | Chroma | Lossless Coding | Resolution | Color Depth | B Frames | Chroma | Resolution | Color Depth | ||||
| 4:2:0 | 4:2:2 | 4:4:4 | 4:2:0 | 4:2:2 | 4:4:4 | 4:2:0 | ||||||||||||
| 1st Gen | GK110 | 1 | 4096 x 4096 | 8-bit | H.265 not supported | AV1 not supported | ||||||||||||
| GK107 | ||||||||||||||||||
| GK106 | ||||||||||||||||||
| GK104 | ||||||||||||||||||
| 4nd Gen | GM107 | 1 | 4096 x 4096 | 8-bit | H.265 not supported | AV1 not supported | ||||||||||||
| 5th Gen | GM206 | 1 | 4096 x 4096 | 8-bit | Yes[13] | Yes[13] | 4096 x 4096 | 8-bit | ||||||||||
| No[12] | No[12] | |||||||||||||||||
| GM204 | 2 | |||||||||||||||||
| GM200 | ||||||||||||||||||
| 6th Gen | GP108 | 0 | No NVENC encoders available | |||||||||||||||
| GP107 | 1 | 4096 x 4096 | 8-bit | 8192 x 8192 | 10-bit | AV1 not supported | ||||||||||||
| GP106 | ||||||||||||||||||
| GP104-2xx+ | 2 | |||||||||||||||||
| GP104-1xx | 1 | |||||||||||||||||
| GP102 | 2 | |||||||||||||||||
| GP100 | 3 | 4096 x 4096 | ||||||||||||||||
| GV10x | 8192 x 8192 | |||||||||||||||||
| TU117 | 1 | |||||||||||||||||
| TU116 | ||||||||||||||||||
| TU106 | ||||||||||||||||||
| TU104 | ||||||||||||||||||
| TU102 | ||||||||||||||||||
| 7th Gen | GA107 | 1 | 4096 x 4096 | 8-bit | 8192 x 8192 | 10-bit | Decode only | |||||||||||
| GA106 | ||||||||||||||||||
| GA104 | ||||||||||||||||||
| GA102 | ||||||||||||||||||
| GA100[14] | 0 | No NVENC encoders available | ||||||||||||||||
| 8th Gen | AD107 | 1 | 4096 x 4096 | 8-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | ||||||||||
| AD106 | ||||||||||||||||||
| AD104-250 | ||||||||||||||||||
| AD104-400 | 2 | |||||||||||||||||
| AD103 | ||||||||||||||||||
| AD102 | ||||||||||||||||||
| 9th Gen | GB207 | 1 | 4096 x 4096 | 8-bit | 8192 x 8192 | 10-bit | 8192 x 8192 | 10-bit | ||||||||||
| GB206 | ||||||||||||||||||
| GB205 | ||||||||||||||||||
| GB203 | 2 | |||||||||||||||||
| GB202 | 3 | |||||||||||||||||
| NVENC Generation | GPU Code Name | NVENC per Chip | Chroma | Lossless Coding | Resolution | Color Depth | Chroma | Lossless Coding | Resolution | Color Depth | B Frames | Chroma | Resolution | Color Depth | ||||
| 4:2:0 | 4:2:2 | 4:4:4 | 4:2:0 | 4:2:2 | 4:4:4 | 4:2:0 | ||||||||||||
The first generation of NVENC, which is shared by allKepler-based GPUs, supports H.264 high-profile (YUV420, I/P/B frames, CAVLC/CABAC), H.264 SVC Temporal Encode VCE, andDisplay Encode Mode (DEM).
Nvidia's documentation states a peak encoder throughput of 8× realtime at a resolution of 1920×1080 (where the baseline "1×" equals 30 Hz). Actual throughput varies on the selected preset, user-controlled parameters and settings, and the GPU/memory clock frequencies. The published 8× rating is achievable with the NVENC high-performance preset, which sacrifices compression efficiency and quality for encoder throughput. The high-quality preset is considerably slower but produces fewercompression artifacts
Introduced with the first-generationMaxwell architecture, second generation NVENC adds support for the high-performance HP444 profile (YUV4:4:4, predictive lossless encoding), and increases encoder throughput up to 16× realtime, which corresponds to about 1080p @ 480 Hz with the high-performance preset.
Maxwell GM108 does not have NVENC hardware encoder support.
Introduced with the second-generation Maxwell architecture, third generation NVENC implements the video compression algorithmHigh Efficiency Video Coding (a.k.a. HEVC, H.265) and also increases the H.264 encoder's throughput to cover 4K-resolution at 60 Hz (2160p60). However, it does not supportB-frames for HEVC encoding (justI and P frames). The maximum NVENC HEVCcoding tree unit (CU) size is 32 (the HEVC standard allows a maximum of 64), and its minimum CU size is 8.
HEVC encoding also lacks Sample Adaptive Offset (SAO). Adaptive quantization, look-ahead rate control, adaptive B-frames (H.264 only) and adaptive GOP features were added with the release of Nvidia Video Codec SDK 7.[15] These features rely on CUDA cores for hardware acceleration.
SDK 7 supports two forms of adaptive quantization; Spatial AQ (H.264 and HEVC) and Temporal AQ (H.264 only).
As of 2025, Nvidia's consumer-grade (GeForce) cards are restricted to 12 simultaneous encoding jobs while its lower-end professionalQuadro cards are restricted to eight simultaneous encoding jobs. Its higher-end Quadro cards do not have this restriction.
Fourth generation NVENC implements HEVC Main10 10-bit hardware encoding. It also doubles the encoding performance of 4K H.264 & HEVC when compared to previous generation NVENC. It supports HEVC 8K, 4:4:4chroma subsampling,lossless encoding, and sample adaptive offset (SAO).
Nvidia Video Codec SDK 8 added Pascal exclusive Weighted Prediction feature (CUDA based). Weighted prediction is not supported if the encode session is configured with B frames (H.264).
There is no B-Frame support forHEVC encoding, and the maximum CU size is 32×32.
The NVIDIA GT 1030 and the Mobile Quadro P500 are GP108 chips that don't support the NVENC encoder.[12]
In laptop graphics, NVIDIA MX Graphics do not include NVENC as they are based on aMaxwell-generation GM108 or a Pascal-generation GP108 chip.[16] The GeForce MX350 is a GP107 chip whose NVENC encoder is disabled during manufacture.
Volta NVENC has similar performance as Pascal's NVENC.[1]
It does not offer support for HEVC B-Frames.
In mobile graphics, as with most other GeForce MX-series graphics, the GeForce MX450 does not support NVENC as it is a TU117 chip whose hardware encoder is permanently disabled in its manufacture. The GeForce MX550, however, does support NVENC as its hardware encoder remains enabled at manufacturing level.
Sixth generation NVENC implementsHEVC 8K encoding at 30 FPS, HEVC B-frames and HEVC B-frames as reference (with support for each and middle modes[17]) and Alpha HEVC[18] support and provides up to 25% bitrate savings for HEVC and up to 15% bitrate savings for H.264. The initial launch of the Nvidia GeForce GTX 1650 was exempt from this generation however, as it used Volta NVENC instead of Turing. Nvidia updated the NVENC encoder of the GTX 1650 cards in 2020 to also use the Turing engine.[19] The GTX 1650 Super uses theTuring NVENC engine as it is based on the TU116 rather than the TU117 used in the original GTX 1650.[20]
Ampere has essentially the same NVENC generation engine as Turing.[21] The only substantive difference is thatNVDEC received support forAV1 decoding (with film grain).
In entry-level mobile graphics, the GA107-chip-based GeForce MX570 comes in two versions, one of which (the GeForce MX570 A) has the hardware decoder and encoder permanently disabled during manufacturing.
Nvidia announced the next-gen NVENC with 8K 10-bit 60FPS AV1 fixed function hardware encoder inAda Lovelace GPUs.[22][23]
Blackwell GPU microarchitecture (9th gen) introduced support for 4:2:2 chroma subsampling and the AV1 Ultra High Quality mode. It is also said to be 5% more efficient over its predecessor.
The Nvidia NVENCSIP core needs to be supported by thedevice driver. The driver provides one or moreinterfaces, (e.g.OpenMAX IL) to NVENC. The NVENC SIP core can be accessed through theproprietary NVENCAPI, as well as theDXVA andVDPAU[24] APIs.
Support is bundled with Nvidia'sGeForce drivers so operating system support depends on drivers supporting the OS. In case of Microsoft Windows, H.264 encoding was supported on Windows 7 and above.[25]
The significantly improved quality H.264 encoder[26] which many industry reviews said was on par withx264 Fast preset, arrived with the Turing architecture GPUs. That one along with HEVC and AV1 encoders are supported only on Windows 10 and above.[27]
NVENC is available for Windows and Linux operating systems.[2] Thefree and open-source nouveau device driver does not support Nvidia NVENC.[28]
This section mayrequirecleanup to meet Wikipedia'squality standards. The specific problem is:Outdated and failed verification as our friend from June 2022 says.Tom's Hardware has a 2023 test for H.264 and H.265 across multiple recent models, maybe use that. Please helpimprove this section if you can.(January 2024) (Learn how and when to remove this message) |
Comparison of Encode Throughput[42][citation needed]
| Streams | H.264 Encode (1080p30) |
|---|---|
| GM204(Tesla M6) | 18 |
| GM107(Tesla M10) | 28 |
| GM200(Tesla M40) | 18 |
| GM204(Tesla M60) | 36 |
| GP104(Tesla P4) | 24 |
| TU104(Tesla T4) | 32 |
| P100 | 36 |
| V100 | 36 |