by rigaya
This software is meant to investigate performance and image quality of HW encoder (NVENC) of NVIDIA. There are 2 types of software developed, one is command line version that runs independently, and the nother is a output plug-in of Aviutl.
- NVEncC.exe ... Command line version supporting transcoding.
- NVEnc.auo ... Output plugin for Aviutl.
Windows 10 (x86 / x64)
Linux (x64)
Aviutl 1.00 or later (NVEnc.auo)
Hardware which supports NVENC
NVIDIA GPU GeForce Kepler gen or later (GT / GTX 6xx or later)
※ Since GT 63x, 62x etc. are renames of the Fermi generation, they cannot run NVEnc.
NVEnc | Supported NVENC API | Required graphics driver version |
---|---|---|
NVEnc 0.00 or later | 4.0 | NVIDIA graphics driver 334.89 or later |
NVEnc 1.00 or later | 5.0 | NVIDIA graphics driver 347.09 or later |
NVEnc 2.00 or later | 6.0 | NVIDIA graphics driver 358 or later |
NVEnc 2.08 or later | 7.0 | NVIDIA graphics driver 368.69 or later |
NVEnc 3.02 or later | 7.0 | NVIDIA graphics driver 369.30 or later |
NVEnc 3.08 or later | 8.0 | NVIDIA graphics driver 378.66 or later |
NVEnc 4.00 or later | 8.1 | NVIDIA graphics driver 390.77 or later |
NVEnc 4.31 or later | 9.0 | NVIDIA graphics driver 418.81 or later |
NVEnc 4.51 or later | 9.1 | NVIDIA graphics driver 436.15 or later |
NVEnc 5.10 or later | 9.0, 9.1, 10.0 | NVIDIA graphics driver 418.81 or later |
NVEnc 5.18 or later | 9.0, 9.1, 10.0, 11.0 | NVIDIA graphics driver 418.81 or later |
NVEnc 5.24 or later | 9.0, 9.1, 10.0, 11.0 | NVIDIA graphics driver 418.81 or later (x64) NVIDIA graphics driver 456.81 or later (x86) |
Supported NVENC API | Required graphics driver version |
---|---|
9.0 | NVIDIA graphics driver (Win 418.81 / Linux 418.30) or later |
9.1 | NVIDIA graphics driver (Win 436.15 / Linux 435.21) or later |
10.0 | NVIDIA graphics driver (Win 445.87 / Linux 450.51) or later |
11.0 | NVIDIA graphics driver (Win 456.71 / Linux 455.28) or later |
CUDA version | Required graphics driver version |
---|---|
10.1 | NVIDIA graphics driver (Win 418.96 / Linux 418.39) or later |
10.2.89 | NVIDIA graphics driver (Win 440.33 / Linux 441.22) or later |
11.0.2 | NVIDIA graphics driver (Win 451.48 / Linux 450.51.05) or later |
11.0.3 | NVIDIA graphics driver (Win 451.82 / Linux 450.51.06) or later |
11.1.0 | NVIDIA graphics driver (Win 456.38 / Linux 455.23) or later |
11.1.1 | NVIDIA graphics driver (Win 456.81 / Linux 455.32) or later |
11.2 | NVIDIA graphics driver (Win 460.89 / Linux 460.27.04) or later |
Option list and details of NVEncC
Result of --check-features, a feature list returned from the driver. May depend on the driver version.
GPU Gen | Windows | Linux |
---|---|---|
Kepler | GTX660Ti | Tesla K80 |
Maxwell | GTX970 | Tesla M80 |
Pascal | GTX1080, GTX1070, GTX1060 | GTX1080 |
Volta | GTX1650 | |
Turing | RTX2070, RTX2060, GTX1660Ti, GTX1650 Super | Tesla T4 |
Ampere | RTX3090 |
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
The output from NVEnc may not include the max_dec_frame_buffering field, which might cause problem in some playback environments.
- Encoding using NVENC
- H.264 / AVC
- YUV420 / YUV444
- H.265 / HEVC (2nd Gen Maxwell or later)
- YUV420 / YUV444
- 10 bits
- H.264 / AVC
- Each encode mode of NVENC
- CQP (fixed quantization)
- CBR (Constant bitrate)
- CBRHQ (Constant bitrate, high quality)
- VBR (Variable bitrate)
- VBRHQ (Variable bitrate, high quality)
- Interlaced encoding (by PAFF)
- Lossless output (YUV 420 / YUV 444)
- supports setting of codec profile & level, SAR, colormatrix, maxbitrate, GOP len, etc...
- Supports cuvid decoding
- MPEG1
- MPEG2
- H.264 / AVC
- HEVC (10 bit / 12bitdepth with YUV444 support)
- VC-1
- VP9
- Supports various formats such as avs, vpy, y4m, and raw
- Supports demux/muxing using libavformat
- Supports decode using libavcodec
- Calculation of ssim/psnr/vmaf of the encode
- High performance filtering (VPP, Video Pre-Processing)
- cuvid built-in hw processing
- resize
- deinterlace (normal / bob)
- GPU filtering by CUDA
- rff (apply rff flag)
- deinterlacer
- afs (Automatic field shift)
- nnedi
- yadif
- decimate
- mpdecimate
- colorspace conversion (x64 version only)
- hdr2sdr
- delogo
- subburn
- resize
- bilinear
- spline16, spline36, spline64
- lanczos2, lanczos3, lanczos4
- various algorithms by npp library are available (x64 version only)
- padding
- select-every
- deband
- noise reduction
- knn (K-nearest neighbor)
- pmd (modified pmd method)
- gauss (npp library, x64 version only)
- edge / detail enhancement
- unsharp
- edgelevel (edge level adjustment)
- cuvid built-in hw processing
- Audio encoding
- Mux audio and chapter
- afs (Automatic field shift) support
- supported filters
- nnedi
- resize
- noise reduction
- knn (K-nearest neighbor)
- pmd (modified pmd method)
- edge / detail enhancement
- unsharp
- edgelevel (edge level adjustment)
- deband
-
MIT license.
-
This program is based on NVIDA CUDA Samples and includes sample code. This software contains source code provided by NVIDIA Corporation.
-
This software depends on jitify, ffmpeg, vmaf, tinyxml2, dtl, libass, ttmath & Caption2Ass. For these licenses, please see the header part of the corresponding source and NVEnc_license.txt.
Windows ... VC build
Character code: UTF-8-BOM
Line feed: CRLF
Indent: blank x4