16 #include "cuda_runtime.h"
17 #include <cuda_gl_interop.h>
22 #include <cuda_runtime_api.h>
24 #include <NvCodec/NvEncoder/nvEncodeAPI.h>
28 #define MAX_ENCODE_QUEUE 32
38 , nvRegisteredResource(0)
40 , bufferFmt(NV_ENC_BUFFER_FORMAT_ARGB)
101 void deinitNVidiaEncoder();
107 void unmapDeviceBuffer();
int myCudaDeviceId
CUDA device ID use for the encoding.
Definition: DtEncoderIO.h:110
struct DT_DLL_VRVVIDEOSTREAM makVrv::_EncodeInputBuffer EncodeInputBuffer
Encoding input buffer.
CUcontext myHcuContext
CUDA device context.
Definition: DtEncoderIO.h:116
uint64_t myEncodeIdx
encoding index
Definition: DtEncoderIO.h:128
Encoding buffer (contain input/output encoding buffers)
Definition: DtEncoderIO.h:65
_EncodeOutputBuffer()
Definition: DtEncoderIO.h:56
This is a non-extendable container class used to send the information to the NVidia encoder...
Definition: DtReadFramebufferProcessData.h:20
#define MAX_ENCODE_QUEUE
Definition: DtEncoderIO.h:28
int myHcuDevice
CUDA device handle.
Definition: DtEncoderIO.h:113
DtNvQueue< EncodeBuffer > myEncodeBufferQueue
Encoding queue.
Definition: DtEncoderIO.h:122
#define DT_DLL_VRVVIDEOSTREAM
Definition: vrvVideoStream.h:20
Contains makVrv::DtDe class.
void * myDeviceBufferPtr
CUDA resource pointer for PBO.
Definition: DtEncoderIO.h:149
struct DT_DLL_VRVVIDEOSTREAM makVrv::_EncodeOutputBuffer EncodeOutputBuffer
Encoding output buffer.
Contains the DtNvQueue class declaration.
EncodeInputBuffer stInputBfr
Definition: DtEncoderIO.h:68
std::string myEncodingFormat
Encoding Data format.
Definition: DtEncoderIO.h:146
CUdeviceptr myCUDATempDevicePtr
Temp buffer on CUDA device.
Definition: DtEncoderIO.h:131
DtDe * myDe
Copy of the DtDe.
Definition: DtEncoderIO.h:143
Contains modified utilities from the helper_cuda.h file.
cudaGraphicsResource * myDeviceBufferResource
Current CUDA resource.
Definition: DtEncoderIO.h:155
struct DT_DLL_VRVVIDEOSTREAM makVrv::_EncodeBuffer EncodeBuffer
Encoding buffer (contain input/output encoding buffers)
void * myNVEncoder
encoding pointer
Definition: DtEncoderIO.h:125
Contains the DtReadFramebufferProcessData class declaration.
The EncoderIO class is responsible to initialize CUDA and NVidia encoder then will be responsible to ...
Definition: DtEncoderIO.h:74
Encoding output buffer.
Definition: DtEncoderIO.h:54
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Contains DLL export macros.
NV_ENC_OUTPUT_PTR hBitstreamBuffer
Definition: DtEncoderIO.h:61
uint32_t myTempStride
Temp buffer on CUDA device.
Definition: DtEncoderIO.h:137
unsigned int myFrameRate
Frame Rate.
Definition: DtEncoderIO.h:140
EncodeOutputBuffer stOutputBfr
Definition: DtEncoderIO.h:67
unsigned int myCUDATempDeviceSize
CUDATempDevicePtr size.
Definition: DtEncoderIO.h:134
unsigned int myPboId
Current PBO Id.
Definition: DtEncoderIO.h:152