I have some old remote TX1 which are L4T R28.1.
I want to get image data from nv gstreamer plugin,hower the function “ExtractFdFromNvBuffer” can not find on TX1 with R28.1
Wchic function can work instead of ExtractFdFromNvBuffer on R28.1
Thanks!
my code
gst_parse_launch("filesrc location=1.h264 ! h264parse ! omxh264dec ! nvvidconv ! video/x-raw(memory:NVMM), format=(string)RGBA ! appsink name=mysink sync=false", NULLr)
...
GstSample *sample = gst_app_sink_pull_sample(GST_APP_SINK(appsink_));
if (sample)
{
GstBuffer *buffer = gst_sample_get_buffer (sample);
GstMemory *memory = gst_buffer_get_memory(buffer, 0);
GstMapInfo info;
gst_memory_map(memory, &info, GST_MAP_READ);
if (info.data)
{
//printf("%d\n", idx);
int in_dmabuf_fd;
gpointer mapped_ptr = NULL;
#ifndef L4TR28
ExtractFdFromNvBuffer (info.data, &in_dmabuf_fd);
NvBufferMemMap (in_dmabuf_fd, 0, NvBufferMem_Read,&mapped_ptr);
#else
//how to get image data
#endif
....
#ifndef L4TR28
if(mapped_ptr)
NvBufferMemUnMap (in_dmabuf_fd, 0, &mapped_ptr);
else
printf("mapped_ptr invilid\n");
NvReleaseFd(in_dmabuf_fd);
#else
//
#endif
}
gst_memory_unmap(memory, &info);
gst_memory_unref(memory);
gst_sample_unref(sample);
}
}