摄像头用的就是友善的OV9650,LINUX内核是光盘中的linux-2.6.38-20120518。
我是用MMAP的方式 通过DQBUF-->处理-->QBUF来获取和处理一帧数据。
可是在VIDIOC_QUERYBUF时出错,代码片段
struct v4l2_buffer buf;
memset(&buf, 0, sizeof(buf));
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
buf.memory = V4L2_MEMORY_MMAP;
buf.index = n_buffers;
ret = ioctl(cam_fd, VIDIOC_QUERYBUF, &buf);
if (ret < 0) perror("VIDIOC_QUERYBUF error");
运行后出错信息:
VIDIOC_QUERYBUF error: Invalid argument