Вебкамера в Skype

Материал из ALT Linux Wiki

Введение

Обладатели веб-камер с некоторых пор могли заметить, что их устройства перестали работать в некоторых программах, таких как Skype. В категорию неработающих попали те приложения, которые используют интерфейс v4l1, а не v4l2. Эта "поломка" выражается в отображении шума вместо картинки с веб-камеры. Пример такого шума приведен на рисунке:

Skype-settings.png

Описание проблемы

Являясь обладателем веб-камеры (ID 046d:092f Logitech, Inc. QuickCam Express Plus), автор тоже столкнулся с описываемой проблемой. В результате поиска решения выяснилось, что начиная с ядра версии 2.6.27 драйверы веб-камер стали включать в ядро. Включить включили, но не полностью. Та часть драйверов, которая отвечает за преобразование форматов представления изображений с каждой камеры к одному общему формату, была вынесена в отдельную библиотеку libv4l. Таким образом, программы, использующие интерфейс v4l1, перестали работать должным образом.

Решение проблемы

Для решения нашей проблемы нужно выполнить несложные действия. Прежде всего убеждаемся, установлена ли необходимая библиотека. Открываем терминал и вводим команду

$ rpm -qa libv4l

Если библиотека установлена, то получим название установленного пакета (на момент написания данной заметки это libv4l-0.5.6-alt1). Отсутствие какого-либо вывода свидетельствует о необходимости инсталляции библиотеки. Тут же в терминале получаем права суперпользователя (root) набрав команду "su -" (без кавычек) и введя соответствующий пароль. Далее производится установка библиотеки:

$ su -
Password: 
# apt-get install libv4l

Далее выполняем команду:

# echo "export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so">>/etc/bashrc

результатом которой будет добавление в конец файла /etc/bashrc строки export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so

Заключение

Выполнив эти несложные действия и перезагрузив компьютер, мы получаем нормально работающие с веб-камерой Skype и другие приложения, использующие v4l1. Так же хотелось бы упомянуть программу для изменения качества изображения (цветовой баланс, экспозицию (светлее/темнее), усиление сигнала и др.) "на лету": v4l2ucp. Установить ее можно описанным выше способом (в терминале, получив права суперпользователя):

# apt-get install v4l2ucp

Запускается программа командой

$ v4l2ucp /dev/videoX

, где Х - номер устройства, обычно - 0. Если Вы не планируете использовать более одной веб-камеры, то можно создать символическую ссылку командой (опять же в терминале, получив права суперпользователя)

# ln -s /dev/video0 /dev/video

Теперь программа запускается без параметров:

$ v4l2ucp