当前位置: 技术问答>linux和unix
关于v4l2的一点疑问
来源: 互联网 发布时间:2016-12-21
本文导语: 本帖最后由 greatxingxing 于 2009-08-07 15:12:45 编辑 小弟有一个usb 摄像头,之前用v4l采集数据,没什么问题。 后来被要求用v4l2采集,发现usb摄像头好像不支持v4l2? if ( -1 == ioctl(cap_fd, VIDIOC_S_FMT, &fmt) { perror("se...
后来被要求用v4l2采集,发现usb摄像头好像不支持v4l2?
if ( -1 == ioctl(cap_fd, VIDIOC_S_FMT, &fmt)
{
perror("set format failedn");
exit(-1);
}
提示
set format failed
Invalid argument
请问各位这是因为摄像头不支持v4l2吗?
有什么解决办法没?
ps: 系统是ubuntu8.04
#uname -a
Linux nemo-desktop 2.6.24-24-generic #1 SMP Tue Jul 7 19:46:39 UTC 2009 i686 GNU/Linux
#lsusb
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 004: ID 0ac8:301b Z-Star Microelectronics Corp. ZC0301 WebCam
Bus 001 Device 001: ID 0000:0000
|
if (-1 == ioctl (fd, VIDIOC_G_STD, &std_id)) {
/* Note when VIDIOC_ENUMSTD always returns EINVAL this
is no video device or it falls under the USB exception,
and VIDIOC_G_STD returning EINVAL is no error. */
perror ("VIDIOC_G_STD");
exit (EXIT_FAILURE);
}
网上找到的,不知道对你有用没,
http://www.linuxtv.org/downloads/video4linux/API/V4L2_API/v4l2spec/v4l2.pdf
|
肯定支持了,你都跑到设置格式了,因为前面还要设置些东西。
Invalid argument ,这个表示你设置的格式不支持。
Invalid argument ,这个表示你设置的格式不支持。
|
你把代码贴全些,使用前要判断你摄像头支持哪些格式
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。