|
你好,想请教下,基于V4L2实现视频采集显示的程序。
: v. {! h8 ~( @0 p% A采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,0 J% G6 h" v: D4 {; I% t ~' X
程序可以成功交叉编译,在开发板中运行会出现问题,如下。$ P4 L( m$ u# v7 h1 }4 i$ e
& k7 {& I8 }3 e6 g相关程序为:# [; e: h7 o6 ]1 B
; A. m6 g( X! l1 }1 [int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0& Q6 y& P0 \" g+ U0 t u
5 E9 ~9 D" I: l$ [/ m5 X……# ~/ x+ A& Q \* f1 W; s
( [6 S! [1 o% H; T* J
ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0, E* n+ ^# A" c, `; h
( Z6 T. Y: G4 [/ _8 s; e( d+ [ {) ?
: `2 ~0 V# L/ h& [8 K
……+ m" v( J8 [! ^0 c9 o7 X
1 Y' i8 F/ ^* {% X% a/ @ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
# r4 M Q+ | Z" R& `3 c" @# ?6 b5 M% M) L" ? w
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。
# `. H$ L- O$ p! n \; P$ V/ I使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.
7 y4 F2 o- d r# {* q: u- D/ M. S# ^# D6 D m2 _
请问怎么解决,谢谢!
; }; B D+ f) }( O* G- b+ X$ s+ w+ Q
|
|