NVIDIA Video Codec SDK



A comprehensive set of API including high-performance tools, samples and documentation for hardware accelerated video encode and decode on Windows and Linux.



NVIDIA GeForce Now is made possible by leveraging NVENC in the datacenter and streaming the result to end clients


The SDK consists of two hardware acceleration interfaces:
  • NVENCODE API for video encode acceleration
  • NVDECODE API for video decode acceleration (formerly called NVCUVID API)


  • NVIDIA GPUs contain one or more hardware-based decoder and encoder(s) (separate from the CUDA cores) which provides fully-accelerated hardware-based video decoding and encoding for several popular codecs. With decoding/encoding offloaded, the graphics engine and the CPU are free for other operations.

    GPU hardware accelerator engines for video decoding (referred to as NVDEC) and video encoding (referred to as NVENC) support faster than real-time video processing which makes them suitable to be used for transcoding applications, in addition to video playback.


    * Diagram represents support for the NVIDIA Ampere GPU family
    ** 4:2:2 is not natively supported on HW
    *** Support is codec dependent



    NVENC - Hardware-Accelerated Video Encoding

    NVIDIA GPUs - beginning with the Kepler generation - contain a hardware-based encoder (referred to as NVENC) which provides fully accelerated hardware-based video encoding and is independent of graphics performance. With complete encoding (which is computationally complex) offloaded to NVENC, the graphics engine and the CPU are free for other operations. For example, in a game recording and streaming scenario like streaming to Twitch.tv using Open Broadcaster Software (OBS), encoding being completely offloaded to NVENC makes the graphics engine bandwidth fully available for game rendering. NVENC makes it possible to:

    • Encode and stream games and applications at high quality and ultra-low latency without utilizing CPU
    • Encode at very high quality for archiving, OTT streaming, web videos
    • Encode with ultra-low power consumption per stream (Watts/stream)

    Note: The graphs assume:

    • Bitrate savings are BD-BR based on PSNR, average across a large variety of content, using FFmpeg
    • In all tests, NVENC is fully loaded and is running at the highest clock
    • x264 medium and x265 medium setting are considered “reference” for comparing bitrate savings

    GPU H.264 (AVCHD) YUV 4:2:0 H.264 (AVCHD) YUV 4:4:4 H.264 (AVCHD) LOSSLESS H.265 (HEVC) YUV 4:2:0 H.265 (HEVC) YUV 4:4:4 H.265 (HEVC) LOSSLESS
    MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res.
    Maxwell (1st Gen)* 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 N/A N/A N/A N/A N/A N/A
    Maxwell (2nd Gen) 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 N/A N/A N/A N/A
    Maxwell (GM206) 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096
    Pascal 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 10-bit 8192 x 8192** 10-bit 8192 x 8192** 10-bit 8192 x 8192**
    Volta 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 10-bit 8192 x 8192 10-bit 8192 x 8192 10-bit 8192 x 8192
    Turing 8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 10-bit 8192 x 8192 10-bit 8192 x 8192 10-bit 8192 x 8192
    Ampere
    (A100)
    No No No No No No No No No No No No
    Ampere
    (non A100)
    8-bit 4096 x 4096 8-bit 4096 x 4096 8-bit 4096 x 4096 10-bit 8192 x 8192 10-bit 8192 x 8192 10-bit 8192 x 8192
    * Except GM108 and GP108 (not supported)
    ** Except GP100 (is limited to 4K resolution)


    NVDEC - Hardware-Accelerated Video Decoding

    NVIDIA GPUs contain a hardware-based decoder (referred to as NVDEC) which provides fully-accelerated hardware-based video decoding for several popular codecs. With complete decoding offloaded to NVDEC the graphics engine and the CPU are free for other operations. NVDEC supports much faster than real-time decoding which makes it suitable to be used for transcoding applications, in addition to video playback applications.

    NVDECODE API enables software developers to configure this dedicated hardware video decoder. This dedicated accelerator supports hardware-accelerated decoding of the following video codecs on Windows and Linux platforms: MPEG-2, VC-1, H.264 (AVCHD), H.265 (HEVC), VP8, VP9 and AV1 (see table below for codec support for each GPU generation).



    GPU *H.265 (HEVC) 4:4:4 H.265 (HEVC) 4:2:0 H.264 (AVCHD) 4:2:0 VP9 VP8 MPEG-2 VC-1 AV1
    MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res. MAX Color MAX Res.
    Kepler N/A N/A N/A N/A 8-bit 4096 x 4096 N/A N/A N/A N/A 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Maxwell (1st Gen)* N/A N/A N/A N/A 8-bit 4096 x 4096 N/A N/A N/A N/A 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Maxwell (2nd Gen) N/A N/A N/A N/A 8-bit 4096 x 4096 N/A N/A 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Maxwell (GM206) N/A N/A 10-bit 4096 x 2304 8-bit 4096 x 4096 8-bit 4096 x 2304 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Pascal N/A N/A 12-bit 8192 x 8192** 8-bit 4096 x 4096 12-bit**** 8192 x 8192** 8-bit 4096 x 4096*** 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Volta N/A N/A 12-bit 8192 x 8192 8-bit 4096 x 4096 12-bit 8192 x 8192 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Turing 12-bit 8192 x 8192 12-bit 8192 x 8192 8-bit 4096 x 4096 12-bit 8192 x 8192 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Ampere
    (A100)
    12-bit 8192 x 8192 12-bit 8192 x 8192 8-bit 4096 x 4096 12-bit 8192 x 8192 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 N/A N/A
    Ampere
    (non A100)
    12-bit 8192 x 8192 12-bit 8192 x 8192 8-bit 4096 x 4096 12-bit 8192 x 8192 8-bit 4096 x 4096 8-bit 4080 x 4080 8-bit 2048 x 1024 10-bit 8192 x 8192

    * Except GM108 (not supported)
    ** Max resolution support is limited to selected Pascal chips
    *** VP8 decode support is limited to selected Pascal chips
    **** VP9 10/12 bit decode support is limited to select Pascal chips




    Partners and examples









    Adobe Premiere Pro

    Premiere Pro is the industry-leading video editing application for film, TV, social, and online content. Learn More








    Blackmagic Design


    Blackmagic is a leading manufacturer of creative video technology. Dedicated to quality and stability; Blackmagic is world famous for their codecs and affordable high-end quality editing workstations built upon Blackmagic software and hardware.

    Visit Blackmagic for detailed product information








    Comprimato

    Comprimato is a JPEG2000 software codec toolkit offering media & entertainment and geospatial imaging technology company’s life-like viewing experience that result in better enjoyment and more accurate decision-making. The JPEG2000 standard compliant Ultra HD software codec leverages the supercomputing power of GPUs and CPUs to speed up video and image compression by 10x. The codec saves infrastructure costs by 70%, reducing development cycles by 50% and enabling new revenue streams such as Ultra HD, High Dynamic Range (HDR) and High Frame Rate (HFR) video.

    Visit Comprimato for detailed product information








    DELTACAST Cinegy


    DELTACAST develops state-of-the-art products for the professional TV broadcast market, providing a range of cost-effective video cards that, with the SDK software, can be used in OEM products to create professional broadcast custom solutions and products.

    Visit DELTACAST for detailed product information








    Erlyvideo LLC


    Erlyvideo LLC has been developing software for streaming video since 2010. Our carrier-grade server solutions help business clients capture, process, transcode, archive, and deliver video to millions of subscribers. We are making every effort to research and develop reliable, premium quality products that truly meet customer needs. Customers in more than 100 countries use our products for building IPTV/OTT, CDN, and Video Surveillance as a Service CCTV systems.

    Flussonic Media Server is a multi-purpose software solution for launching high load video streaming services. Using Flussonic Media Server you can set up an end-to-end video streaming pipeline of any scale. Flussonic can ingress and egress videos in almost any format, codec, and resolution. It will process and transcode incoming streams and deliver beautiful video to your subscribers. Let your business benefit from the most advanced and efficient video streaming platform.

    Visit Flussonic.com for detailed product information








    Fastvideo


    Fastvideo is a world leader in the field of high performance GPU-based image and video processing. Fastvideo team consists of experienced and highly dedicated professionals and it focuses on GPU image processing, algorithm design and parallel computations. Our technologies show unmatched performance in image compression and decompression (JPEG, JPEG2000, Raw Bayer), demosaicing, denoising, tone mapping, color correction, resizing, sharpening, encoding and decoding of video streams in various applications including image and video processing, high speed imaging, machine vision and other camera applications, streaming, digital cinema, 3D and VR, broadcasting, etc.


    Visit Fastvideo for detailed product information









    Neulion Main Concept

    Since its foundation in 1993 in Aachen, Germany, MainConcept has become a global leader for video codecs and broadcast technologies. The MainConcept® SDK is a de facto standard and the largest codec library for software development companies who need ingest, transcoding, or streaming features in their applications for live and file-based workflows. Leveraging not only extended CPU capabilities for best-in-class software encoding, but also offering NVIDIA’s NVENC hardware encoding in an all-in-one library, makes the MainConcept HEVC Encoder SDK the single product needed for any professional software that requires a complete set of video processing functionality.


    "Enabling access to HEVC/H.265 video encoding in hardware allows our customers to continue working in the well-known MainConcept environment with its rich portfolio of multiplexers and auxiliary components, while benefiting from the computational power of the NVIDIA GPUs. Using NVIDIA GPUs for HEVC/H.265 encoding increases server density for processing multiple video streams on one system while still having enough CPU cycles available for applications." Deacon Johnson, SVP Global Sales - Technology Licensing for MainConcept

    Learn more about MainConcept HEVC







    Medialooks

    Medialooks, founded in 2005, provides broadcast customers with a high-level software development kit to quickly build playout automation, virtual studio and video capture solutions. Customers include PlayBox Technologies, Arvato Systems, Masterplay, Winjay, Etere, Axel Technology, Xeus Media, Wolftech and Broadcast Play.

    Visit Medialooks for detailed product information








    Multicamera.Systems LLC

    Multicamera.Systems LLC is a developer of video acquisition and recording software for machine vision cameras, catering for variety of industries: science labs, VR, sport analytics autonomous cars and military. "The Recorder" software is the only software on the market capable of recording h.26x compressed video at thousands of frames per second thanks to our own "GPUSqueeze" library supporting multi-GPU video compression. This library is now available for third party developers.

    "The Recorder" software major features:

    • unparalleled support for multi-camera and multi-PC setups
    • compatible with all machine vision camera types: USB-Vision, GigE-Vision, CoaXPress and CLHS
    • full remote control of recording system with real time video streaming
    • recording to Uncompressed, M-JPEG and H.26x formats at any frame rates
    • easy integration with user’s own modules for online and offline image processing

    "GPUSqueeze" library major features:

    • can be easily integrated into user’s own application to enable high speed and multi-stream video encoding and transcoding
    • the library can accept bayer images and performs high quality demosaicing
    • all image processing is done purely on GPU and performance scales linearly with the increase of number of GPUs in a system
    • the library supports mixed GPU configuration (e.g. GTX 1660 + RTX 2080) allowing extra flexibility and cost saving to end users




    NVIDIA's high performance Video Engine alongside with CUDA enabled us to develop “GPUSqueeze” library and opened up the possibility of long high speed video recordings for the users of “The Recorder” software and can greatly increate performance of video encoding or transcoding applications being developed by users. Dmitry Semiannikov, Founder and Director, Multicamera.Systems LLC

    Visit Multicamera.systems for more information on the "GPUSqueeze" library
    Visit Medialooks for detailed product information on "The Recorder" software








    Norpix Cuda JPEG compression library


    Norpix is a developer of digital video recording software for scientific, machine vision, military and general purpose digital video acquisition applications. We market the industries number 1 DVR software Streampix for single or multiple camera acquisition. We also develop an SDK and CUDA JPEG compression library that runs on NVIDIA GPU’s.

    Benefit of the product:

    • Capture in real time lossy JPEG with a quality factor varying from 1 to 99%.
    • Compress up to 3.0 billion pixels in monochrome.
    • Up to 2.2 billion pixels in color.
    • Compatible usb3Vision, GigE Vision, 10 GigE Vision, Camera Link and CoaXPress cameras.
    • Supports multiple nVidia GPU for parallel processing load balancing over multiple cameras.
    • Stand along C/C++ libraries and run time.

    Visit Norpix for detailed product information








    GeForce Now


    NVIDIA GeForce NOW™ is an on-demand service that connects you to NVIDIA’s cloud-gaming supercomputers to stream PC games to your SHIELD device at up to 1080p resolution and 60 frames per second.

    Learn more about GeForce NOW








    Open Broadcaster Software (OBS)

    OBS Studio is a free and open source software designed for capturing, compositing, encoding, recording, and live streaming video content, efficiently.

    Learn more about OBS Studio

    BLOG - New GeForce-Optimized OBS and RTX Encoder Enables Pro-Quality Broadcasting on a Single PC









    SplitmediaLabs


    Based in Hong Kong and with a development center in Manila, Philippines. More than 8 Million people and businesses use SplitmediaLabs products to grow their communities, create innovative content and connect with other players from around the world. SplitmediaLabs has helped usher in the new age of live streaming gameplay since its creation back in 2009 and is the developer XSplit, Challonge and Player.me.

    XSplit Broadcaster: A simple yet powerful live streaming software and recording software that powers countless live streams and recordings around the world. XSplit Broadcaster is the perfect solution for producing and delivering rich video content.


    With NVIDIA NVENC, single PC game streaming with XSplit has never been easier. By natively integrating the NVIDIA Video Codec SDK, XSplit is able to offload the video encoding for both the recording and the live stream from the CPU to the GPU, allowing our users to produce high quality content without compromising on gaming performance. Miguel Molina, Director of Developer Relations, SplitmediaLabs Limited

    Learn more about XSplit








    Streamline

    Streamline is a reference system design for a premium quality, white label, end to end live streaming system from HDMI / HD-SDI capture all the way to a player on a CDN that works on web, iOS, and Android devices. Using commodity computer hardware, free software, and AWS, it’s an affordable way to learn how to build a very high quality live streaming system.

    Learn more about Streamline








    Telestream

    Telestream® specializes in products that make it possible to get video content to any audience regardless of how it is created, distributed or viewed. Throughout the entire digital media lifecycle, from capture to viewing, for consumers through high-end professionals, Telestream products range from desktop components and cross-platform applications to fully-automated, enterprise-class digital media transcoding and workflow systems. Telestream enables users in a broad range of business environments to leverage the value of their video content.

    Visit Telestream for detailed product information








    Wowza

    Wowza Media Systems™ is the recognized gold standard of streaming, with more than 22,000 customers in 170+ countries. By reducing the complexities of video and audio delivery to any device, Wowza™ enables organizations to expand their reach and more deeply engage their audiences, in industries ranging from education to broadcasting. Service providers, direct customers and partners worldwide trust Wowza products to provide robust, customizable and scalable streaming solutions—with powerful APIs and SDKs to meet organizations’ evolving streaming needs. Wowza was founded in 2005, is privately held, and is headquartered in Colorado.

    Visit Wowza for detailed product information







    Video Codec SDK in-action



    Video is more than 60% of the world's internet traffic. And with the world going even more digital, finding efficient ...

    Read More

    With more people working from home, video editors are being challenged to deliver content in new ways. Many are using...

    Read More

    We present details of the recent updates to NVIDIA Video Codec SDK and NVIDIA Optical Flow SDK. Turing and later GPUs...

    Watch Now

    Support for accelerated hardware video encoding began with the Kepler generation of NVIDIA GPUs, and all GPUs since the...

    Read More

    See More

    This Connect with the Experts session is a Q&A on Video Codec SDK and Optical Fow SDK recorded during our online GTC 2020 event.

    Watch Now

    The recently released Turing hardware delivered Tensor Cores and better machine learning performance, but the new GPU also...

    Read More
    NVIDIA Developer Blog
    NVIDIA FFmpeg Transcoding Guide

    Using the FFmpeg library is common practice when transcoding video data. Hardware acceleration dramatically improves the...

    Read More



    Looking to integrate Video Codec SDK or leverage FFMPEG with your application?

    Get Started (Download)