|
你好,想请教下,基于V4L2实现视频采集显示的程序。
6 i+ M4 p* G) t- @' X W; ?* p# ~* Z) s采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
' t! a, W9 P# J+ @3 z5 l" N程序可以成功交叉编译,在开发板中运行会出现问题,如下。
: _' ]+ J: Z1 k' E0 n* ^& f Q5 K/ E& Q
相关程序为:
4 I# p( m: k9 U1 V6 n# b
$ G* w/ j. J0 o. S& y, lint fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
( z# [+ ]3 q U, s8 x& h7 _' p
4 j& P8 P# x. z( W3 p8 v……9 f7 Q: `# U; c# j! p3 `* T+ w+ s
) f0 q0 H5 e9 ]* q% d
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0. M/ {# o# \- D; ~+ e. ]$ ]$ K, b
( u i4 E, B# B! ]
7 d b2 s) \ d/ E. m2 V; s; {( ]; |……8 {4 O4 H' i; L
0 d' p% y' D& A2 u
ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
# ]- K' u* d, P2 F2 u7 V! X
( O) Z. B1 D5 D) \2 U5 t到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。% P2 z [ \, k
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.! h( U: h$ N& [" U7 r
; ~+ [3 ?3 ]4 W; h h请问怎么解决,谢谢!
" k8 {6 d+ L( O* G$ X4 ]+ x! T5 q4 P; ~" O K
|
|