Web-камеры в Linux
Оригинал: Webcams in Linux
Автор: Carla Schroder
Дата: 21 февраля 2008
Перевод: Андрей Синицын aka boombick
Дата перевода: 25 февраля 2009
При копировании материала обязательны указание автора, переводчика и ссылки на оригинал статьи и настоящую страницу как первоисточник перевода!
Linux и web-камеры
Сегодня web-камеры используются очень широко: большинство ноутбуков уже имеет встроенную web-камеру, многие LCD-мониторы оснащаются ими. Да и приобрести web-камеры, работающую через USB-интерфейс сегодня можно менее, чем 40$. В этой статье я расскажу вам, как настроить web-камеру для работы в linux и полноценно использовать все ее возможности
Вы не добьетесь высокого качества изображения от недорогих web-камер, в любом случае картинка будет не очень четкой и «прерывистой». Но это вполне приемлемая «прерывистость». Камеры low-end класса обычно поддерживают режим 15 кадров в секунду при разрешении 320×240 пикселей. Для сравнения, в фильмах обычно используются 24 кадра в секунду. В более дорогих моделях качество изображения лучше и битрейт повыше. Например, Logitech QuickCam Pro 9000. За цену около 100$ вы получаете встроенный микрофон, автофокус, довольно неплохую оптику и видео с разрещением до 960×720 пикселей
Так что для хорошего изображения на камере лучше не экономить. Также у вас должен быть относительно современный PC, оптимально двухядерный. Обработка видео — ресурсоемкая операция и требует «лошадиных сил». Стандартная минимальная ширина канала для передачи видео — 256 кбит/с в обе стороны
Поддержка web-камер в Linux довольно неплоха, за что стоит сказать спасибо разработчикам Linux. Обычно, производителей камер не очень заботят пользователи операционных систем, отличных от MS Windows. Michel Xhaard (Мишель Ксард) , например, с незначительной сторонней помощью разработал драйвер, который подходит более чем к 250 моделям web-камер. Этот базовый драйвер, GSPCA/SPCA5xx, входит в Debian и производные от него дистрибутивы. Также хорошие люди поддерживают проект драйвера и ПО Linux UVC , с помощью которого можно заставить заработать еще некоторые модели камер. Еще можно поблагодарить разработчиков проекта Драйвера для USB-камер Philips , хотя они по большей части поддерживают более старые модели
Плохой момент в словосочетании «неплохая поддержка» заключается в том, что в большинстве случаев драйвера придется компилировать и устанавливать руками. Добро пожаловать в старые добрые времена!
Заставляем камеру работать
Если вы еще не приобрели камеру, то сперва имеет смысл выяснить, какие модели наиболее хорошо поддерживаются в вашем дистрибутиве. Mandriva Linux наиболее «дружественна» к web-камерам. Камеры от Logitech — самые популярные, но не все модели имеют «нативные» драйвера для Linux
Если у вас уже есть web-камера, то можете уповать на везение — возможно камера заработает, как только вы подключите ее. Вот самый короткий и простой путь:
Если Camorama не работает, то можно попробовать использовать аккаунт Testbed в kopete. На рисунке изображен мой разговор с лучшим другом через kopete.
Также на скриншоте видна проблема с настройкой интегрированной камеры — вы должны поворачивать весь монитор для получения корректного изображения. К слову, я сидела довольно высоко 🙂
Camorama не поддерживает v4l2, а жаль — во второй версии сделано довольно много улучшений и исправлено много ошибок по сравнению с первой версией. На Ubuntuforums пользователи часто спрашивают, почему у них появляется ошибка «could not connect to video device (dev/video0)» при использовании Camorama. Это означает, что используется драйвер, которому нужен v4l2, или v4l вообще не установлен.
В современных Linux-дистрибутивах udev и HAL должны самостоятельно определить камеру, создать устройство /dev/video0, владельцем которого является root и принадлежащее группе video, и загрузить нужный модуль ядра. Если вы не входите в группу video, то добавьте себя туда и перелогиньтесь. Для проверки членства в группе запустите команду id без параметров. Чтобы проверить, загрузился ли нужный модуль, запустите lsmod
Узнаем «секретное имя» web-камеры
Моя камера встроена в LCD-монитор Viewsonic VX2255. Также у этого монитора есть встроенный микрофон. Камера подключается при помощи отдельного USB-кабеля. Я подключила ее и запустила следующие команды, чтобы проверить, «схватила» ли ее моя Ubuntu Gutsy
Это говорит о том, что камера поддерживается модулем ucvvideo и я могу воспользовать web-поиском для получения более подробной информации, потому что я знаю Супер Секретное Имя Web-Камеры. Помните, что вывод dmesg обновляется при подключении и отключении устройств, так что не лишним будет запомнить последние строки. Если же в выводе dmesg нет камеры, значит ядро не видит устройство и вам не повезло
Полезные ресурсы
- Один человек написал драйвера для 235 USB Web-камер
- Linux UVS драйвера и ПО
- Установка web-камеры. HOWTO. Это руководство написано для Gentoo, но подойдет для всех дистрибутивов
- Web-камеры в Ubuntu
- Настройка камеры в Debian Etch
- Linux и Logitech QuickCam Pro 9000
Другие статьи на тему вебкамер на нашем сайте:
- Jun Auza, перевод: Н.Ромоданов, «Превращаем обычную веб-камеру в камеру слежения, работающую в Ubuntu Linux» Если вы хотите превратить обычную веб-камеру в камеру слежения, чтобы знать, кто крадет ваших кур, то вам следует прочитать данную статью.
Источник
Как проверить веб-камеру
Выбирал ноут. На ноуте предустановленна бубунта и есть вебкамера, но нет софта для ее проверки. Пароль продавцы не знают, так что установить или запустить с рутовыми правами что-либо возможности нет. Устройство /dev/video0 присутствует, но чем проверить (штатным вроде тотема)?
livecd? mplayer tv://
sudo -s или как там в этой убунте?
но нет софта для ее проверки
Даже cheese? Он же вроде из коробки там.
пароля не знают.
можно в загрузчике дописать к параметрам ядра init=/bin/bash потом mount -o remount / ; passwd
Нету, выкинули уже пару убунт назад. Мплеер тоже не входит в дефолт
Я ж говорю, пароль неизвестен
О, а это вариант!
А тырнет то там есть? сейчас в магазине?
liveusb > mplayer, vlc.
Ну нету у меня с собой лайв дистра!
Толку ему от тырнета, если они пароль не знают.
Надо найти бинарник mplayer или vlc, причём статический:)
Продавцы не знают пароля от предустановленной системы? Я бы не стал покупать что-либо в таком магазине.
И я думаю, если /dev/video0 есть, то камера наверняка работает. Или я неправильно думаю?
можно в загрузчике дописать к параметрам ядра init=/bin/bash потом mount -o remount / ; passwd
он скорее хочет осмотреть на качество. и если у камеры убито все кроме микросхемки — /dev/video0 все равно появится.
Можно ещё попробовать ввести какой-нибудь очевидный пароль вроде «root» или «пароль».
мне очевидных паролей приходит в голову несколько десятков. И не факт что мои совпадают с ихними. проще поменять.
ffmpeg есть?
ffmpeg -t 10 -f video4linux2 -s 320×240 -r 30 -i /dev/video0 -f oss -i /dev/dsp1 -f mp4 webcam.mp4
Не факт. Года три назад имел сексуальные сношения с каким-то китайским барахлом. Устройство было, но получить с него поток так и не удалось.
вроде в коробке нет.
Нету. Упростим задачу — в системе есть libv4l-0.
От него зависят: banshee banshee-extension-soundmenu banshee-extension-ubuntuonemusicstore empathy gnome-media gstreamer0.10-plugins-good hplip libgstfarsight0.10-0 libpurple0 libsane libtelepathy-farsight0 libv4l-0 pitivi python-farsight python-papyon sane-utils simple-scan telepathy-butterfly telepathy-haze totem totem-mozilla totem-plugins
Что из этого может читать камеру?
Нашел. В пакете gnome-media есть gstreamer-properties.
ИЧСХ, его ни в одной менюшке с настройками нету((
Источник
Настройка веб-камеры Linux
Сейчас все ноутбуки поставляются со встроенным средством связи — веб-камерой. Это очень удобно. С помощью web-камеры Linux вы можете общаться с друзьями через интернет, делать фото или даже записывать видео с ноутбука. Но только есть одно но. Не для всех моделей веб-камер есть драйвера в ядре Linux. Веб-камеры подобно сетевым wifi адаптерам еще не полностью поддерживаются этой операционной системой. Но тем не менее многие работают и даже очень хорошо. В этой инструкции мы рассмотрим как выбрать веб-камеру для Linux, а также поговорим о том как с ней работать и настраивать.
Выбор веб-камеры для Linux
Одно дело если ваша веб-камера встроена в ноутбук и вы ничего уже не можете поменять, но другое, если вы покупаете ее сами. В таком случае к выбору web-камеры linux нужно подойти серьезно. Несмотря на то, что сейчас все больше и больше оборудования поддерживается ядром Linux, и достаточно хорошо поддерживаются многие камеры, важно обезопасить себя от проблем.
В Linux, для подключения веб-камер чаще всего используется драйвер v4l, он по умолчанию включен в ядро. Если ваша веб камера linux будет совместима с этим драйвером, скорее всего, с ней проблем не будет. Посмотреть список совместимых устройств можно на сайте Ubuntu. Если кратко, то — вот основные производители:
Конечно, есть и другие производители, и другие драйвера, но с этим драйвером есть большая вероятность того что все будет работать из коробки. v4l использует другие драйвера для работы с оборудованием от различных производителей, но драйвера для всех веб камер, поддерживаемых v4l уже встроены в ядро.
Настройка веб-камеры в Linux
Если веб камера linux совместима с вашей системой, то она автоматически определится и будет работать. Давайте посмотрим определилась ли веб-камера в вашей системе:
Устройство video0 и есть ваша webcam linux, если все в порядке, вы можете с ней работать. Но что же делать если камеры нет? Не все камеры поддерживаются по умолчанию ядром и драйвером v4l. Но для некоторых есть сторонние драйвера, так что еще есть шанс заставить все это работать. Сначала посмотрим что скажет система о состоянии драйверов нашей веб камеры:
В этом примере программа сообщает что нужно использовать драйвер gspca_zc3xx, он готов к использованию и осталось его только загрузить командой:
Теперь еще раз проверьте есть ли устройство видео в каталоге /dev/.
Обычно система в этом сообщении должна сказать какой драйвер нужен, а уже с помощью интернета вы сможете найти как его установить в своей системе. Если предыдущий драйвер не работает или у вас другая веб-камера можно попробовать также драйвер uvcvideo:
Не во всех дистрибутивы по умолчанию выставляются правильные права на доступ к файлу устройства веб-камеры. Добавим разрешение на чтение и запись для всех пользователей в группе video:
$ sudo chmod g+rw /dev/video0
Настройка веб-камеры linux завершена. Теперь давайте рассмотрим как использовать веб-камеру в Linux.
Работа с веб-камерой в Linux
Кроме стандартного использования web-камеры linux по назначению для видеозвонков в программе Skype, можно делать еще много вещей, например писать видео или делать фотографии. В Linux существует несколько способов записи видео с помощью веб-камеры.
Рассмотрим самые распространенные из них. Во-первых, вы можете транслировать вывод веб камеры сразу на экран компьютера или ноутбука просто выполнив команду:
А с помощью mencoder вы можете сразу писать вывод веб-камеры в avi файл:
Если в вашей системе не установлены эти утилиты, то вы можете использовать даже ffmpeg для записи видео с веб камеры:
Вам необязательно использовать для этой задачи консольные утилиты. Записывать видео с различных устройств позволяет и такая программа, как vlc. Запустите программу из главного меню, откройте меню файл, устройство захвата:
Выберите устройство для записи видеокамера, файл устройства video0:
Дальше нажмите на стрелочку около кнопки Play и выберите Convert (конвертировать) такое решение необходимо для сохранения данных в файл, если сохранять ничего не нужно, можно сразу нажать Play, чтобы проигрывать видео на экране в реальном времени:
Здесь осталось только выбрать файл для сохранения в поле конвертировать в файл:
После того как вы нажмете Старт начнется запись и засветится лампочка на веб-камере:
В набор программ v4l-tools входит утилита streamer, которая позволяет выполнять различные действия веб-камерой в Linux, записывать фото и видео.
Возможно, перед началом работы придется установить сам пакет:
Теперь можно использовать программу. Для записи одного фрейма выполните:
Следующая команда сохранит 10 фреймов:
А такой командой можно записать видео, длительностью 30 секунд и с расширением 352 х 240 пикселей:
Выводы
Вот и все. В этой статье была кратко рассмотрена настройка веб-камеры Linux. Если у вас остались вопросы, пишите комментарии!
Источник