суббота, 20 июня 2009 г.

Веб-камера в Skype для Linux


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

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


Если нужный нам пакет отсутствует, устанавливаем его (в терминале получаем права суперпользваотеля через "su-"): apt-get install libv4l.
Далее из под root в терминале набираем следующую команду
echo "export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so">>/etc/bashrc
Результатом сего должно быть появление в конце файла /etc/bashrc строки export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so (сделать это можно любым другим удобным способом).
Проделав эти не сложные действия мы получаем корректно работающий с веб-камерой Skype и ряд других приложений.
В заключении хотелось бы привести две программы, позволяющие регулировать качество изображения (цветовой баланс, экспозицию (светлее/темнее), усиление сигнала и др.), получаемое с веб-камеры:
  1. v4l2ucp
  2. guvcview
Первая программа позваляет оперативно, не закрывая запущенное приложение, подстроить качество изображения. Для запуска нужно использовать команду
v4l2ucp /dev/video0
Вторая программа имеет свой вывод видеосигнала и поэтому пользоваться ей нужно при закрытом приложении, для которого мы хотим настроить качество изображения.

14 комментариев:

Анонимный комментирует...

Fedora 11

Пакет уже был установлен и обновлен, строчку дописал. Теперь Skype действительно не показывает зеленую невнятность. Теперь он, сцуко, выпадает. я плохо представляю, как это работает, может у вас есть идеи, где косяк?.

Shmikes комментирует...

Для начала давайте посмотрим что пишется в терминале.
Запустите терминал и из него уже skype, а потом посмотрим, что пишется.

Дмитрий комментирует...

У меня Убунта 9.04....
Подскажите, как в ней настроить??

Shmikes комментирует...

Если приведенный способ не помогает, можно, как вариант, сделать следующее.
Файл /usr/bin/skype переименовать в /user/bin/skype-bin и создать скрипт /usr/bin/skype примерно такого содержимого:

#!/bin/bash

export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so
/usr/bin/skype-bin

Во всяком случае при запуске из терминала командой
export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so;skype
все работает нормлаьно.

Unknown комментирует...

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype
камера работает только когда запускаешь через sudo. а если просто, то он не находит устройство /dev/video0
где может лежать конфиг в который можно вручную указать? если конечно есть такой.
как можно еще решить эту проблему.
пользователь xxx состоит в группе camera
заранее спасибо

Unknown комментирует...

дико извиняюсь забыл добавить пользователя в группу video.
после перезагрузки все заработало!

спасибо за статью
arch-2.6.31 все пашет)

а прописать невозможно.. по крайней мере у меня так. там 16тиричная система счисления везде.. :)

Shmikes комментирует...

Простите, не понял кого куда прописать? Если речь идет о файле /usr/bin/skype, то его надо просто переименовать и создать обычный текстовый файл с таким же именем и содержанием, которое я привел выше.

Анонимный комментирует...

Подскажите пожалуйста как в ubuntu 9.10 настроить видеокамеру panasonic nv-gc57 в скайпе????

Shmikes комментирует...

А что конкретно у Вас не получается сделать?

Unknown комментирует...

помогите под убунту настроить (mint7)
выдает с самого начала
Не удалось найти пакет libv4l

Shmikes комментирует...

Попробуйте задать поиск просто v4l. Например:

apt-cache search v4l

А дальше подберите соответствующий пакет.

Анонимный комментирует...

почерпнул полезную инфу и наконец настроил свою камеру. Спасибо!

vs комментирует...

Здравствуйте BigMike.Пытаюсь завести skape в Mandriva2010.0 Всё работает(видео есть с обоих сторон и звук с моей стороны),но собеседник меня не слышит,проблема видимо в системе обработки звука в ОС т.к.в Windows эта камера работает нормально. В настройках skape в разделе "устройства-микрофон" прописано "PulseAudio server (local)" Не поможете каким либо советом?! Спасибо.
Вадим.

Анонимный комментирует...

Спасибо, все работает.