usb免驱动之UVC

  在买一些usb设备的时候,很多商家都有标出“免驱动,即插即用”的字样,大家都知道有一些usb设备,如鼠标等,只要插上不用安装驱动就可以用了,但是有的就需要安装驱动之后才可以用,这是为什么呢?因为一种协议标准-------UVC

  

图片为网上引用

  UVC,全称是USB video class或者USB video device class。它是几家设备厂商联合推出的USB视频捕获设备定义的协议标准,目前已成为USB标准之一,目前的主流操作系统都已提供UVC设备驱动,如:windows xp sp2、linux 2.4.6、macos10.5,这些系统及之后的版本。所以在这些操作系统上并支持UVC协议的设备,不用安装驱动就可以使用。

  这几天在网上买了一个免驱动的摄像头,想要用在android5.1上,在买之前还看了一下这个系统是否支持UVC协议,发现是可以的,但是买回来后,悲催了,插上后完全没有反应,明明支持UVC协议,可是为什么不能用呢,于是各种找原因。

  首先,要做的第一件事就是,这个摄像头是不是好的,在windows上装了一个相机,然后连上摄像头,试了一下可以出图像,说明摄像头没有问题。

  另一种验证摄像头是否满足UVC协议的方法,那就是通过命令查看,接上ubuntu系统的电脑:

  adb root

        adb shell

  进入设备后执行:

  cat /sys/kernel/debug/usb/devices

  可以看到下面的内容:

  

  看到Product=USB 2.0 PC Camera就说明摄像头已经枚举成功了。

  接着执行:

  lsusb -d 058f:0362 -v | grep "14 Video"

     其中Vendor=058f, ProdID=0362, "14 Video"代表UVC规范,如果看到下面内容,说明摄像头遵循UVC协议,

  

  那接下来,再次确认自己的操作系统是否支持UVC协议。

  在kernel/arm64/configs/下面的msm_defconfig和msm-perf_defconfig里面查看是否有下面的宏,并进行了如下定义,这些宏用来配置打开UVC

  CONFIG_MEDIA_SUPPORT=y

        CONFIG_MEDIA_CAMERA_SUPPORT=y

     CONFIG_VIDEO_DEV=y

  CONFIG_VIDEO_V4L2=y

  CONFIG_VIDEOBUF2_CORE=y

  CONFIG_VIDEOBUF2_MEMOPS=y

  CONFIG_VIDEOBUF2_VMALLOC=y

  CONFIG_MEDIA_USB_SUPPORT=y

  CONFIG_USB_VIDEO_CLASS=y

  这些都有的话,那就说明操作系统支持UVC协议。

  








  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值