大家好!今天编译了一个程序出现了一个问题!特向大 家请教!错误是: iquan@ubuntu:/media/study/通信程序/test2$ gcc v4l_test.c -o v4l_test weiquan@ubuntu:/media/study/通信程序/test2$ ./v4l_test v4l_get_channels:: Invalid argument device_init:failed...: Invalid argument
程序有v4l.h,v4l.c,v4l_test.c. 相信大家都有v4l.h,v4l.c,所以下面就给出v4l_test.c的程序.请大家不吝赐教,先谢谢啦! //de_south send me!09.9.15 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include "v4l.h" #include "v4l.c" #define norm VIDEO_MODE_NTSC #define DEFAULT_FILE_NAME "/mnt/cap.jpeg" //抓图后图片的存放位置,自己定义即可
/*typedef struct _v4l_struct v4l_device;*/ v4l_device vd; int device_init(char *dev) { if(dev==NULL) { dev="/dev/video0"; } if(v4l_open(dev,&vd)) return -1; printf("the pointer is key!"); if(v4l_get_channels(&vd)) return -1; printf("%s: initialization ok... %s\n" "%d: channels \n" "%d: audios\n\n", dev,vd.capability.name,vd.capability.channels,vd.capability.audios); v4l_close(&vd); return 0; }
int main() { if(device_init("/dev/video0")==-1) { perror("device_init:failed..."); exit(1); }else{printf("ok!\n");} exit(0); } //正常编译,执行结果: //v4l_get_channel:: Invalid argument //device_init:failed...: Invalid argument
//注释了:if(v4l_get_channels(&vd)) return -1; 后的执行结果: // /dev/video0: initialization ok... CNF7237&CNF7238 // 1: channels // 0: audios
// ok!
|