연결된 카메라를 일시적으로만 비활성화하거나 끄십시오.

연결된 카메라를 일시적으로만 비활성화하거나 끄십시오.

웹캠 또는 웹캠을 영구적으로 비활성화하는 방법에 대한 질문에 대한 많은 답변을 보았습니다. 현재는 그렇지 않습니다.

v4l2-ctl 명령이나 다른 수단을 사용하여 v4l2 관리형 웹캠을 일시적으로 비활성화하거나 종료하여 물리적으로 연결하지 않고도 더 이상 /dev/video* 파일 핸들에 매핑되지 않거나 더 이상 전원이 켜지지 않도록 할 수 있습니까? 밖으로?

소프트웨어 개발 시나리오에서 여러 대의 연결된 USB 카메라를 사용해야 한다는 요구 사항이 있는데, 이 경우 연결된 카메라 그룹 간에 유연하게 전환할 수 있는 것이 도움이 되고 매우 활성화되므로 블랙 테이프를 사용하는 것과 같은 답변은 '여기서는 관련이 없습니다. 실제로 연결된 웹캠을 물리적으로 분리하지 않고 비활성화(그런 다음 활성화)하는 방법을 의미합니다. USB 웹캠 장치 또는 다른 장치에 이러한 기능이 있는 경우...

USB/UVC 카메라용 표준 v4l2 드라이버 프레임워크를 사용하는 시스템에서.

답변1

USB 포트에 따라 포트를 비활성화(끄기)할 수 있으며 이로 인해 카메라 연결이 끊어질 수 있습니다.

uhubctl포트의 전원을 껐다가 켜볼 수 있습니다 . 이로 인해 장치가 재설정되고 커널이 이를 다시 감지해야 합니다.

예를 들어 내 컴퓨터에서는 USB 포트 1-2.2를 끄거나 켭니다.

# /usr/sbin/uhubctl -l 1-2 -p 2 -a off  
Current status for hub 1-2 [0bda:5411 Generic 4-Port USB 2.0 Hub, USB 2.10, 4 ports]
  Port 2: 0101 power connect []
Sent power off request
New status for hub 1-2 [0bda:5411 Generic 4-Port USB 2.0 Hub, USB 2.10, 4 ports]
  Port 2: 0000 off

# uhubctl -l 1-2 -p 2 -a on 
Current status for hub 1-2 [0bda:5411 Generic 4-Port USB 2.0 Hub, USB 2.10, 4 ports]
  Port 2: 0000 off
Sent power on request
New status for hub 1-2 [0bda:5411 Generic 4-Port USB 2.0 Hub, USB 2.10, 4 ports]
  Port 2: 0101 power connect []

모든 USB 포트를 이 방식으로 제어할 수 있는 것은 아닙니다.

-l 및 -p에 대한 올바른 값을 계산하려면 dmesg출력을 살펴보는 데 약간의 시행착오가 필요할 수 있습니다.

관련 정보