我在激活网络摄像头时遇到问题。我有 Surface Pro 6 并运行 Arch 作为操作系统。我认为网络摄像头已被识别,但我无法使用/启用它。
例如,cheese、firefox、Jitsi 和 OBS 无法使用我的网络摄像头。
从其他帖子中学习,我认为这些信息可能是相关的。我的用户是群组视频的一部分。
我确实通过终端获得了启动奶酪的视频。我确实收到错误:
(cheese:1105): cheese-WARNING **: 09:13:26.353: Device '/dev/video11' has no supported format: ../gst-plugins-good/sys/v4l2/gstv4l2object.c(3951): gst_v4l2_object_set_format_full (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin35/GstV4l2Src:v4l2src1:
Call to TRY_FMT failed for NV12 @ 5120x3840: Invalid argument
该命令v4l2-ctl --list-devices
返回以下内容:
ipu3-imgu (PCI:0000:00:05.0):
/dev/media1
Intel IPU3 CIO2 (PCI:0000:00:14.3):
/dev/video0
/dev/video1
/dev/video2
/dev/video3
/dev/media0
ipu3-imgu (PCI:3a stat):
/dev/video8
/dev/video13
ipu3-imgu (PCI:input):
/dev/video4
/dev/video9
ipu3-imgu (PCI:output):
/dev/video6
/dev/video11
ipu3-imgu (PCI:parameters):
/dev/video5
/dev/video10
ipu3-imgu (PCI:viewfinder):
/dev/video7
/dev/video12
ls -l /dev/video*
:
crw-rw----+ 1 root video 81, 0 May 4 19:47 /dev/video0
crw-rw----+ 1 root video 81, 1 May 4 19:47 /dev/video1
crw-rw----+ 1 root video 81, 15 May 4 19:47 /dev/video10
crw-rw----+ 1 root video 81, 16 May 4 19:47 /dev/video11
crw-rw----+ 1 root video 81, 17 May 4 19:47 /dev/video12
crw-rw----+ 1 root video 81, 18 May 4 19:47 /dev/video13
crw-rw----+ 1 root video 81, 2 May 4 19:47 /dev/video2
crw-rw----+ 1 root video 81, 3 May 4 19:47 /dev/video3
crw-rw----+ 1 root video 81, 9 May 4 19:47 /dev/video4
crw-rw----+ 1 root video 81, 10 May 4 19:47 /dev/video5
crw-rw----+ 1 root video 81, 11 May 4 19:47 /dev/video6
crw-rw----+ 1 root video 81, 12 May 4 19:47 /dev/video7
crw-rw----+ 1 root video 81, 13 May 4 19:47 /dev/video8
crw-rw----+ 1 root video 81, 14 May 4 19:47 /dev/video9
我无法发布 dmesg 输出,因此我使用了 grep:
sudo dmesg | grep [vV]ideo
:
[ 0.220785] ACPI: Added _OSI(Linux-Dell-Video)
[ 0.473002] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[ 1.797797] videodev: Linux video capture interface: v2.00
[ 3.286851] ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no)
[ 3.291804] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input24
感谢您的帮助 :-)
答案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
。