Sunshine master
Self-hosted game stream host for Moonlight.
nvenc_dynamic_factory_versions.h File Reference

Declarations for SDK-specific NVENC encoder constructors. More...

#include <memory>
#include "nvenc_d3d11_interface.h"
#include "nvenc_shared_dll.h"
Include dependency graph for nvenc_dynamic_factory_versions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  nvenc
 Standalone NVENC encoder.
 

Functions

std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_native_1100 (ID3D11Device *device, shared_dll dll)
 Create an SDK 11.0 native Direct3D11 encoder.
 
std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_native_1200 (ID3D11Device *device, shared_dll dll)
 Create an SDK 12.0 native Direct3D11 encoder.
 
std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_native_1300 (ID3D11Device *device, shared_dll dll)
 Create an SDK 13.0 native Direct3D11 encoder.
 
std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_on_cuda_1100 (ID3D11Device *device, shared_dll dll)
 Create an SDK 11.0 CUDA-interoperability encoder.
 
std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_on_cuda_1200 (ID3D11Device *device, shared_dll dll)
 Create an SDK 12.0 CUDA-interoperability encoder.
 
std::unique_ptr< nvenc_d3d11_interfacenvenc::detail::create_nvenc_d3d11_on_cuda_1300 (ID3D11Device *device, shared_dll dll)
 Create an SDK 13.0 CUDA-interoperability encoder.
 

Detailed Description

Declarations for SDK-specific NVENC encoder constructors.

Function Documentation

◆ create_nvenc_d3d11_native_1100()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_native_1100 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 11.0 native Direct3D11 encoder.

Parameters
deviceDirect3D11 device used for encoding.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.

◆ create_nvenc_d3d11_native_1200()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_native_1200 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 12.0 native Direct3D11 encoder.

Parameters
deviceDirect3D11 device used for encoding.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.

◆ create_nvenc_d3d11_native_1300()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_native_1300 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 13.0 native Direct3D11 encoder.

Parameters
deviceDirect3D11 device used for encoding.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.

◆ create_nvenc_d3d11_on_cuda_1100()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_on_cuda_1100 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 11.0 CUDA-interoperability encoder.

Parameters
deviceDirect3D11 device used for input surfaces.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.

◆ create_nvenc_d3d11_on_cuda_1200()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_on_cuda_1200 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 12.0 CUDA-interoperability encoder.

Parameters
deviceDirect3D11 device used for input surfaces.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.

◆ create_nvenc_d3d11_on_cuda_1300()

std::unique_ptr< nvenc_d3d11_interface > nvenc::detail::create_nvenc_d3d11_on_cuda_1300 ( ID3D11Device * device,
shared_dll dll )

Create an SDK 13.0 CUDA-interoperability encoder.

Parameters
deviceDirect3D11 device used for input surfaces.
dllShared NVENC driver module.
Returns
SDK-neutral encoder instance.