Установка UVC и GSPCA драйверов Web-камер

Материал из FedoraMD.org Wiki
Перейти к навигации Перейти к поиску

ВНИМАНИЕ: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду $ su - для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя.


Внимание: Нижеописанная процедура не актуальна для свежих версий дистрибутива.

В зависимости от модели web-камеры, существует несколько способов заставить её работать под linux.

gspca

gspca - это драйвер для более, чем 240 моделей камер. Полный список поддерживаемых моделей можно найти здесь. Для установки необходим репозиторий Livna. Отключите камеру, затем установите следующий пакет и зависимости, которые он запросит:

# yum install gspca

теперь подключите web-камеру, и проверьте её работоспособность в каком-либо приложении.

uvc-linux

если для вашей камеры нет поддержки gspca - возможно, она есть в разрабатываемом в данный момент USB Video Class для Linux. Для начала - можно просмотреть список известных устройств, однако и другие камеры, соответствующие спецификации UVC должны работать. Так что приступим к установке!

Information.png Пользователям Fedora 8 достаточно обновится до ядра 2.6.24.2-7 и выше. Новые ядра содержат все необходимые модули.


Здесь всё сложнее, так как не существует готовых пакетов. Для начала, заходим под суперпользователем, т.к. скрипт установки зависит от переменной PATH

$ su -

нам понадобится несколько пакетов - поэтому установим их

# yum install kernel-devel gcc glibc-devel subversion

теперь - создаём временную директорию, и качаем в неё последнюю SVN версию драйвера

# mkdir linux-uvc && cd linux-uvc && svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk

собираем, и устанавливаем модуль ядра

# make -C trunk all install

на всякий случай, после установки, внедряем установленный модуль

# modprobe uvcvideo

Готово. Теперь можно проверить на каком-то приложении, поддерживающем v4l2 (Skype, Kopete,...)

Ввиду того, что вышеприведённые действия нужно делать после каждого обновления ядра, можно пользоваться небольшим скриптом, автоматизирующим процесс:

#!/bin/bash
# Make sure only root can run our script
if [[ $EUID -ne 0 ]]; then
  echo "This script must be run as root" 2>&1
  exit 1
fi

#check packages
if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then
 echo "installing missing packages";
 yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!"
fi
#create temp dir
TEMP_DIR=/tmp/uvc-linux-$$
mkdir $TEMP_DIR && cd $TEMP_DIR &&
#get latest SVN source
svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk &&
#install
make -C trunk all install  && echo "installed successfully" &&
#insert module
modprobe uvcvideo 
#remove temp dir
cd ../
rm -fr $TEMP_DIR

Источники: