[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

webcam ожидает определенный порог освещенности, как эго понизить или выключить логику срабатывания



  $ dmesg

  [    1.639437] usb 1-1.4: New USB device found, idVendor=0408, idProduct=2fb1
  [    1.639447] usb 1-1.4: New USB device strings: Mfr=3, Product=2, SerialNumber=0
  [    1.639451] usb 1-1.4: Product: Laptop_Integrated_Webcam_2HDM
  [    1.639455] usb 1-1.4: Manufacturer: CN07CN2C786641270525A00

  [    3.376520] uvcvideo: Found UVC 1.00 device Laptop_Integrated_Webcam_2HDM (0408:2fb1)

  $ lsusb

  Bus 001 Device 003: ID 0408:2fb1 Quanta Computer, Inc.

  bash# modinfo uvcvideo

  description:    USB Video Class driver
  parm:           clock:Video buffers timestamp clock
  parm:           hwtimestamps:Use hardware timestamps (uint)
  parm:           nodrop:Don't drop incomplete frames (uint)
  parm:           quirks:Forced device quirks (uint)
  parm:           trace:Trace level bitmask (uint)
  parm:           timeout:Streaming control requests timeout (uint)

Dell XPS 702 взял б.у, легальную Windows c 7 обновил до 10, хотя Dell не
поддерживает такое обновление. Не заработала только камера и это не лечится
судя по проблемам других пользователей.

В Debian камера работает, но с особенностями.

При слабом освещении - вывод "черный квадрат". Посветив фонариком - появляется
картинка (чуть затемненная в силу слабости комнатного освещения).

В разлоченой прошивке BIOS по этому поводу ничего нету.

Пробовал c различными quirks - без толку:

  modprobe uvcvideo quirks=???

Помогло как советует http://www.ideasonboard.org/uvc/faq/ приложение:

  $ qv4l2

На вкладке "Camera Control" => "Exposure" перевел из авто в мануал и уровень
выдержки поднял на максимум. Настройка пережила выключение.

Далее нашел:

  $ v4l2-ctl --all

Driver Info (not using libv4l2):
	Driver name   : uvcvideo
	Card type     : Laptop_Integrated_Webcam_2HDM
	Bus info      : usb-0000:00:1a.0-1.4
	Driver version: 4.1.3
...
Streaming Parameters Video Capture:
...
         backlight_compensation (int)    : min=0 max=3 step=1 default=3 value=3
                  exposure_auto (menu)   : min=0 max=3 default=3 value=1
              exposure_absolute (int)    : min=2 max=1250 step=1 default=200 value=1250
         exposure_auto_priority (bool)   : default=0 value=1


В общем качество картинки с exposure_auto=3 - класное, но есть проблема.
Значения 0 и 2 не работают:

  bash# v4l2-ctl --set-ctrl=exposure_auto=2
  VIDIOC_S_EXT_CTRLS: failed: Invalid argument
  Error setting controls: Invalid argument

Не представляю какая будет картинка при свете солнечного дня на задратых вверх
exposure_absolute и exposure_auto=1. Крутить ручку самостоятельно неприятно ((

И не ясно сохраняются ли настройки при изьятии батареи (halt -p пережило),
хотя "v4l2-ctl --set-ctrl" позволит даже в этом случае решить проблему...

В общем нужно считать что с auto не повезло?


http://www.ideasonboard.org/uvc/
  Linux UVC driver and tools
https://www.linuxtv.org/wiki/index.php/UVC_Webcam_Devices
  UVC Webcam Devices
http://www.ideasonboard.org/uvc/faq/
  What are quirks and how do I use them?
http://superuser.com/questions/431759/using-multiple-usb-webcams-in-linux
  Совет запустить v4l2-ctl.
http://blog.erratasec.com/2013/12/how-to-disable-webcam-light-on-windows.html
  How to disable webcam LED light on Windows (как подглядывать без ведома владельца)

================================================================

Проверял в Firefox, тестируя WebRTC (Skype не захотели основываться на WebRTC,
требуют устанавливать плагин с нативным кодом и потому ограничились только
Windows):

  https://pixlcore.com/read/WebcamJS

Также супербыстро проверить можно по:

  $ mplayer tv://

Ну и в qv4l2 есть кнопочка...

-- 
http://defun.work/


Reply to: