linux_驱动_camera_架构_V4L2_摄像头驱动2_虚拟驱动vivi的测试

摄像头驱动2_虚拟驱动vivi的测试

             <div id="article_content" class="article_content clearfix" style="height: 2811px; overflow: hidden;">
        <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-211130ba7a.css">
                        <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-211130ba7a.css">
            <div class="htmledit_views" id="content_views">

1、结合应用程序分析涉及到的调用

(1)如怎么得到里面的数据、怎么控制摄像头的亮度等信息。

(2)现在PC机上做实验

在ubuntu上安装一个应用程序的测试程序xawtv

安装xawtv:sudo apt-get install xawtv

apt-get主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。

如果无法上网


(3)下面不能ping通,需要加上路由(设置默认网关命令)


(4)重新安装sudo apt-get install xawtv

出现下面文件无法找到,到这个网站上确实找不到这个文件。我们用的ubuntu9.10


在这个网站创建新的sources.list
http://repogen.simplylinux.ch/
1. 选择国家
2.选择相邻的ubuntu版本
3. 选择"Ubuntu Branches"
4. 生成sources.list
5. 把得到内容替换到/etc/apt/sources.list
6. sudo apt-get update(更新完后就能安装xawtv)
   sudo apt-get install xawtv   (安装xawtv)

2、测试

(1)让虚拟机位于前台,接上USB摄像头。


(2)用dmesg命令查看内核打印信息,执行xawtv


出现以下内容


(3)点击右键出现以下菜单,下面左右移动可以设置亮度,


3、测试虚拟摄像头vivi(需要编译驱动程序)

(1)确实ubuntu的内核版本
执行uname -a命令(uname -a :显示系统名、节点名称、操作系统的发行版号、操作系统版本、运行系统的机器 ID 号)

Linux book-desktop 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 GNU/Linux
(2) 去www.kernel.org下载同版本(相近版本)的内核


   解压后把drivers/media/video目录取出
   修改它的Makefile为:


KERN_DIR = /usr/src/linux-headers-2.6.31-14-generic  //指定内核目录(在PC上的linux内核)


all:
        make -C $(KERN_DIR) M=`pwd` modules 


clean:
        make -C $(KERN_DIR) M=`pwd` modules clean
        rm -rf modules.order


obj-m   += vivi.o  //我们需要编译生成的驱动文件
obj-m   += videobuf-core.o
obj-m   += videobuf-vmalloc.o
obj-m   += v4l2-common.o
   
(3) make


编译出vivi.ko

安装驱动但出现某些问题(有一些函数不知道)


用dmesg命令查看发现一大堆 函数未定义,看看这些函数在哪个文件定义


修改Makefile添加我们需要编译进去的驱动,这些是vivi.c的依赖文件

obj-m   += videobuf-core.o
obj-m   += videobuf-vmalloc.o
obj-m   += v4l2-common.o

安装驱动,查看设备节点,/dev/video是所接的usb摄像头,/dev/vodeo1是vivi.c虚拟出来的设备节点


(4)查看xawtv的使用,默认打开的是/dev/video0,现在要打开/dev/video1,可以用-c参数,后面指定相应的设备。


使用如下 -c指定


(5)安装驱动

 sudo modprobe vivi  
   sudo rmmod vivi
   sudo insmod ./vivi.ko

(5)查看设备节点

 ls /dev/video*
(6)执行命令

xawtv -c /dev/videoX

        <div class="person-messagebox">
            <div class="left-message"><a href="https://blog.csdn.net/qingkongyeyue">
                <img src="https://profile.csdnimg.cn/9/4/3/3_qingkongyeyue" class="avatar_pic" username="qingkongyeyue">
            </a></div>
            <div class="middle-message">
                                    <div class="title"><span class="tit "><a href="https://blog.csdn.net/qingkongyeyue" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;,&quot;ab&quot;:&quot;new&quot;}" target="_blank">qingkongyeyue</a></span>
                    <!-- 等级,level -->
                                            <img class="identity-icon" src="https://csdnimg.cn/identity/blog7.png">                                            </div>
                <div class="text"><span>原创文章 258</span><span>获赞 225</span><span>访问量 133万+</span></div>
            </div>
                            <div class="right-message">
                                        <a class="btn btn-sm attented bt-button personal-watch" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;,&quot;ab&quot;:&quot;new&quot;}">已关注</a>
                                                            <a href="https://bbs.csdn.net/topics/395529044" target="_blank" class="btn btn-sm bt-button personal-messageboard">他的留言板
                    </a>
                                </div>
                        </div>
                    
    </div>
</article>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值