2

Я использую Ubuntu на своем ноутбуке, который имеет встроенную веб-камеру. После того, как он сломался (темное изображение, подключайте / отключайте слишком часто), я заменил его на внешний, который работает нормально.

Старая вебкамера, тем не менее, продолжает подключаться и отключаться, и я постоянно получаю уведомления на рабочем столе, и это очень раздражает.

Я не могу остановить уведомления (они приходят из программы, которую я должен использовать для работы, и ее разработчики не помогут)

Я читал об отключении модуля ядра веб-камеры, но это не позволит мне использовать внешнюю веб-камеру, которая мне нужна для работы.Есть ли способ остановить уведомления на аппаратном уровне?

Спасибо!

1 ответ1

2

Нет необходимости действовать физически на встроенной веб-камере, чтобы отключить ее: следующая команда отключает ее,

      echo 0 > /sys/bus/usb/devices/1-1.3/bConfigurationValue

но в этой команде часть 1-1.3 является правильной координатой шины для встроенной веб-камеры в моей системе. Все, что нам нужно сделать, это найти эквивалент 1-1.3 для вашей системы.

Сначала давайте определим координаты шины: в моей системе

      # lsusb -t 
      ...............
      :  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M                                                                                                                                                                                                             
         |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M                                                                                                                                                                                                                    
         |__ Port 2: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M                                                                                                                                                                                                             
         |__ Port 2: Dev 4, If 1, Class=Wireless, Driver=btusb, 12M                                                                                                                                                                                                             
         |__ Port 3: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M                                                                                                                                                                                                            
         |__ Port 3: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M  

только одно устройство идентифицируется как Class = Video ; идентификация в качестве встроенной веб-камеры еще более усиливается драйвером uvcvideo. Это адрес Bus = 1, Device = 3, Function = 0,1.

Теперь давайте перейдем к:

        # cd /sys/bus/usb/devices/; ls 
        1-0:1.0  1-1:1.0  1-1.2:1.0  1-1.3      1-1.3:1.1  2-1      2-1.5      2-1.6      2-1.6:1.1   2-1.6:1.2  2-1.6:1.4  2-1.6:1.6  2-1.6:1.8  3-0:1.0  3-2:1.0  3-3:1.0  3-3:1.2  usb1  usb3                                                                                       
        1-1      1-1.2    1-1.2:1.1  1-1.3:1.0  2-0:1.0    2-1:1.0  2-1.5:1.0  2-1.6:1.0  2-1.6:1.10  2-1.6:1.3  2-1.6:1.5  2-1.6:1.7  2-1.6:1.9  3-2      3-3      3-3:1.1  4-0:1.0  usb2  usb4        

Из этого видно, что у меня есть два Bus Domains, 1 и 2; только у Bus Domain 1, однако, Bus = 1, Device = 3 address, поэтому мы переходим к:

      # cd 1-1.3

Вы можете дважды проверить, что это ваша бортовая камера, сравнив содержимое двух файлов,

      # cat id{Vendor,Product}
       1bcf
       288e

который вы можете сравнить с выводом

      # lsusb 
      ................
      Bus 001 Device 003: ID 1bcf:288e Sunplus Innovation Technology Inc. 

что вы можете легко подтвердить, прибегая к помощи камеры (моя камера!).

Чтобы отключить его, как sudo,

       # echo 0 > bConfigurationValue

Запуск cheese теперь подтвердит, что веб-камера отключена. Чтобы сделать это постоянным, включите строку

        echo 0 > /sys/bus/usb/devices/1-1.3/bConfigurationValue

в файл /etc/rc.local .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .