Los navegadores no pueden detectar mi cámara web pero funciona en queso

Los navegadores no pueden detectar mi cámara web pero funciona en queso

De repente, mi cámara web dejó de funcionar en mis navegadores aunque funciona si ejecuto la cheeseaplicación en la terminal. lo estoy probando coneste sitio web(y muchos otros) en Google Chrome (modo incógnito y Firefox) y recibo este mensaje de error:

NotFoundError: dispositivo solicitado no encontrado; Objeto

lsusbda:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0bda:57f2 Realtek Semiconductor Corp. HD WebCam
Bus 001 Device 003: ID 04ca:3015 Lite-On Technology Corp. Qualcomm Atheros QCA9377 Bluetooth
Bus 001 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Si uso una cámara web externa, esto todavía no se detecta. Intenté reinstalar Chrome, cambiar de usuario y reiniciar mi máquina, pero todavía no funciona. El micrófono, en cambio, se detecta correctamente.

Información de mi sistema:

Distributor ID: Ubuntu
Description:    Ubuntu 21.10
Release:        21.10
Codename:       impish
Kernel:         5.13.0-23-generic

ls -l /dev/video*huellas dactilares

crw-rw----+ 1 root video 81, 0 gen  6 18:06 /dev/video0
crw-rw----+ 1 root video 81, 1 gen  6 18:06 /dev/video1

groups $USERhuellas dactilares

alex : alex adm cdrom sudo dip video plugdev lpadmin lxd sambashare

bash ./pathlld /dev/video*huellas dactilares

drwxr-xr-x 21 root root 4096 gen  6 12:46 /
/dev/sdb2 on / type ext4 (rw,relatime,errors=remount-ro)
drwxr-xr-x 22 root root 4960 gen  6 19:14 /dev
udev on /dev type devtmpfs (rw,nosuid,relatime,size=6036388k,nr_inodes=1509097,mode=755,inode64)
crw-rw----+ 1 root video 81, 0 gen  6 19:12 /dev/video0
drwxr-xr-x 21 root root 4096 gen  6 12:46 /
/dev/sdb2 on / type ext4 (rw,relatime,errors=remount-ro)
drwxr-xr-x 22 root root 4960 gen  6 19:14 /dev
udev on /dev type devtmpfs (rw,nosuid,relatime,size=6036388k,nr_inodes=1509097,mode=755,inode64)
crw-rw----+ 1 root video 81, 1 gen  6 19:12 /dev/video1

getfacl /dev/video*huellas dactilares

getfacl: Removing leading '/' from absolute path names
# file: dev/video0
# owner: root
# group: video
user::rw-
user:alex:rw-
group::rw-
mask::rw-
other::---

# file: dev/video1
# owner: root
# group: video
user::rw-
user:alex:rw-
group::rw-
mask::rw-
other::---

Respuesta1

Muchos problemas de acceso a dispositivos se pueden resolver mediante cambios de membresía en el grupo.

Puede encontrar el nombre del dispositivo observando sudo journalctl --followmientras conecta su dispositivo. O ls -1 /dev >dev.beforeconecte el dispositivo y espere 10 segundos ls -1 /dev >dev.after;diff dev.{before,after}. Probablemente tu cámara sea /dev/video.

Específicamente, si ls -l muestra que los permisos del grupo (el segundo " rwx" triplete) son " rw" (por ejemplo, " -rw-rw----"), entonces, agregarse al grupo propietario del dispositivo otorgará rwacceso.

Así es cómo:

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

Esto le permite ser miembro del grupo que puede controlar rwel dispositivo,pero hay un paso más.

Para que todos sus procesos sean miembros del nuevo grupo, cierre sesión e inicie sesión. Las membresías grupales se configuran en el loginmomento.

Para crear un proceso único en el nuevo grupo (para probar, antes de cerrar sesión/iniciar sesión):

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

o simplemente escriba el nombre del grupo. Ver man newgrp.

información relacionada