|
你好,想请教下,基于V4L2实现视频采集显示的程序。
* q$ p0 j' I* ]; G0 s3 a采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,1 Z/ F- z! i. f6 ~: s- k
程序可以成功交叉编译,在开发板中运行会出现问题,如下。
9 \# q$ v) p K, ]- L5 I, q+ o
$ o( ~% I. T( N& k# T# u" r相关程序为:
1 x$ f2 ~# A% ~/ P% A! S6 b7 [) H' ^
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0& `0 y& E4 u0 l1 K7 y# U/ k K
% ~& n% P2 I2 E) h3 ]0 `
……
- a0 U% h$ p7 Y# \# Q1 q3 w5 l1 e
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
$ e. s, \9 E6 Z$ M6 x; M9 ?- i, T. Z( p9 e
3 Y/ u% W$ e+ C7 c f3 k……
G, t7 S5 x9 ~ _ ?' C
# g8 S( `4 J3 jioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1! ?, E# j1 E2 V, J+ @, u
' ~5 p E R5 ]6 X, W到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。6 `0 G( e7 v# {0 n, L
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.
4 }0 L" k \) p# s! f
' C, a L! X+ {; O1 `请问怎么解决,谢谢!' o% q3 H# P0 L! H2 E$ U. i! r; g& k
' H- v, g, g/ k# h" Q% \
|
|