- 0
- 0
- 约 5页
- 2016-09-09 发布于重庆
- 举报
一个比较详细的Linux摄像头图像采集讲解
这一部分将会介绍如何在linux中对电视卡编程。
开始已经提到过,电视卡使用的是video for linux驱动,简称v4l,实际上,现在已经有了video for linux two驱动 ,即v4l2.它解决了v4l中存在的一些问题,并且提高了硬件性能。但是,目前来说,v4l2仍然没有集成到linux的内核中,要使用v4l2的话,只有去下载v4l2补丁了,以下如无特别说明,所涉及的内容只针对v4l设备而言。
我们都知道,在linux中,为了屏蔽用户对设备访问的复杂性,采用了设备文件,即可以通过像访问普通文件一样的方式来对设备进行访问读写。电视卡在linux中和打印机,鼠标一样,属于字符设备。其主设备号是81,在实际操作上,访问控制电视卡也和一般的设备文件没有什么不同。用open打开设备, int fd; fd = open(/dev/video0,O_RDWR);用一系列的ioctl发命令控制设备。v4l支持的ioctl命令大概有二十几个,为了尽快的编出一个简单的图象捕捉程序,让我们先来看看几个主要的命令:1. ioctl(fd,VIDIOCGCAP,cap);
该命令主要是为了获取电视卡的功能信息。例如电视卡的名称,类型,channel等。参数cap是一个结构,当ioctl命令返回时,结构的各成员就被赋值了,结构体的定义为:struct video_capability{ char name[32]; int type; int channels; /* Num channels */ int audios; /* Num audio devices */ int maxwidth; /* Supported width */ int maxheight; /* And height */ int minwidth; /* Supported width */ int minheight; /* And height */};channel 指的是有几个信号输入源,例如television,composite,s-video等。2.ioctl(fd,VIDIOCGCHAN,vc)3.ioctl(fd,VIDIOCSCHAN.vc)这两个命令用来取得和设置电视卡的channel信息,例如使用那个输入源,制式等。vc 是一个video_channel结构,其定义为:struct video_capability{ char name[32]; int type; int channels; /* Num channels */ int audios; /* Num audio devices */ int maxwidth; /* Supported width */ int maxheight; /* And height */ int minwidth; /* Supported width */ int minheight; /* And height */};struct video_channel{ int channel; char name[32]; int tuners;//number of tuners for this input __u32 flags; __u16 type; __u16 norm; };成员channel代表输入源,通常,0: television 1:composite1 2:s-videoname 表示该输入源的名称。norm 表示制式,通常,0:pal 1:ntsc 2:secam 3:auto4. ioctl(fd,VIDIOCGMBUF,*mbuf)获得电视卡缓存的信息,参数mbuf是video_mbuf结构。其定义如下:struct video_mbuf{ int size; /* Total memory to map
您可能关注的文档
- W-03危险废弃物的管理规定.doc
- WDW-50微机控制电子万能试验机.doc
- WHO研究结论--VB2缺乏增加致癌风险.doc
- WIN7主题包里的图片更改方法.doc
- WIN7黑屏,fwpkclntsys损坏的解决办法.doc
- word去水印教程无需财富值.doc
- Word文档中压缩图片的方法.doc
- word表格公式使用方法.doc
- WPF第九章集合数据源.doc
- WTO与中国第1阶段测试题1a.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)