Developer needed to implement zero-copy video capture

I am building an application which needs to capture an image from 4 different cameras, process image using OpenCV build with OpenCL and stitches 4 Images at the end.

I am new to this stream, I was able to build an application using v4l2 to capture Images. I am creating cv::UMat using OpenCL Buffer Created with clCreateBuffer. But transfer captured frame form v4l2 Buffer to OpenCL Buffer, I am using memcpy which is consuming more time (~15ms using OpenMP for-loop for 4 Images).

Code Snippet for memcpy operation

cl_mem newBuffer[4] ;

unsigned char *cDataIn[4];

cv::UMat UmatFullRes[4];

/* Init (only once) */

for (int j = 0; j < 4; j++) {

newBuffer[j] = clCreateBuffer(context, CL_MEM_READ_WRITE, (1280*800*4), NULL, NULL);

cDataIn[j] = (unsigned char*)clEnqueueMapBuffer(cmdq[j], newBuffer[j],CL_FALSE, CL_MAP_WRITE | CL_MAP_READ, 0, (1280*800*4), 0,NULL, NULL, NULL);


for (int j = 0; j < 4; j++) {

memcpy(cDataIn[j], buf[j], (1280 * 800 * 4));

cv::ocl::convertFromBuffer(newBuffer[j], 1280 * 4, 800, 1280, CV_8UC4, UmatFullRes[j]);


In the above code snippet buf[j] is the unsigned char buffer returned from captureFrame function in the [login to view URL] file. Please find the attachment for [login to view URL] file.

I am trying to implement the capture process with Zero-Copy (VIDIOC_EXPBUF) to OpenCL buffer to avoid memcpy operation.

I am searching for a person who could help me to understand "How to use VIDIOC_EXPBUF in my case?", and help me in building application.

Beceriler: OpenCL, C++ Programlama, OpenCV, Gömülü Yazılım, Linux

Daha fazlasını gör: video capture recorder device, tutorial video capture screen, qbfc freelance developer needed, linux zero-copy dma, zero copy ii: kernel perspective, zero-copy example, zero-copy dma, zero-copy c, dpdk zero-copy, java zero-copy networking, zero copy java, iphone developer needed, copy video posted online, implement flv online video, outsource developer needed, cakephp developer needed, php oscommerce developer needed, ajax developer needed, flash games developer needed, virtual video capture device input

İşveren Hakkında:
( 0 değerlendirme ) Chitradurga, India

Proje NO: #27342259