|
你好,想请教下,基于V4L2实现视频采集显示的程序。, D6 u3 E! y$ G$ F3 K
采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,3 P, z# v& ~1 t% O! H, k7 S( e
程序可以成功交叉编译,在开发板中运行会出现问题,如下。
6 _1 f; ?4 Q! u: l1 @" k# t" R$ X3 l
相关程序为:* y: _/ F# }# i0 Q3 j' y
+ ] q, `* S, Z5 Yint fd=open(/dev/video0,O_RDWR);//打开设备,返回值02 F8 k0 A. D) T$ D$ I
; u" E5 F( E% V3 P6 v9 ^……! u0 a6 B4 o5 C3 c! ^
% X, k6 \) U1 aioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
( B0 f- P' a" w- n
( {6 _; p7 d# P1 \( b& a3 j: H& p g6 z7 f) f: B% ^+ v x$ G( y% ^
……
. D: b% p6 c# o* d3 |7 O# i
5 W* }( V9 f3 Y8 o: a" Qioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1% o1 c2 c5 y# k7 U, Z) s8 ?$ a* }
* v$ }6 |2 m8 o, z
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。2 Q- w3 k0 k8 `9 W7 [
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.# j9 u4 e; G* k3 ?
3 g0 ^5 K3 ?6 K4 P: M; G
请问怎么解决,谢谢!5 }* ^$ _# a, V3 J
% K# e( D* w; ~4 c. m |
|