待续。。。
用的v4l,调用
ioctl(fd,
VIDIOCGCAP
, &vcap),程序出错,如下:
代码:if ( ioctl ( fd , VIDIOCGCAP , & vcap )< 0 ){perror ( "VIDIOCGCAP" );exit ( 1 );}错误信息: VIDIOCGCAP Invalid argument
找了半天,有人说可以通过换摄像头解决,我没试,最后在google找到了解决办法,但是有新的问题了,没关系,慢慢来。
1.我头文件使用的#include <linux/videodev.h>,替换为#include <linux/videodev2.h>,也就是使用V4L2;2.然后 ioctl(fd, VIDIOCGCAP , &vcap)改为 ioctl ( fd , VIDIOC_QUERYCAP , & vcap )。
参考资料:
只要USB Camera符合UVC标准。理论上在2.6 Kernel Linux 就可以正常使用:介绍见下文: