Object Type of Frames referenced in NvBufSurface

• Hardware Platform (Jetson / GPU) Jetson
• DeepStream Version 5.1
• Issue Type questions

I am writing a custom deepstream plugin that uses a Cuda kernel for cropping frames on GPU. The kernel receives an input pointer to a Cuda Image and allocates and fills out an output cuda image and returns (as an argument) an output pointer to the new Cuda Image.

In order to use this function in my custom deepstream plugin, I had to make sure that the deepstream buffer is compatible. That is, whether or not the batches that are referenced in the NvBufSurface, (by NvBufSurfaceParams * surfaceList attribute), can be cast to Cuda Images, so when the function receives the pointers, it finds Cuda Images which was expected. I didn’t find any documentation on the object type of the frames. Are they Cuda Images?

I would appreciate it if you could share any explanation, documentation, or sample codes on this.


There is a patch for this use-case. Please take a look at
How to create opencv gpumat from nvstream? - #18 by DaneLLL