![]() |
VR-Forces 4.6.1 Class Documentation
|
The EncoderIO class is responsible to initialize CUDA and NVidia encoder then will be responsible to submit the Pixel Buffer Object to the GPU for encoding. More...
Public Member Functions | |
| DtEncoderIO () | |
| CTOR. | |
| virtual | ~DtEncoderIO () |
| DTOR. | |
| void | deinitialize () |
| Shutdown all (CUDA / NVIDIA encoder) | |
| bool | initialize (DtDe *theDe, const osg::ref_ptr< osg::Image > &image, unsigned int frameRate) |
| Initialize all (CUDA / NVIDIA encoder) | |
| void | flipVertically (CUdeviceptr dev, uint32_t stride, int height) |
| Flip image. | |
| void | submitPBO (unsigned int pboId, osg::ref_ptr< osg::Image > &image, DtReadFramebufferProcessData &fbData, unsigned int frameRate) |
| Submit Pixel Buffer Object. | |
Protected Member Functions | |
| void | deinitCUDA () |
| Shutdown CUDA. | |
| bool | initCUDA (const osg::ref_ptr< osg::Image > &image, unsigned int frameRate) |
| Initialize CUDA. | |
| void | deinitNVidiaEncoder () |
| Shutdown NVIDIA encoder. | |
| bool | initNVidiaEncoder (const osg::ref_ptr< osg::Image > &image, unsigned int frameRate) |
| Initialize NVIDIA encoder. | |
Protected Attributes | |
| int | myCudaDeviceId |
| CUDA device ID use for the encoding. | |
| int | myHcuDevice |
| CUDA device handle. | |
| CUcontext | myHcuContext |
| CUDA device context. | |
| EncodeBuffer | myEncodeBuffer [MAX_ENCODE_QUEUE] |
| Encoder buffer. | |
| DtNvQueue< EncodeBuffer > | myEncodeBufferQueue |
| Encoding queue. | |
| void * | myNVEncoder |
| encoding pointer | |
| uint64_t | myEncodeIdx |
| encoding index | |
| CUdeviceptr | myCUDATempDevicePtr |
| Temp buffer on CUDA device. | |
| uint32_t | myTempStride |
| Temp buffer on CUDA device. | |
| unsigned int | myFrameRate |
| Frame Rate. | |
| DtDe * | myDe |
| Copy of the DtDe. | |
The EncoderIO class is responsible to initialize CUDA and NVidia encoder then will be responsible to submit the Pixel Buffer Object to the GPU for encoding.
| makVrv::DtEncoderIO::DtEncoderIO | ( | ) |
CTOR.
|
virtual |
DTOR.
| void makVrv::DtEncoderIO::deinitialize | ( | ) |
Shutdown all (CUDA / NVIDIA encoder)
| bool makVrv::DtEncoderIO::initialize | ( | DtDe * | theDe, |
| const osg::ref_ptr< osg::Image > & | image, | ||
| unsigned int | frameRate | ||
| ) |
Initialize all (CUDA / NVIDIA encoder)
| void makVrv::DtEncoderIO::flipVertically | ( | CUdeviceptr | dev, |
| uint32_t | stride, | ||
| int | height | ||
| ) |
Flip image.
| void makVrv::DtEncoderIO::submitPBO | ( | unsigned int | pboId, |
| osg::ref_ptr< osg::Image > & | image, | ||
| DtReadFramebufferProcessData & | fbData, | ||
| unsigned int | frameRate | ||
| ) |
Submit Pixel Buffer Object.
|
protected |
Shutdown CUDA.
|
protected |
Initialize CUDA.
|
protected |
Shutdown NVIDIA encoder.
|
protected |
Initialize NVIDIA encoder.
|
protected |
CUDA device ID use for the encoding.
|
protected |
CUDA device handle.
|
protected |
CUDA device context.
|
protected |
Encoder buffer.
|
protected |
Encoding queue.
|
protected |
encoding pointer
|
protected |
encoding index
|
protected |
Temp buffer on CUDA device.
|
protected |
Temp buffer on CUDA device.