|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。" W; J! ~5 ~4 ^& W) M$ A$ {
采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
' N7 N* U' {+ [2 B H; `& f6 ~程序可以成功交叉编译,在开发板中运行会出现问题,如下。
9 W- ?8 k8 S# C( R! F. a: `; m2 |; H; y% o+ Z# g
相关程序为:" {9 o% n9 a) D
2 F9 p7 J' B9 i o8 D& @4 Q
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
* y( n. o' i7 s4 |! { u0 \/ `" S1 Y: S1 p
……
/ e9 `9 n6 p) n; `3 [) Q f! N. T) O' l7 H; f6 z; ~" h
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0; n1 R, ~7 B0 ]3 Y/ B
1 J8 R4 y$ u( a
8 @& Q8 [7 N0 V( h3 p& {. v. j# ]6 s
……
) }6 d5 b/ L) y$ a! \# c; O) E8 F7 a# z- k$ Y" v! _
ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1 a# ^- [1 b! b0 V! ]" _
/ Q2 J. |0 b3 a$ W V& ^
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。8 G" ?7 i( O! s. A
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.2 I' ^; m1 v1 a* O6 N
# }: z! |) g% \$ @* a
请问怎么解决,谢谢!4 {% @4 b( w1 \! _0 S
5 J. ^& N" o9 [! v; ]; |; ^5 W |
|