|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。
! ?" W3 M4 y8 ^% @ y4 I采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,0 Y9 S i1 W( A3 C
程序可以成功交叉编译,在开发板中运行会出现问题,如下。
. B. j8 o8 x% K' D2 ]4 @
- o6 x0 j9 S5 y6 j相关程序为:
/ u# A0 f# Z7 i- a- S& \$ z; i, w# _# Y; R# l0 a8 v
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
5 v5 m( x8 o6 ?5 _% V1 E/ `' k% e
+ K% {8 u! _% m1 z……% Q! x: A' A; i1 ?
9 Z6 b* q1 R5 I: I/ h9 Nioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
% y; I9 T' t3 ^ i) i
3 h* c, b2 A, [0 j* y' Z
( Y* n' E8 S- _……
0 M; X/ e$ T. @3 _. K2 }- p1 n
% c1 i5 P E" Z9 J7 R2 \( X5 N, J6 tioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
5 l' ]8 f7 |, p+ v
; r" y$ N# {4 J }2 o n' g到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。$ i' v: c' f: y9 i
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.
/ z/ O. u# A$ ^3 P. T! q% G! ^# Z, v
请问怎么解决,谢谢!
9 X1 \1 X) f" O3 C; m% z6 a3 a! o& X) K
0 |+ W' S! x. O1 a |
|