Sunshine master
Self-hosted game stream host for Moonlight.
nvenc_d3d11_interface.h
Go to the documentation of this file.
1
5#pragma once
6#ifdef _WIN32
7
8 // lib includes
9 #include <d3d11.h>
10
11 // local includes
12 #include "nvenc_encoder.h"
13
14namespace nvenc {
15
19 // Virtual inheritance is required because concrete encoders also inherit their SDK-specific implementation.
20 class nvenc_d3d11_interface: public virtual nvenc_encoder { // NOSONAR(cpp:S1011)
21 public:
25 ~nvenc_d3d11_interface() override = default;
26
32 virtual ID3D11Texture2D *get_input_texture() = 0;
33 };
34
35} // namespace nvenc
36#endif
SDK-neutral Direct3D11 NVENC encoder interface.
Definition nvenc_d3d11_interface.h:20
virtual ID3D11Texture2D * get_input_texture()=0
Get the input surface texture.
~nvenc_d3d11_interface() override=default
Destroy the SDK-neutral Direct3D11 encoder interface.
SDK-neutral standalone NVENC encoder interface.
Definition nvenc_encoder.h:28
Standalone NVENC encoder.
Definition nvenc_base.cpp:185
Declarations for the SDK-neutral NVENC encoder interface.