HIGH-PERFORMANCE GPU VIDEO ENCODING ABHIJIT PATAIT SR. MANAGER, NVIDIA AGENDA GPU Video Encoding Overview NVIDIA Video Encoding Capabilities Kepler, Maxwell Gen 1, Maxwell Gen 2 Software API Performance & Quality Roadmap WHY GPU VIDEO ENCODING? BENEFITS Low power Fixed function hardware, free CPU Reduced memory transfers Low latency High performance Higher density Scalability Automatic benefit from improvements in hardware Ease of programming Linux, Windows, C/C++, Application portability NVIDIA VIDEO ENCODER CAPABILITIES MAIN FEATURES Feature Benefits H.264 base, main, high profiles Wide range of use-cases H.265/HEVC main profile Lower bitrates at same quality High performance (4K @ 60 fps) “Blazing-speed” encoding YUV 4:2:0 and 4:4:4 support High quality encoding without chroma subsampling QP maps Customizable quality, region of interest encoding 4K encoding in hardware High resolution encode API - NV Encode SDK & GRID SDK Flexible, Win/Linux, DirectX/CUDA Independent of CUDA Use CUDA and encode simultaneously FEATURE COMPARISON Kepler Maxwell Gen 1 (GM10x) Maxwell Gen 2 (GM20x) H.264 only H.264 only H.264 and HEVC/H.265 Planar 4:4:4 & proprietary 4:4:4; no lossless encoding Standard 4:4:4 and H.264 lossless encoding Standard 4:4:4 and H.264 lossless encoding ~240 fps 2-pass encoding @ 720p ~500 fps 2-pass encoding @ 720p ~900 fps 2-pass encoding @ 720p GRID K340/K520, K1/K2, Quadro, Tesla K10/K20 Maxwell-based GRID & Quadro products TBA GeForce – 2 full-speed encode sessions/system GeForce – 2 full-speed encode sessions/system GeForce – 2 full-speed encode sessions/system NV Encode SDK 1.0-5.0 (Now) NV Encode SDK 4.0+ (Now) NV Encode SDK 5.0+ (Now) GRID SDK 1.x, 2.2, 2.3 (Now) GRID SDK 3.0+ (Now) In development WHAT’S NEW – HARDWARE HEVC 8-bit encoding Main8 profile Optimized for low-latency applications (I and P frames) > 300 fps at very high quality 720p H.264 Improved performance (~80% higher compared to 1st Gen Maxwell) 4:4:4 and lossless WHAT’S NEW - SOFTWARE NVENC SDK 5.0 NVIDIA GPU driver 347.18 and above HEVC Unified API for H.264 and HEVC Linux & Windows Intra refresh, ref-pic invalidation, etc. for H.264 and HEVC Support for all NVENC hardware up to GM20x Adaptive quantization Quality improvements All-new sample applications, including a performance application SOFTWARE API USING NVENC • • • • • No capture Transcoding Archiving Video editing CUDA pre-process + encoding • Granular encoder settings • D3D, CUDA interop Capture + Encode GRID SDK NVENC SDK Direct Encode • Capture + encode • Optimized for low-latency apps • Capture + CUDA preprocess + encoding • Encoder settings optimized for streaming • D3D, CUDA interop DIRECT ENCODE (NVENC SDK) Encoded bitstream Client application Initialize, Configure, Encode NVENC API Configure HW CUDA Driver NVENC Driver DirectX Driver HW Encode NVENC firmware + hardware CAPTURE & ENCODE (GRID SDK) Client application Encoded Bitstream DX/OGL Present NvFBC/NvIFR Capture NVENC Driver YUV DirectX/OGL Driver Encode NVENC Hardware GPU 3D Engine NVENC SDK (1/2) Available on NVIDIA developer zone https://developer.nvidia.com/nvidia-video-codec-sdk Current release: 5.0 Interface header, documentation, sample application .dll/.so included in the driver Unified API for Windows and Linux Works on x86/x64 API’s, presets, rate control modes for Low-latency streaming Transcoding Video conferencing NVENC SDK (2/2) Unified API for H.264 and HEVC Flexibility Dynamic resolution/bitrate change Low-level encoder settings Windows, Linux, DirectX, CUDA, OGL (via CUDA) Works on GeForce (2 sessions/system) Error concealment Reference picture invalidation Intra-refresh Greater flexibility for quality/performance trade-off Lossless encoding only in NVENC SDK GRID SDK ENCODE NDA only – older release available on NV developer zone https://developer.nvidia.com/grid-app-game-streaming Current release: 3.1 (Now – NDA), 2.3 (Public) Interface header, documentation, sample apps .dll/.so included in the driver Windows and Linux Works on x86/x64 Presets and API’s for Remote graphics (Cloud gaming, remote desktop, capture & stream) Optimized for low latency QUALITY H.264 QUALITY – 1-PASS ENCODING H.264 quality with 1-pass rate control 46 44 PSNR (dB) 42 Default LL-Default 40 HP HQ 38 BD LL-HQ 36 34 6 8 10 12 bitrate (Mbps) 15 18 20 H.264 QUALITY – 2-PASS ENCODING H.264 quality with 2-pass rate control 46 44 PSNR (dB) 42 Default LL-Default 40 HP HQ 38 BD LL-HQ 36 34 6 8 10 12 bitrate (Mbps) 15 18 20 COMPARISON: 1-PASS VS 2-PASS H.264 quality comparison: 1-pass vs 2-pass 40.5 40 39 2-pass 1-pass 2-pass 1-pass 2-pass 1-pass 2-pass 1-pass 2-pass 1-pass 38 2-pass 38.5 1-pass PSNR (dB) 39.5 37.5 Default LL-Default HP HQ Encoder preset BD LL-HQ BITRATE SAVINGS Bitrate savings - HQ preset Bitrate savings - Default preset 9.8 9.7 8 8 6 6 5.8 33% 5.8 41.0 dB 25% 39.5 dB 42.0 dB 18% Bitrate savings 33% 41.0 dB 26% HEVC H.264 HEVC H.264 HEVC H.264 HEVC H.264 HEVC 3.9 H.264 HEVC H.264 4 39.5 dB 7.9 7.8 42.0 dB 19% H.264 VS HEVC Courtesy: Vanguard video H.264 VS HEVC Courtesy: Vanguard video PERFORMANCE H.264 PERFORMANCE – GM20X H.264 Performance (1080p) 500 fps 450 fps 400 fps 300 fps 250 fps Single pass HP 464 fps LL-HP 342 fps HQ 291 fps LL-HQ 293 fps Two pass 306 fps 246 fps 171 fps 181 fps 2 pass 2 pass 1 pass 1 pass 2 pass 2 pass fps 1 pass 1 pass 50 fps 2 pass 2 pass 100 fps 1 pass 1 pass 150 fps 2 pass 2 pass 200 fps 1 pass 1 pass Encode FPS 350 fps 1080p, GM20x H.264/HEVC PERF COMPARISON H.264/HEVC Performance: 2-pass 350 fps 300 fps 200 fps 150 fps fps H.264 HP 306 fps LL-HP 246 fps HQ 171 fps LL-HQ 181 fps H.265 220 fps 214 fps 102 fps 153 fps HEVC H.264 HEVC H.264 HEVC H.264 50 fps HEVC 100 fps H.264 Encode FPS 250 fps PERFORMANCE - TREND Performance 1800 fps 1600 fps 1400 fps 1200 fps 1000 fps 800 fps 600 fps 400 fps 200 fps fps Kepler (2011) Maxwell Gen 1 (2013) Maxwell Gen 2 (2014) Future ROADMAP ROADMAP Core GPU chip IP Motion estimation only mode – 2H2015 SAO, 10/12-bit, HEVC B-frames Lossless/4:4:4 Improved quality for screen content encoding ME performance and quality enhancements Today: 4K@60fps Next: 8K@?? THANK YOU [email protected]
© Copyright 2026 Paperzz