HI ALL:
Just now we use am5728 chip to developed an video board.
We use AM5728 capture BT1120 video and use the v4l2 to capture video buffer.
Now we found when setting the v4l2 buffer to V4L2_MEMORY_MMAP and then copy the video buffer to user application.
The efficiency is very low, Copy 720x576 size buffer will cost 8ms time.
Below is my test command:
buffer.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
buffer.memory = V4L2_MEMORY_MMAP;
status = ioctl(v4l2_fd, VIDIOC_DQBUF, &buffer);
gettimeofday(&startTime, NULL);
memcpy(buf, user_buffer[buffer.index].addr, user_buffer[buffer.index].length);
gettimeofday(&finishTime, NULL);
time_use = (finishTime.tv_sec-startTime.tv_sec)*1000000 + (finishTime.tv_usec - startTime.tv_usec); //usec
printf("time_use is %.10f\n", time_use);
Our PSDK is Processor 3.3 SDK