首页 > 其他分享 >usb免驱动摄像头实验

usb免驱动摄像头实验

时间:2023-02-23 15:01:54浏览次数:31  
标签:Kernel usb kmod Support modules 驱动 摄像头 USB

1、编译openwrt系统内核使它支持usb,进入在/openwrt/trunk上执行make menuconfig

2、
1). 添加USB 相关支持
Kernel modules —> USB Support —> <*> kmod-usb-core. ##默认已经选了
Kernel modules —> USB Support —> <*> kmod-usb-ohci. ## usb1.0
Kernel modules —> USB Support —> <*> kmod-usb-uhci. ## usb1.1
Kernel modules —> USB Support —> <*> kmod-usb-storage.
Kernel modules —> USB Support —> <*> kmod-usb-storage-extras.
Kernel modules —> USB Support —> <*> kmod-usb2. ##默认已经选了 usb2.0

2). 添加SCSI支持
Kernel modules —> Block Devices —> <*>kmod-scsi-core ##默认已选


3). 添加USB 挂载
Base system —> <*>block-mount

4). 添加自动挂载工具
Utilities —> Filesystem —> <*> badblocks

5). 添加文件系统支持
Kernel modules —> Filesystems —> <*> kmod-fs-ext4 (移动硬盘EXT4格式选择)
Kernel modules —> Filesystems —> <*> kmod-fs-vfat(FAT16 / FAT32 格式 选择)
Kernel modules —> Filesystems —> <*> kmod-fs-ntfs (NTFS 格式 选择)

6). 添加UTF8 编码,CP437编码,ISO8859-1编码
Kernel modules —> Native Language Support —> <*> kmod-nls-cp437
Kernel modules —> Native Language Support —> <*> kmod-nls-iso8859-1
Kernel modules —> Native Language Support —> <*> kmod-nls-utf8
Utilities ---> <*> usbutils................................... USB devices listing utilities

3、保存退出 ,接着,在/openwrt/trunk上执行make kernel_menuconfig ( 注意不是menuconfig )
配置支持nls-cp936
File systems ---> {M} Native language support --->
<M> Codepage 437 (United States, Canada)
<M> Simplified Chinese charset (CP936, GB2312)
保存退出

4、配置openwrt支持usb摄像头
要支持摄像头,就必须配置上摄像头的驱动,因为是免驱的 USB 摄像头,因此我们必 须配置上 UVC 驱动,具体如图所示。
进入在/openwrt/trunk上执行make menuconfig
Kernel modules -->video Support -->kmod-video-core 按y键选中 -->kmod-video-uvc按y键选中

5、配置OpenWrt支持mipg-streamer软件
mipg-streamer 就是一款用于视频数据采集、视频数据格式转换、视频数据传输的软 件,服务器。因此为了让 openwrt 系统支持该软件,我们需要将它配置进去:
Multimedia --> mjpg-streamer 选中 openwrt 系统支持无线监控,按前面的方法配置好后,保存退出。

6、然后重新启动系统,连接网线,确认能上网。进入在/openwrt/trunk上执行make V=99

7、编译出固件把它烧录进开发板,烧录进去再reboot重启下开发板,然后才接上usb摄像头

8、执行mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so -w www"
其中: -i 表示指定输入,这里输入为:input_uvc.so即uvc(usb video),-d是设备 位置,我们摄像头的设备位置在:/dev/video0,
-y用于区分一般摄像头和支持MJPEG的 摄像头, -o指定输出,这里输出到 output_ http.so即http(可以理解为输出到网页上), -w 指定web服务器为www。

注:修改分辨率如:
mjpg_streamer -i "input_uvc.so -r 800*600 -d /dev/video0" -o "output_http.so 8080 -w www" //此时分辨率为800*600

9、 安装手机摄像头软件,连上开发板的地址及端口号,或者在火狐浏览器上 http://192.168.10.1:8080/?action=stream
其中192.168.10.1是开发板的 ip地址,8080是http tcp的端口,。action 表示某个动作,这里表示:stream。通过这个输入我们就可以从网页完成视频的监控了!

标签:Kernel,usb,kmod,Support,modules,驱动,摄像头,USB
From: https://www.cnblogs.com/kn-zheng/p/17147954.html

相关文章

  • 汽车灯IC 宽电压5-150V 8A 降压恒流驱动IC
    AP2400是一款PWM工作模式,高效率、外围简单、外驱功率管,适用于5-100V输入的高精度降压LED恒流驱动芯片。外驱MOS,输出电流可达6A。AP2400可实现三段功能切换,通......
  • 字符设备驱动程序按键驱动---中断方式
    中断函数:包含#include<linux/irq.h>request_irq(irq,handle,irqflag,name,dev_id){  1,分配一个irqaction结构体  2、把这个结构体放到irq_desc[irq](action链......
  • 字符设备驱动程序--LED驱动
    编写驱动程序需要编写那些代码:1、硬件相关的驱动程序2、Makefile的编译程序3、还需要编写一个相关的测试程序比如说:一个摄像头驱动程序1、驱动程序的编写,需要编写一些......
  • 字符设备驱动程序之同步互斥阻塞
    1.原子操作原子操作指的是在执行过程中不会被别的代码路径所中断的操作。常用原子操作函数举例:atomic_tv=ATOMIC_INIT(0);//定义原子变量v并初始化为0atomic_read(ato......
  • 字符设备驱动程序之异步通知
    异步通知:   驱动程序的所谓异步通知,就是说并不是应用程序来对驱动程序操作的,而是驱动程序查询到有事件发生或者有数据发生变化的时候通知应用程序。角色发生了变化,......
  • Net Core 3.1 ONVIF 操控海康摄像头
    先给出实现的代码https://github.com/lu1770/onvif-client.git这里实现了设备发现,登录,获得码流列表,获得画面rtsp,vlc播放,云台上下左右控制,放大缩小安装nuget包......
  • lInux驱动移植-SPI总线设备驱动
    参考文章:[1] SPISubsystem-1-(Basic)[2] SPISubsystem-2-(Driver)[3] Linux·SPI驱动分析和实例 [4][5][6]......
  • ffmpeg+ffserver实现摄像头直播
    1.首先,下载ffmpeg的源码,编译先./configure--disableyasm--prefix=/usr/local/ffmpeg然后make跟makeinstall 2.修改环境变量修改/etc/profile文件,在最后......
  • Python爬虫常用:谷歌浏览器驱动——Chromedriver 插件安装教程
    我们在做爬虫的时候经常要使用谷歌浏览器驱动,今天分享下这个Chromedriver插件的安装方法。第一步、打开谷歌浏览器打开设置面板第二步、查看当前谷歌浏览器版本号第三步、......
  • 用户手册:接入设备之接入Hikvision摄像头
    获取模板在​​examples/rtspDeviceShifu​​中查看模板文件。修改配置在​​examples/rtspDeviceShifu/camera-deployment/deviceshifu-camera-deployment.yaml​​中:spec......