集成网络摄像头未发回图像

集成网络摄像头未发回图像

最后更新:我在没有启动操作系统的情况下运行了一些硬件测试,似乎这是一个纯粹的硬件问题(一些内部连接可能断开了),因此这个问题现在是关闭

每当我启动cheese(或类似程序)时,网络摄像头上的灯就会亮,但没有发回任何图像。

我的硬件是 Dell Inspiron 14-3442,软件是 Kubuntu 20.04

以下是一些命令的输出:

  • lsusb
Bus 001 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 004: ID 8087:07dc Intel Corp. 
Bus 001 Device 003: ID 0c45:670b Microdia 
Bus 001 Device 002: ID 8087:8000 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 24ae:2010 RAPOO Rapoo 2.4G Wireless Device
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

我猜想那0c45:670b是相机,但似乎自 2.x 时代以来内核就已经支持它了。

详细输出 ( lsusb -v)这里

  • dmesg | grep usb

这篇文章有点长,所以我把它贴出来这里

如果需要更多信息,请询问我。

更新 #1 lspci::

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 1 (rev e4)
00:1c.2 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4)
00:1c.4 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 5 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
06:00.0 Network controller: Intel Corporation Wireless 3160 (rev 83)
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller (rev 07)
08:00.0 3D controller: NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev a1)

更新 #2:我搜索了谷歌告诉我的几乎所有驱动程序数据库,没有一个包括我的型号。但这是一台 2018 年的笔记本电脑,不是那么古老,那么为什么我找不到任何事物关于它?

更新 #3:dmesg | grep -i video

[    0.138785] ACPI: Added _OSI(Linux-Dell-Video)
[    0.319659] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[    0.951453] videodev: Linux video capture interface: v2.00
[    1.068811] ACPI: Video Device [PEGP] (multi-head: yes  rom: yes  post: no)
[    1.069045] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:08/LNXVIDEO:00/input/input7
[    1.116118] ACPI: Video Device [GFX0] (multi-head: yes  rom: no  post: no)
[    1.116337] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:01/input/input13
[    6.009940] uvcvideo: Found UVC 1.00 device Integrated_Webcam_HD (0c45:670b)
[    6.064805] usbcore: registered new interface driver uvcvideo
[    6.064806] USB Video Class driver (1.1.1)

答案1

许多设备访问问题可以通过组成员身份变更来解决。

具体来说,如果ls -l 显示组权限(第二个“ rwx”三元组)为“ rw”(例如“ -rw-rw----”),那么将自己添加到拥有该设备的组将授予rw访问权限。

就是这样:

device="/dev/whatever"
sudo adduser $USER $(stat -c "%G" $device)

这允许您成为可以使用该设备的组的成员rw,但还有一个步骤。

要使所有进程成为新组的成员,请注销并登录。组成员资格是按时设置的login

要在新组中创建单个进程(用于测试,在注销/登录之前):

newgrp $(stat -c "%G" $device)  

或者,只需键入组名。请参阅man newgrp

相关内容