Подключение web-камеры в Linux | Популярный Linux

VSL аватар
Опубликовано VSL в Пт, 22/08/2008 — 18:23

CamEye-320.jpgЭх, долгая это история была, подключение моей web-камеры в Linux. «Неблагодарные» открытому сообществу производители камер ни за что не напишут на красивой коробке будет ли работать их камера в Linux, хотя многие камеры работают прекрасно. Но вот как попасть в яблочко я не знал, потому полез во всемирную паутину собирать разные советы и информацию. Даже пробовал взять камеру у знакомого для эксперемента, не получилось (хотя при настройке она возможно и заработала бы), но тогда я еще не знал как и что делать. Но это я отвлекся. В общем говоря в сети я нашел массу советов и информации, описаний камер, таблиц с описанием поддерживаемых камер и прочей «лабуды» (в хорошем смысле слова). Кстати неплохая статья по web-камерам есть в одном из последних журналов Linux-Format. Но главное, что я извлек из этой кучи информации, это то, что web-камеры, работающие в Linux, делятся на 2 группы.

1. Камеры, которые работают под управлением драйвера GSPCA
2. Камеры с интерфейсом UVC

Первые камеры должны иметь чип, соответствующий определенным и довольно распространенным спецификациям, именно поэтому многие даже дешевые камеры начинают работать из коробки, хотя иногда и требуется определенная подстройка.
Вторые относятся к классу так называемых UVC-камер (USB Video Class). Универсальный интерфейс поддержки камер означает, что камера будет работать с операционной системой без драйвера! Однако не совсем конечно без драйвера. Просто этот стандарт описывает универсальные спецификации поддержки USB-видео устройств и встраивается в операционные системы. Т.е. можно говорить, что универсальный драйвер уже установлен в операционной системе, это подобно тому как современные фотоаппараты можно подключать к компьютерам для снятия снимков и при этом не применять какие-то специальные драйверы. Например в windows эти спецификации были встроены начиная с windows XP-SP2, в MacOsX эти спецификации (уж не знаю с какой начиная версии) так же имеются. Немного особняком стоит Linux, по причине большого количества разных дистрибутивов это нужно проверить, поскольку в современные ядра эти спецификации пока не «припаяны». Законная поддержка UVC в ядре Linux существует только начиная с версии ядра 2.6.26. Однако многие производители Linux дают поддержку этого интерфейса с помощью модулей, поэтому будет не сколько не удивительно, если Ваш Linux с более старым чем 2.6.26 ядром уже имеет поддержку стандарта UVC. Ровно точно так же получилось и у меня с моим Ubuntu 7.10. С удовольствием для себя обнаружив, что этот интерфейс поддерживается в моем Ubuntu я выбрал видеокамеру и заказал ее в ближайшем компьютерном магазине. Остается только надеятся, что разновидностей UVC камер со временем станет только больше.

Проверку на поддержку UVC можно сделать командой:

  1. modinfo uvcvideo

и получив примерно что-то в этом духе

  1. filename:       /lib/modules/2.6.22-14-generic/ubuntu/media/usbvideo/uvcvideo.ko
  2. license:        GPL
  3. description:    USB Video Class driver

Итак я выбрал UVC web-камеру Genius Eye 320. Через недельку после заказа стал ее счастливым обладателем и в этот же вечер подключил ее к своему компу. Однако к разочарованию обнаружил, что картинки не в одной из программ, использующих камеру, я не наблюдаю. Тогда я загрузил машину из под учетной записи с правами администратора и вот оно! Есть картинка!
Далее всего-лишь пришлось решить вопрос с правами на использование камеры моей учетной записью без прав администрирования.
Проверяю, включена ли моя учетная запись в группу video

  1. cat /etc/group | grep video
  2. video:x:44:user1

где user1 это учетная запись с правами администрирования, моей учетной записи здесь нет, выходит, что нужно добавить себя в группу video. Сделать это можно отредактировав файл /etc/group следующим образом:

1. Входим в систему под учетной записью с правами администрирования.
2. Даем команду sudo gedit /etc/group (если у вас нет текстового редактора gedit, то откройте любым другим текстовым редактором)
3. Ищем строку, начинающуюся со слова video. Общий формат записи:

groupname::password:groupid:userlist
где
* groupname — имя группы.
* password — зашифрованный пароль группы. (Поскольку пароль для доступа к группам не применяется, обычно здесь нет никакой записи.)
* groupid — уникальный идентификационный номер группы.
* userlist — список пользователей группы, перечисленных через запятую.

Моя строка выглядела так — video:x:44:user1
где user1 — имя учетной записи с администраторскими привелегиями

Добавляем через запятую имя своей учетной записи, в результате получаем

  1. video:x:44:user1,user

где user это имя моей учетной записи.
Сохраняем файл.

Далее я на всякий пожарный перезагрузил систему и сделал проверку:

  1. cat /etc/group | grep video
  2. video:x:44:user1,user

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

Проверку провел в программах Skype, Ekiga и Kopete, во всех программах камера заработала, единственное, что в программе Ekiga пришлось немного подправить настройки — номер канала и выбрать само устройство (это делается в настройках Ekiga). В заключении немного двигаем движками настройки яркости и цветности, так же в настройках одной из этих программ, после чего камера работает одинаково хорошо во всех этих программах и даже автоматически регулирует свою чувствительность к освещенности.

Но вот в программах Camorama и Gimp еще предстоит выполнить определенные настройки, пока не знаю какие. В этих камерах картинку я пока не получил (сообщение «Could not connect to device (dev/video0) Please check connection»). С параметром -d /dev/video1 Camorama запустилась, но без изображения.
Права на файл video0 такие:

  1. ls -ld /dev/video0
  2. crw-rw—- 1 root video 81, 0 2008-08-22 16:39 /dev/video0

Если у кого есть совет по делу, пожалуйста пишите, я с удовольствием опробую это на примере. Хочется осуществить запуск web-камеры что называется «до конца».
Вместо «каморамы» можно использовать стандартную программу под Gnome с наименованием cheese (фотовидеобудка), программа делает фото и видео с установленной web-камеры.






Ваша оценка: Ничего Средняя оценка: 8.7 (92 votes)






Запись опубликована в рубрике Продвижение сайта. Добавьте в закладки постоянную ссылку.