Виктория
Гуру
(3256)
13 лет назад
Обладатели веб-камер с некоторых пор могли заметить, что в 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 и ряд других приложений.
В заключении хотелось бы привести две программы, позволяющие регулировать качество изображения (цветовой баланс, экспозицию (светлее/темнее) , усиление сигнала и др.) , получаемое с веб-камеры:
v4l2ucp
guvcview
Первая программа позваляет оперативно, не закрывая запущенное приложение, подстроить качество изображения. Для запуска нужно использовать команду
v4l2ucp /dev/video0
Вторая программа имеет свой вывод видеосигнала и поэтому пользоваться ей нужно при закрытом приложении, для которого мы хотим настроить качество изображения.