dmabuf in pipeline
prg.amc
pradeepreddy.g95 at gmail.com
Thu Apr 8 13:53:12 UTC 2021
Hi, currently I have a problem in passing dmabuf fd to other elements.
so, I have plugin which acts as src and it will receive dma fd from another
process using DBUS, so there a way to pass the same fd to next elements, the
next element knows how to access the memory location using the fd.
GstBuffer *buffer = gst_buffer_new();
GstAllocator *allocator = gst_dmabuf_allocator_new();
if (buffer != nullptr && allocator != nullptr) {
GstMemory *mem = gst_dmabuf_allocator_alloc(allocator, fd, nBufSize);
gst_buffer_append_memory(buffer, mem);
*buf = buffer;
This is what i`m using now, but with the above code gstreamer is trying to
copy the data using fdmemory. where the fd is not accessable directly.
*0x5575c30f70 ERROR fdmemory gstfdmemory.c:126:gst_fd_mem_map:
0x5575e47520: fd 14: mmap failed: No such device
ERROR fdmemory gstfdmemory.c:126:gst_fd_mem_map: 0x5575e47520:
fd 14: mmap failed: No such device
*
I`m i doing it correct? and i dont have any custom bufferpool manager.
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
More information about the gstreamer-devel
mailing list