|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。
7 f# w5 ]6 p7 b/ Y# _采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
3 E) O' Q- u1 f& d9 U! _" n程序可以成功交叉编译,在开发板中运行会出现问题,如下。: r- n" L: G0 K6 F3 ~& V6 R* k
" w2 `1 y5 j6 L+ M( F$ E+ ~相关程序为:% ]* [( w5 ~5 V+ t7 H" E
$ O x7 k6 c7 m/ }
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
0 k* Q) J' g8 v' K! F! V
, ^( x: w" b6 [6 {% n……7 w5 T6 H7 n- O" \
8 z [+ L8 [/ Z6 @3 {
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
) K. h5 p: H/ ~1 F
- N7 }& _- D0 D; I0 ]" y& p9 R) ?1 V5 m# O- K5 R! c3 e
……
! q( f" y5 h) P- Z& `8 q1 C! s& o% H" a+ q9 f# ?$ a
ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1: c7 S3 x/ ^3 x" J8 J
/ s6 d- n& ^( W% T/ [/ k
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。
* K) d. z* n2 P% v/ [! U; U使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.& a0 E' |+ q4 t+ Y( r
3 _6 S. S6 [/ }. m+ F, W3 T/ I2 s
请问怎么解决,谢谢!
0 B% g& S, q/ Q
9 i1 s( f2 N& V" W2 g' @5 m |
|