|
你好,想请教下,基于V4L2实现视频采集显示的程序。
: } I) A! P+ w采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
$ {! s( \4 m6 h. k3 q程序可以成功交叉编译,在开发板中运行会出现问题,如下。' N6 k5 ], L X3 v8 y
, J, }4 _3 N! @' M8 q S- M
相关程序为:
. L, {3 D6 N6 i. ?, }9 u
+ T/ x$ m7 ~) P% ^; {8 ]int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0/ U' T. d3 q: L1 v+ v4 S" ^# ]
( p) m( p6 |* y……
/ [; K/ }6 q. C- i* ^8 {& N. x# v$ @- F2 e9 q) Z
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值00 C; X1 [: @8 T* u5 f
& \' `) h6 |9 o o
" O1 I$ @$ @4 ~/ z v9 G……
% o" }/ _- b& @5 |3 S* B/ { u- e; K! ^ H
ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
" b6 }9 U3 s# I8 X: V& S2 _0 o' c C& q
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。1 S8 A3 B# B5 s$ U" T4 o; k
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.# Z( V4 z- ]' @3 |3 }/ }- D
. A: h2 V. q& U' b# \) v8 M
请问怎么解决,谢谢!, c8 e7 X1 L5 }9 w+ }
( Y q$ f% P# }4 @5 R) C- G7 x |
|