|
你好,想请教下,基于V4L2实现视频采集显示的程序。6 Z7 c3 h/ { {7 O2 z* z
采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,/ C+ a* h' j1 I" ?- Y
程序可以成功交叉编译,在开发板中运行会出现问题,如下。
, O1 g9 p" t* b* }
3 r+ `5 W5 W X' o) m$ K相关程序为:
+ }. C+ ~. ]2 S9 @/ p1 B6 \
) _- a1 C! \+ k9 fint fd=open(/dev/video0,O_RDWR);//打开设备,返回值0/ x5 [ O+ y3 g- g: e% U1 j
8 g, {! @- v' s0 c( f
……
3 _1 v3 D3 W4 o5 j# R- g. V; S" P% d. [/ f
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
1 @" ?/ j4 F; j5 `9 E7 T3 [
. s8 x: p M$ B" h& P/ G# f/ o1 S B6 ^1 @" |0 e- l
……
3 m% w1 V7 l4 r) L' [% q8 [
, `0 Z' h% H# X! Q7 F0 ^+ S7 X- w9 y* Mioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
% \7 ^ Y' Z' I, }9 @* X
$ {! J) D( A( f0 \! I到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。0 ^+ L6 i) s, b# |5 s( p
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.# g( [3 e( j; F- N# \5 Y* B- O
. A D P" B$ O7 _请问怎么解决,谢谢!8 [& l q! T9 H: e
6 Z+ s7 J# J8 |' r( {" a |
|