主题 : 无效的参数 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 12842
精华: 0
发帖: 6
金钱: 40 两
威望: 8 点
综合积分: 12 分
注册时间: 2010-01-14
最后登录: 2010-03-24
楼主  发表于: 2010-03-11 10:27

 无效的参数

          因为友善之臂不提供图像采集的源代码,我们就自己在网上找了一些.
其中有一个经过我们的修改,编译的时候不会报错了,
但是在运行的时候,
使用第一个摄像头的时候报错如下:
  错误的文件描述符
使用第二个摄像头的时候报错如下:
无效的参数

报错的一部分源代码如下:

int  v4l_get_capability(v4l_device *vd)
{
   if (ioctl(vd->fd, VIDIOCGCAP, &(vd->capability))<0)
                        {
                           perror("v4l_get_capability");
                             return  -1;
                        }
#ifdef  DEBUG_PRINT
printf("\nname=%s\n,maxwidth=%d,maxheight=%d\n,minwidth=%d,minheight=%d\n,channels=%d,type=%d,audios=%d\n",vd->capability.name,vd->capability.maxwidth,vd->maxheight,vd->capability.minwidth,vd->capability.minheight,vd->capability.channels,vd->capability.type,vd->capability.audios);
#endif
return 0;
}



我们对比过,插上第二个摄像头的时候 是有/dev/vedio0   而插第一个摄像头没有/dev/vedio0

找了很多图像采集的函数程序都是一样的!
级别: 新手上路
UID: 12842
精华: 0
发帖: 6
金钱: 40 两
威望: 8 点
综合积分: 12 分
注册时间: 2010-01-14
最后登录: 2010-03-24
1楼  发表于: 2010-03-11 14:53
我自己回答吧
FC9的摄像头驱动用的是UVC,它只支持V4l2程序不支持基于V4l的.
所以换个驱动就行了


正在实验中不知对不对哈