|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。9 _8 U( g9 `- ]1 R, b6 h9 |
采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
/ c6 ^( y, j. w3 k0 C, ~程序可以成功交叉编译,在开发板中运行会出现问题,如下。
; l- G+ o, w) T! q0 K9 R" |
6 A- r4 X! E* J2 {; G, C9 e% G: B相关程序为:7 Y' H8 F, [# P( S, B
0 b; r, c' P$ F( l
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
; a; }; V6 ~' r1 f. X9 ?
0 c. y9 b4 v' d/ w% ]; H8 V, w……& q2 O3 @5 u2 E* K* @( B
7 @7 n6 \0 E7 N: y) E) h/ n u& t% Tioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
a' q" T# Y! z. F! ^
1 i+ f( u* y7 Q m5 r) U$ T: R: D! v% c4 j4 W
……4 l R: z$ n+ ]$ A+ S
8 m; Q% |% b1 K6 i, o$ g+ K* I7 \# y
ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1, w* c4 b+ T$ V
' @/ a( ~8 F$ I) R
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。$ C, }) X9 H: a
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.4 o; w J* o9 x! v
" L/ i* h, ]9 n) m- \- C
请问怎么解决,谢谢!( @; Y9 s9 y2 \$ y" L9 P4 K" t
p+ M l0 o/ l0 v- x3 e |
|