Опрос


Что для Вас Умный Дом?


Результаты


Реклама


Подключение web-камеры Logitech C250 под Linux

11/08/2010 22:26:47

Logitech C250Спустя почти два года использования Genius I-Look 111 для наблюдения за котельной, я решил поменять эту Web-камеру на более современную Logitech Webcam C250. На момент покупки (август 2010) камера стоила порядка 950 руб. Подключение к Linux'у на первый взгляд прошло без каких-либо приключений. Система сразу же "нашла" камеру и создала устройство /dev/video1

Качество картинки значительно превосходит Genius I-Look 111. Несмотря на скромный VGA сенсор с разрешением 640х480, изображение с камеры достаточно четкое, чистое, резкое, с относительно хорошей цветопередачей. Кроме того, камера Logitech C250 намного лучше "видит" при низком освещении. В связи с этим могу только порекомендовать использовать линейку продуктов от Logitech не только для видеонаблюдения, но и для видеоконференций.

Однако и здесь не обошлось без сюрпризов. После перезагрузки компьютера оказалось, что камера захватила устройство /dev/video0, а основная камера наблюдения довольствовалась /dev/video1. Само по себе это нестрашно, но не очень удобно. Дело в том, что ZoneMinder настраивается на конкретные устройства. И если плата захвата на чипе BT878 стоит в компьютере всегда, то USB веб-камеру иногда требуется отключить. В этом случае BT848 будет иметь адрес то /dev/video1, то /dev/video0, как система автоматически назначит. Можно ли изменить такое положение вещей? Можно!

Как назначить нужное устройство камере наблюдения

Для этого необходимо отредактировать файл /etc/udev/rules.d/50-udev.rules и прописать примерно следующее:

KERNEL=="video[0-9]", ATTR{name}=="BT878 video ( *** UNKNOWN/GENER", NAME="video0"
KERNEL=="video[0-9]", ATTR{name}=="UVC Camera (046d:0804)", NAME="video1"

Значение ATTR{name} в конкретном случае можно посмотреть командой

udevadm info --name=/dev/video0 --attribute-walk

После изменения правил udev, требуется перезагрузка компьютера.

Но и это еще не все... Камера Logitech C250 имеет встроенный микрофон. В связи с этим аналогичная проблема возникает и с устройствами /dev/audio и /dev/audio1. Микрофон камеры становится устройством по умолчанию.
Эта проблема решается несколько иначе. Необходимо отредактировать файл /etc/modprobe.d/alsa-base и добавить строчку

options snd-usb-audio index=-2

Эта опция предотвратит захват драйвером нулевого индекса устройства.

Мне показалось расточительным иметь встроенный в камеру микрофон и никак не использовать его. Поэтому я подключил устройство /dev/dsp1 к серверу потокового аудио, чтобы иметь возможность не только видеть, что происходит в котельной, но и слышать.

Автор: Andrey_B
Любое использование материалов сайта возможно только с разрешения автора и с обязательным указанием источника.



Добавить комментарий:



Сортировка комментариев: Последние сверху | Первые сверху

2014-12-14 14:09:25 | Andrey_B
Роман, в данный момент Debian 7 (wheezy)


2014-12-14 13:10:42 | Роман
Спасибо огромное! Попытаюсь настроить.


2014-12-14 12:21:05 | Роман
Приветствую! Скажите пожалуйста, какая версия дистрибутива Linux, у вас задействована в видеонаблюдении?


2011-04-03 22:45:31 | Andrey_B
Спасибо, gtsx4444, HAMA - популярные камеры. Думаю, многие столкнуться с аналогичными проблемами в Linux. Для них эта информация будет полезной.


2011-04-03 16:58:12 | gtsx4444
А вот веб-камеру HAMA AC-150 так просто не поставишь. При подключении устройство опознается как ID 0c45:6142 Microdia. Под него есть драйвера GSPCA (субдрайвер sonixj), но в версии Debian которую я недавно скачал и поставил, с ядром 2.6.32-5-686 -- их не оказалось. Список поддерживаемых веб-камер можно посмотреть по адресу www.linuxtv.org/wiki/index.php/Gspca
Приходится скачивать и устанавливать вручную, делается это так:
apt-get install mercurial build-essential linux-headers-2.6.32-5-686 libncurses5-dev v4l2ucp
[2.6.32-5-686] -- серия ядра, узнать можно командой: uname -r
после установки можно подключиться к репозиторию:
hg clone /linuxtv.org/hg/v4l-dvb/
это удобнее делать из домашней директории.
далее: make
make install
перезагрузка и веб-камера должна определиться как /dev/video0 или 1.
Если что-то не так, надо смотреть логи..
Дальше запускаем любую программу: cheese, camorama ...
С камерой HAMA запустился только Cheese, как оказалось драйвер поддерживает разрешение 640х480, а если программа пытается запросить 320х240 то ничего не происходит. Поэтому camorama запускается с параметрами --width=640 --height=480
Для настройки параметров камеры используется: v4l2ucp

Надеюсь кому-то будет полезно.