Hello,
I am processing an image using several nppi functions. At the end of the processing I pass the image to gstreamer.
I have it working, but only sending CPU allocated memory frames. Gstreamer is freeing the buffers by itself when it finishes with them. In order to make a CPU allocated frame.
I tried everything :
- Copying the frames manually with cudamemcpy. Works but it is super slow.
- unified memory (as slow as manual copy with cudamemcpy). Also works.
- zero-copy. Returns error code 11 if I allocate the memory with malloc.
zero-copy seems to work allocating the memory with cudamallochost, but that requires cudafreehost to free the memory and I don’t have control over that (gstreamer frees the memory).
Any idea? Should zero-copy work using malloc?