It means that you can convert video times faster with Freemake Video Converter, if you choose AVI, MP4, MKV, Apple, Android, Sony as output formats. Don’t forget that CUDA works only with NVIDIA graphics cards, starting with GeForce 8 series and later. So it’s advisable to update the video card driver if your card supports CUDA. NVIDIA VIDEO CODEC SDK - Get Started If you are looking to make use of the dedicated decoding/encoding hardware on your GPU in an existing application you can leverage the integration already available in FFmpeg. FFmpeg should be used for evaluation or quick integration, but it may not provide control over every encoder parameter. NVDECODE and NVENCODE APIs should be used for low-level.
Video Encoding and Decoding with NVIDIA Hardware Acceleration
CUDA, NVENC, and NVDEC are the main technologies used by NVIDIA GPU. NVCUVENC for older video cards and drivers is deprecated and replaced by NVENC.
1. CUDA
CUDA® was introduced in 2006 as a computing platform and programming. CUDA is used to deliver the merits of GPU acceleration and thus computing performance is dramatically improved. However, power consumption is increased if we use high-speed CUDA cores to process video encoding. CUDA-enabled products cover CUDA Toolkit, CUDA C/C++ programming language, and more. There are thousands of CUDA GPU accelerated applications, ranging from Adobe's Premiere Pro to Apple's Final Cut Pro.
Supported codecs: H.264
Operating system support: Windows (10, 801, 7), Mac (10.12), Linux
Supported GPU: NVIDIA GeForce, Quadro, Tesla GPUs, and NVIDIA GRID solutions. Here's a full list of CUDA GPUs.
Operating system support: Windows (10, 801, 7), Mac (10.12), Linux
Supported GPU: NVIDIA GeForce, Quadro, Tesla GPUs, and NVIDIA GRID solutions. Here's a full list of CUDA GPUs.
CUDA-accelerated Performance
Free Cuda Video Converter
CUDA applications on NVIDIA GPUs deliver 2X to 5X faster performance acceleration than CPUs. Below is the test result from NVIDIA CUDA official report. Performance can be influenced by the computer system, applications versions etc. noted by NVIDIA.
GPU: NVIDIA Tesla K80 and P100 (SXM2), Base locks, cube mesh topology (DGX-1)
CUDA 8 GA with r361.79 (K80) and r361.96 (P100)
CPU: Intel Xeon Broadwell dual socket 22-core with Ubuntu 14.04.3x86-64 and 256GB Memory.
GPU: NVIDIA Tesla K80 and P100 (SXM2), Base locks, cube mesh topology (DGX-1)
CUDA 8 GA with r361.79 (K80) and r361.96 (P100)
CPU: Intel Xeon Broadwell dual socket 22-core with Ubuntu 14.04.3x86-64 and 256GB Memory.
The fastest CUDA-based video converter, MacX Video Converter Pro transcodes 3846x2160 4K video with up to 150fps on iMac of 2013 (16G 1600MHz memory, and NVIDIA GeForce GT755M 1GB graphics).
2. NVENC
NVENC introduced in 2012 is one of the key features of NVIDIA's Video Codec SDK. It performs video hardware encoding. NVENC hardware accelerated encoder, the specialized circuitry for video encoding, is up to four times faster than CUDA encoding for newer graphics cards and consumes less power at the same time. Meantime, the quality of NVENC is the same as CUDA. According to NVIDIA's test, NVENC-based H.264 encoding is 5x faster than CPU-based x264 encoding by offloading compute-intensive task from CPU. Note that system, configuration and others may influence the performance result.
Supported codecs: H.264, H.265
Operating system support: Windows and Linux
Which graphics cards support NVENC: Quadro K420 and higher, GRID K1/K2/GRID K340/GRID K520, Tesla K10 and higher. Note that Quadro GP100 and Tesla P100 don't support NVENC-accelerated HEVC 8K encoding. NVENC hardware accelerated H.265 (HEVC) 4K lossless/8K encoding is only available on Quadro P400 and later and Tesla P4 and higher. NVENC-based H.264 hardware encoding works on all gens of NVIDIA GPUS.
Operating system support: Windows and Linux
Which graphics cards support NVENC: Quadro K420 and higher, GRID K1/K2/GRID K340/GRID K520, Tesla K10 and higher. Note that Quadro GP100 and Tesla P100 don't support NVENC-accelerated HEVC 8K encoding. NVENC hardware accelerated H.265 (HEVC) 4K lossless/8K encoding is only available on Quadro P400 and later and Tesla P4 and higher. NVENC-based H.264 hardware encoding works on all gens of NVIDIA GPUS.
NVENC-based Video Encoding Performance
From the H.264 video encoding performance table below, we get to know that NVENC hardware accelerated H.264 encoding is much faster than CPU based x264 encoding, and the former delivers little performance loss. But we can see that GPU accelerated encoder NVENC can be inefficient in quality per bitrate. If you have powerful enough CPU or multiple cores, x264 encoding would be better for stable recording and streaming.
In terms of H.265 encoding, the 2nd generation Maxwell GPU (Maxsun MS-GTX 960 2G graphics card) offers up to 480fps NVENC accelerated HEVC video encoding. FFmpeg with GPU featuring accelerated HEVC encoder gets 90fps speed increase, compared to encoding 4K UHD HEVC 10-bit video via CPU.
3. NVDEC
Cuda Video Encoder
NVDEC (formally named as NVCUVID), a newer NVIDIA's VDPAU-successor, was initially part of the CUDA toolkit and then moved to the CUDA-based NVIDIA Video Codec SDK. NVDEC engine on NVIDIA GPUs decodes the input video bitstream in supported formats. Libav picked up NVDEC support first, then FFmpeg and GStreamer followed in 2017.
Video Converter Cuda
Supported codecs: MPEG-2, H.264, H.265, VP9, VP8, VC-1
The codec support depends on GPU architecture.
Operating system support: Windows and Linux
Which graphics cards support NVENC: Quadro K2000 and higher, GRID K1/K2/GRID K340/GRID K520, Tesla K10 and higher, the same as NVENC GPUs. Tesla V100/P100/M40/M60/M6/M4, Quadro M2000 and higher GPUs feature NVDEC HEVC decoding.
The codec support depends on GPU architecture.
Operating system support: Windows and Linux
Which graphics cards support NVENC: Quadro K2000 and higher, GRID K1/K2/GRID K340/GRID K520, Tesla K10 and higher, the same as NVENC GPUs. Tesla V100/P100/M40/M60/M6/M4, Quadro M2000 and higher GPUs feature NVDEC HEVC decoding.
NVDEC GPU-accelerated Video Decoding
NVDEC hardware-based decoder offers much faster video decoding for MPEG-2, H.264, H.265 and VP9, VP8, as mentioned before. NVDEC is widely used for video processing applications, especially video transcoding and playback applications. Telsa P40 decode with up to 340 fps in 2560x1440 and 160fps in 3840x2160 thanks to NVDEC accelerated H.264 decoder. However, NVDEC HEVC decoding may fail to work as expected. Many users complain that NVDEC creates artifacts when decoding HEVC 10-bit video streams.