|
|
你好,想请教下,基于V4L2实现视频采集显示的程序。4 J% ?& r1 N) g8 T
采用OMAPL138,Linux3.3.0内核,使用的是创龙CMOS摄像头TL2640,: d; [0 y+ U+ M% u' Q* M
程序可以成功交叉编译,在开发板中运行会出现问题,如下。
2 e7 `7 Z1 n1 f% s4 }( Y2 y7 R9 @$ a4 _ F$ T0 A
相关程序为:# K6 @0 R5 V: j" P
, w8 L* T! x M& W9 Tint fd=open(/dev/video0,O_RDWR);//打开设备,返回值01 X! h3 A' W& u" M# `
z2 g. D7 k3 X* @7 X* q5 g
……" U0 d; }5 `1 R" } [9 `
8 j' G0 b* E3 c2 Q5 h3 ~* _ioctl(fd,VIDIOC_QUERYCAP,&cap);//读取设备相关信息,返回值08 q7 X/ H2 h. b" {3 a
/ B5 L$ s5 o8 B
; r( {3 G) O! k. p# I- `
……
/ _5 W4 u% |1 w) J
1 t/ O) B- E% [! ~ioctl(fd,VIDIOC_G_FMT,&fmt);//读取摄像头支持的视频格式,返回值-1
0 I& I) u0 m% Q( n" v; c: j! P b: Y7 o$ z$ w
到这一步就失败了,返回值为-1。包括使用类似控制命令,如VIDIOC_G_STD。5 h0 d" O# k: `* W S) z
使用设置摄像头格式的io控制命令,如VIDIOC_S_STD,VIDIOC_S_FMT,也会返回-1.
2 _5 J* S. Z1 Q8 h; S; b# y1 d q* g0 ^8 G$ m5 X
请问怎么解决,谢谢!' P( I6 q! n4 j" x5 m, ~
; U3 _9 R7 H% @" i- q5 A& ~ |
|