我有一台较旧的 System76 galago pro ( galp3
)。直到今天我的网络摄像头还运行良好。
我刚刚将其升级到 22.04(从 20.04 开始)。机器启动正常,显示 3 个用户的登录屏幕。一两秒钟内,网络摄像头活动灯亮起并保持亮着。
Cheese 不起作用,它显示“播放网络摄像头的视频时出现错误”。
一些调试信息:
$ journalctl -b | grep -i bison
Aug 11 16:55:12 compy386 kernel: usb 1-7: Product: BisonCam, NB Pro
Aug 11 16:55:13 compy386 kernel: usb 1-7: Found UVC 1.00 device BisonCam, NB Pro (5986:2112)
Aug 11 16:55:13 compy386 kernel: input: BisonCam, NB Pro: BisonCam, NB as /devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/input/input22
$ lsusb | grep Bison
Bus 001 Device 002: ID 5986:2112 Acer, Inc BisonCam, NB Pro
$ cheese
Aug 11 17:03:40 compy386 cheese[5341]: Device '/dev/video0' is busy: ../sys/v4l2/gstv4l2object.c(4033): gst_v4l2_object_set_format_full (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin18/GstV4l2Src:v4l2src1:
Call to S_FMT failed for MJPG @ 1280x720: Device or resource busy
$ uname -a
Linux foghorn 5.18.10-76051810-generic #202207071639~1657252310~20.04~7d5e891~dev-Ubuntu SMP PREEMPT_DY x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.1 LTS
Release: 22.04
Codename: jammy
有任何想法吗?
答案1
啊,是的motion
!我联系了 System76 支持人员,他们建议使用fuser
如下方法:
$ sudo fuser -v /dev/video*
USER PID ACCESS COMMAND
/dev/video0: motion 7943 F...m motion
motion
我忘了之前还在修修补补。也许升级过程中有些东西被改为motion
自动启动了。
感谢 System76 的 Matt!已修复
sudo systemctl stop motion
sudo apt autoremove --purge motion
现在,网络摄像头活动指示灯通常会熄灭,除非我使用类似的东西cheese
。
请注意lsmod | egrep '^Module|uvcvideo'
,看到有 1 个东西在运行时使用 USB 网络摄像头,而没有运行时则有 0 个东西,这也很有帮助(再次感谢,马特!motion
)cheese
。