|
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
buf.memory = V4L2_MEMORY_MMAP;
if (-1 == xioctl (fd, VIDIOC_DQBUF, &buf)) {
switch (errno) {
case EAGAIN:
return 0;
case EIO:
/* Could ignore EIO, see spec. */
/* fall through */
default:
errno_exit ("VIDIOC_DQBUF");
}
}
assert (buf.index < n_buffers);
printf("wyz---------%d\n",buffers[buf.index].start);
process_image (buffers[buf.index].start);
if (-1 == xioctl (fd, VIDIOC_QBUF, &buf))
errno_exit ("VIDIOC_QBUF");
程序运行结果如下:
[root@EmbedSky /tmp]# ./videoCap
wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.wyz---------1075597312
.wyz---------1075130368
.wyz---------1075286016
.wyz---------1075441664
.^C
[root@EmbedSky /tmp]#
映射出来有数据变化,现在不知道怎么把内存的东西读出来,保存成jpeg.
|
|