前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ubuntu打开usb摄像头

ubuntu打开usb摄像头

作者头像
Gnep@97
发布2023-08-10 11:05:41
1.2K0
发布2023-08-10 11:05:41
举报

前言

记录一下解决在 Linux 下打开 usb 摄像头界面黑屏的问题。

一、识别 usb 摄像头

1、保持在 ubuntu 界面,插上 usb 摄像头,将 usb 摄像头连接到虚拟机上。

在这里插入图片描述
在这里插入图片描述

2、使用 dmesg 命令可以看到设备接入时的打印信息

代码语言:javascript
复制
Gnep@lpvm:~$ sudo dmesg
[168141.518252] usb 1-1: new high-speed USB device number 9 using ehci-pci
[168141.868678] usb 1-1: New USB device found, idVendor=1e4e, idProduct=0110, bcdDevice= 1.01
[168141.868688] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[168141.868693] usb 1-1: Product: USB2.0 Camera
[168141.868699] usb 1-1: Manufacturer: Etron Technology, Inc.
[168141.881822] usb 1-1: Found UVC 1.00 device USB2.0 Camera (1e4e:0110)
[168141.915224] input: USB2.0 Camera: USB2.0 Camera as /devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/input/input12

可以看到我们刚接入的摄像头它的 VID:PID 是 1e4e:0110,这里的 ID 号可以在 UVC 官方的文档中进一步确定是否被支持。绿勾代表支持。 注:UVC(USB Video Class),即:USB 视频类,是一种为 USB 视频捕获设备定义的协议标准。是 Microsoft 与另外几家设备厂商联合推出的为 USB 视频捕获设备定义的协议标准,已成为 USB org 标准之一。

在这里插入图片描述
在这里插入图片描述

翻了一下,发现没有我目前这个摄像头的 ID 号。

在这里插入图片描述
在这里插入图片描述

翻看了一下所支持的设备,这里有一条这样的提示:下表列出了已知的 UVC 设备,其他符合 UVC 标准的视频输入设备很可能得到支持了,如果您的 UVC 设备未在下面列出,请向 Linux 媒体开发邮件列表报告。

实际上我这个 usb 摄像头是支持 UVC 的,可以在 linux 系统下通过下面的方式查看:

代码语言:javascript
复制
Gnep@lpvm:~$ lsusb -d 1e4e:0110 -v | grep "14 Video"
Couldn't open device, some information will be missing
      bFunctionClass         14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video
      bInterfaceClass        14 Video

如果该摄像头兼容 UVC,则会输出上面类似的信息,若无以上信息,则是 non-UVC 设备。

3、使用下面命令查看设备节点

代码语言:javascript
复制
ls /dev/video*
代码语言:javascript
复制
Gnep@lpvm:~$ ls /dev/video*
/dev/video0  /dev/video1

这里 video0 是笔记本自带的摄像头的设备节点,video1 才是我们刚接入的 usb 摄像头。

二、安装应用程序显示摄像头捕捉到的视频

1、使用应用程序茄子(cheese)

代码语言:javascript
复制
sudo apt-get install cheese
在这里插入图片描述
在这里插入图片描述

2、运行 cheese 捕捉视频

输入 cheese 命令捕捉视频。

在这里插入图片描述
在这里插入图片描述

cheese 命令显示黑屏了

解决方法: ①、查看虚拟机是否已经连接上了摄像头,虚拟机 -> 可移动设备 -> Cubeternet USB2.0 Camera,显示断开连接(连接主机)(D)则虚拟机已连接上摄像头。

在这里插入图片描述
在这里插入图片描述

②、修改 video1 的权限,如果 /dev/video1 已经是 777 权限则不用修改。

在这里插入图片描述
在这里插入图片描述

③、确认是否有 webCam,没有则安装 webCam。

在这里插入图片描述
在这里插入图片描述

④、如果以上操作都确认完成以后还是打不开摄像头,如果 USB 兼容性默认为 USB 2.0 则换成 USB 3.1。

在这里插入图片描述
在这里插入图片描述

重新插拔设备。 再次输入 cheese,查看结果。

在这里插入图片描述
在这里插入图片描述

现在可以正常显示了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-07-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一、识别 usb 摄像头
  • 二、安装应用程序显示摄像头捕捉到的视频
    • 1、使用应用程序茄子(cheese)
      • 2、运行 cheese 捕捉视频
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档