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» Если вы хотите превратить обычную веб-камеру в камеру слежения, чтобы знать, кто крадет ваших кур, то вам следует прочитать данную статью.
Источник
Работа с usb видеокамерой в Linux. Часть 1
По популярности видеокамера, сегодня, стоит в одном ряду с микрофоном и наушниками. Она используется в различных направлениях, таких как распознавание объектов, дополненная реальность, видеоконференции и множество других. Но что же скрыто под капотом этих сложнейших программ? Как мы получаем картинку с видеокамеры? Этот цикл статей позволит взглянуть на простоту работы с видеокамерой на низком уровне, обработку полученного изображения.
Для начала, немного информации о работе с устройствами в системе Linux. Устройства в nix системах представляют собой файл. С некоторыми файлами-устройств мы можем работать как с обычными файлами. Например:
эта команда выведет на экран весь диск sda.
Есть устройства с которыми нельзя работать напрямую, к ним относится видеокамера.При попытке это сделать мы получим такую реакцию системы:
*Где /dev/video0 это файл-устройство найшей видеокамеры.
Для работы с ней нам понадобится системная функция ioctl детальнее о ней можно ознакомится [1]. Попробуем это применить. Вот код позволяющий считать информации с устройства (альтернатива команде cat для видеоустройств):
В первых строках кода считываются параметры с которой запущено приложение. Если параметров нету то device_name принимает стандартоне значение «/dev/video0».
В блоке «Open Device» происходит открытие устройства системной функцией open (нужно подключить header fcntl.h). Обязательный параметр O_RDWR отвечает за открытие устройства считывания/записи. Если при подключении возникла ошибка, то функция open вернет -1.
Блок «Read Params From Device» — это сердце нашей маленькой программы. Для его использования надо подключить билиотеку возможно прийдется её установить, у каждого дистрибутива свой пакет под эту библиотеку
Системная функция ioctl имеет три параметра:
file_device — дескриптор нашего устройства
VIDIOC_QUERYCAP — функция ядра, которую применяем для нашего устройства.
device_params — область памяти куда будет сброшен результат функции «VIDIOC_QUERYCAP».
device_params это структура состоящая из таких полей:
если возникла ошибка ioctl вернет -1
Блок «Close Device» закрывает дескриптор устройства.
Посмотрим программу в действии.
устройство не определилось ядром либо не подключено уборщица опять ненужные провода дергала.
Подключаем и заново запуск. Получаем такую информацию:
поле capabilities и device capabilities можно расшифровать благодаря константам из файла videodev2.h:
На этом вводная статья заканчивается. В следующих обзорах будут затронуты, такие темы как memory-mapping, виодеформаты изображения, настройка камеры, вывод изображения в текстуру, работа с несколькими камерами.
Источник
Настройка Веб-камеры в Линукс
За последние несколько лет стоимость функциональности операционной системы Linux не сократилась, а даже выросла. Хорошая аппаратная поддержка — одна из последних вещей, которых Linux не хватает по сравнению с другими операционными системами. На самом деле это не ошибка сообщества Linux. Производители оборудования виноваты в том, что они не поддерживают свое собственное оборудование в операционных системах, отличных от проприетарных.
Разработчики сообщества Linux на самом деле делают чудеса с поддержкой аппаратного обеспечения, и я благодарю их за проделанную большую работу. Поддержка веб-камеры была когда-то скрытой в списке оборудования, поддерживаемого Linux. Но сегодня у нас есть видеозахват Video4Linux, поддерживаемый драйверами веб-камеры UVC и GSPCA, и большинство веб-камер успешно работают на наших Linux-ПК.
Это может быть очень запутанным для тех, кто только что установил Ubuntu, чтобы обнаружить, что его веб-камера работает, но что он не контролирует такие параметры, как яркость, контрастность, автоэкспозиция и т. д. Типичный пользователь собственной операционной системы использовал бы элементы управления, для настройки этих настроек. Но мы не отстаем от продвинутых разработчиков, потому что сообщество Linux предоставляет средства для управления нашими веб-камерами.
Позвольте мне представить приложения, которые я использую на своем компьютере Ubuntu с помощью Logitech E3500, Logitech E2500 и многих других веб-камер без названия, чтобы настроить их видео и другие настройки.
Настройка Веб-камеры в Linux
Как вы поняли, в этой статье мы поговорим про настройку веб-камеры в дистрибутивах Linux. Настройка Веб-камеры в Linux является очень простой и сейчас мы расскажем вам как это сделать, самым простым способом. Если у вас возникнут какие-то вопросы — пишите их в форме для комментариев. Мы обязательно подскажем вам, что и как нужно сделать еще более детально.
Сначала есть инструмент Gtk-v4l. Это в основном панель управления для веб-камеры и имеет все настройки, которые драйверы веб-камеры для других операционных систем обеспечивают для вашего веб-камеры Video4Linux.
Работа с веб-камерой в Linux
Также стоит отметить, что драйвера этих программ поддерживают таких производителей как:
- Samsung
- Genius
- Sony
- Tevion
- Trust
- MediaForte
- Micro Innovations
- Hercules
- Jenoptik
- Typhoon
- а также огромное количество других производителей.
Gtk-v4l не находится в репозиториях Ubuntu 17.10, поэтому вы должны добавить свой репозиторий в список источников. Вот команды для этого:
Второе приложение, которое я использую, называется Guvcview, и это что-то вроде Gtk-v4l plus Cheese. Вы можете управлять своими веб-камерами, записывать снимки, видео и многое другое. Guvcview, как Gtk-v4l, не находится в репозитории Ubuntu 17.10, поэтому вы должны сначала добавить его репозиторий для его установки:
На скриншоте выше вы можете увидеть пользовательский интерфейс Guvcview.
Я думаю, что эти два приложения — это средний пользователь, который должен контролировать свои веб-камеры в операционной системе Ubuntu Linux, вы согласны? если вы не являетесь средним пользователем и хотите управлять веб-камерой с помощью CLI с терминала, вы можете найти больше информации на нашем сайте.
Выводы
Настройка Веб-камеры в Linux является очень простой в любой современной версии Ubuntu. Мы рассказали вам про самые лучшие программы, которые являются очень удобными даже для новичка.
Если статья была для вас интересной, то поделитесь ссылкой на нее в своих социальных сетях. Это очень поможет в развитии нашего сообщества.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Как проверить веб-камеру
Выбирал ноут. На ноуте предустановленна бубунта и есть вебкамера, но нет софта для ее проверки. Пароль продавцы не знают, так что установить или запустить с рутовыми правами что-либо возможности нет. Устройство /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.
ИЧСХ, его ни в одной менюшке с настройками нету((
Источник