start 2.0...
Can't get device information: VIDIOCGCAP
Device name:
Width:0 ~ 0
Height:0 ~ 0
ERROR:VIDIOCGWIN
ERROR:VIDIOCSWIN
ERROR:VIDIOCGPICT
ERROR: VIDIOCSPICT,Can't set video_picture format
ERROR:VIDIOCGMBUF,Can't get video_mbuf
Frames:0
ERROR:mmap
Buffer size:0
Offset:0
ERROR: VIDIOCMCAPTURE
ERROR: VIDIOCSYNC
Segmentation fault
这是终端返回的数据,说明设备是可以打开的,只是获取不了数据
下面是init_video()函数
void init_video(int w,int h,int bpp) /* bpp == bytes per pixel*/
{
int ret;
cam_fd = open( USB_VIDEO, O_RDWR );
if( cam_fd<0 )
printf("Can't open video device\n");
ret = ioctl( cam_fd,VIDIOCGCAP,&cam_cap ); /* 摄像头的基本信息*/
if( ret<0 ) {
printf("Can't get device information: VIDIOCGCAP\n");
}
printf("Device name:%s\nWidth:%d ~ %d\nHeight:%d ~ %d\n",cam_cap.name, cam_cap.maxwidth, cam_cap.minwidth, cam_cap.maxheight, cam_cap.minheight);
if( ioctl(cam_fd,VIDIOCGWIN,&win)<0 ) {
printf("ERROR:VIDIOCGWIN\n");
}
win.x = 0;
win.y = 0;
win.width=w;
win.height=h;
if (ioctl(cam_fd, VIDIOCSWIN, &win) < 0) {
printf("ERROR:VIDIOCSWIN\n");
}
我用的是开发配戴的那个uvc摄像头,这是根据国嵌视屏里的那个H264那个代码做的!他那里用的是网眼2000,
那我用UVC为什么就不行,他们就是读取的数据传输的形式不一样,那也不应该读取不信息呀!
谁能帮一下我呀,谢谢!!