|
你好,想请教下,基于V4L2实现视频采集显示的程序。
" W/ s4 O8 {& r0 Z/ U采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,
$ z5 w( [$ p6 c程序可以成功交叉编译,在开发板中运行会出现问题,如下。
9 a( A8 }( _; s9 t! @7 f
- f( g: x# D1 v! Z% j6 N相关程序为:
" D! h' {# R& i! h; a: P' Y8 v. {+ I2 R+ O* [- n
int fd=open(/dev/video0,O_RDWR);//打开设备,返回值0
7 y* o) M) G* p# D, S3 e; t0 A0 M! C2 @' M3 \$ h o2 z( M
……
* |& V% V" n9 k: H7 O
9 f6 J/ g* e# Oioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值0
?; a5 @/ W; e z9 X9 N# Z
; M! H8 [. P! `4 E
# G' K& }8 H: l( l1 w+ i……
4 f+ B% W) a' ^, B+ q& d" D; T
6 ]; V. g+ B/ X' A5 _/ ?8 w( ?ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-16 R5 Y& F; R$ x8 p' F! `9 E
7 [6 i7 ]8 P! O4 n. e7 i
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。" w% |$ @, u0 d7 c2 c
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.9 A. ^2 a! ^$ E* E, w. B9 z
4 G" s) u3 j& Y1 c请问怎么解决,谢谢!
) S' g' j* E; U/ {; c, y, V; G+ I/ O# {0 @, B6 K' B$ p
|
|