|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。
7 }. o8 v0 _0 T5 ]+ m& H采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,) a7 I2 X7 ^% {" H
程序可以成功交叉编译,在开发板中运行会出现问题,如下。, |. r1 f- v) U$ v/ l( O6 ^
x& p9 x! x3 n
相关程序为:$ P1 J; b" D, W/ p r, M
& R8 s7 ~% w' i* ^
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
# P& O# `$ N3 `9 m- W2 M
+ c) a8 `* l! G8 p……' M0 o! j( u; T2 a! U# L* Q# u3 \
# i0 g( H7 D# |; g; H- A* sioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值02 @9 g' e/ j1 v( K, \$ \6 J! k9 c
0 C# O8 e* Z, }5 @; W- S' n" ]) _. B
……$ K3 X( c- p+ z' T$ {
$ N( Z1 l2 z4 H$ \7 Tioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
3 {% ]9 S1 ~$ p5 Q& b+ e
! K; s4 O( |- L: |8 u6 y2 m/ E到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。2 m& |% B- F* ~& e
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.
' ]! ^7 A: @' D8 M* S
8 J. i2 F) e. g: c请问怎么解决,谢谢!
7 y: _: A1 ]& ]7 p- L8 _2 x6 H" Z4 h' k! b6 l0 | y% v
|
|