Camera driver для linux

Устанавливаем веб-камеру в Linux

Оригинал: Configuring your webcam to work under Linux
Автор: Bruce Byfield
Дата: 6 сентября 2007
Перевод: Александр Тарасов aka oioki
Дата перевода: 11 сентября 2007

Если вы хотите испытать ощущения пользователя ранних версий GNU/Linux, попробуйте настроить веб-камеру на своей системе. В отличие от большинства устройств, веб-камеры зачастую не устанавливаются автоматически. Более того, если вы устанавливаете принтер, то вы знаете, что искать решение нужно в пакете Common Unix Printing System ( CUPS ) и его интерфейсах. С веб-камерами дело иначе — успех вашей затеи зависит лишь от того, что вы найдете в интернете, и от ваших знаний модулей ядра и драйверов. Эти обстоятельства приводят к тому, что настройка веб-камеры звучит как вызов — однако если отнестись к делу с пониманием того, что вы делаете, достаточной степенью осторожности и, может быть, долей удачи, возможно установить веб-камеру менее чем за вечер.

Если ваша веб-камера внешняя, это будет наилучшей предпосылкой для ее успешной настройки. Существует множество сайтов для различных производителей и моделей, поиск вам в помощь. В большинстве случаев вы не найдете исчерпывающую информацию на сайте производителя. Вместо этого лучше идите на неофициальные сайты — они заполняются самими пользователями, поэтому содержат наиболее достоверные сведения и комментарии. Webcam HOWTO , составленный Говардом Шейном (Howard Shane), хотя и устарел на пару лет, но содержит несколько полезных ссылок. Если камера подключается по FireWire, попробуйте список цифровых камер IEEE1394 , поддерживаемый Дэмьеном Душампсом (Damien Douxchamps).

Особенно полезен сайт A Free World Мишеля Ксаарда (Michel Xhaard), чьи драйвера Spca5xx уже нашли путь к репозиториям основных дистрибутивов, включая Debian. Если ваша веб-камера есть в списке, а пакет драйверов в репозитории вашего дистрибутива, тогда ваши шансы велики, и камера может быть определена автоматически при установке пакета.

Но иногда придется повозиться, например, если у вас встроенная веб-камера (такое часто встречается у ноутбуков) и это не волновало вас на момент покупки компьютера, либо ваш дистрибутив не содержит пакетов с драйверами. В этих случаях настроить веб-камеру может помочь поиск в интернете конкретно по вашей модели компьютера.

Много информации о камере можно почерпнуть прямо с компьютера. Для этого есть несколько способов:

  • Протестируйте камеру с помощью подходящей программы (см. ниже). Если заработает, тогда ваша камера напрямую поддерживается ядром. Этот случай редок на сегодняшний день.
  • Используйте команду dmesg | more , чтобы узнать определена ли веб-камера при загрузке системы. Найдя упоминание о ней, попробуйте найти созвучный модуль ядра (опять же, можно попробовать угадать) в каталоге /lib/modules/ , конкретно в подкаталоге /usb , который зарыт в глубине файловой системы. Точное расположение подкаталога /usb зависит от дистрибутива. В Debian полный путь /lib/modules/kernel/build/drivers/usb , а в Fedora 7 — /lib/modules/kernel/kernel/drivers/usb .
  • На сегодняшний день наиболее распространены USB-камеры. Для просмотра подключенных USB-устройств используйте консольную программу lsusb , либо графическую v4l2-tool (поищите ее в своем репозитории). Найдите камеру по ее имени (или попробуйте найти ее методом исключения, или вообще угадать) и запишите ей соответствующий 8-значный код (с двоеточием посередине) в последней колонке списка. Этот код определяет производителя и идентификатор продукта, который можно использовать при поиске драйвера в интернете. В программе v4l2-tool ввод этого идентификатора во вкладке Suggest Driver даже может дать вам название нужного драйвера. Вооружившись этой информацией, отправляйтесь в интернет за драйвером. Если найдете, загружайте и компилируйте его. В некоторых случаях вам придется сперва загрузить кое-какие зависимости. К примеру, драйвер для камеры Ricoh R5U870 требует наличия пакета поддержки динамических модулей ядра (Dynamic Kernel Module Support, DKMS).

В случае упомянутой Ricoh R5U870 включение DKMS означает, что драйвер может быть автоматически установлен, как только будет скомпилирован. Возможно, потребуется устанавливать драйвер как заплатку (patch) к ядру, хотя это больше относится к старым камерам. В большинстве случаев, если у вас получится скомпилировать драйвер, установить его (загрузить модуль ядра) можно будет командой modprobe имя_драйвера . Если вы найдете удачную конфигурацию и будете удовлетворены работой камеры, закрепите свой выбор добавлением имени драйвера в скрипт /etc/modules или строки modprobe имя_драйвера в /etc/rc.d/rc.local . Тогда ваш драйвер будет загружаться при запуске системы.

Тестирование

Если вы дошли досюда, значит, все самое сложное позади, но вас еще могут подстерегать некоторые трудности. В зависимости от дистрибутива, вам может потребоваться создать с помощью команды addgroup новую группу пользователей video и поместить свои учетные записи в нее, чтобы все пользователи смогли пользоваться веб-камерой. Вдобавок нужно проверить работу камеры с помощью нескольких программ, таких как CamStream , Ekiga и Kopete — некоторые могут не работать с вашей камерой. Попробуйте обновить эти программы, иногда это может решить проблему.

Если для установки драйвера веб-камеры вы использовали DKSM, то после установки проверьте, что все остальное у вас работает (к примеру, у меня перестала работать беспроводная сетевая карта, включенная с помощью Ndiswrapper ). Эта проблема может остаться «висеть» даже при перезагрузке, однако при выключении компьютера и повторном включении проблема исчезает. Если же и это не помогло, попробуйте удалить остановившееся устройство и установить его заново.

Заключение

Бесспорно, эта статья лишь отправная точка. В завершение хочу отметить, что многие камеры из вышеупомянутого списка являются результатом ребрендинга других камер, или наоборот, их выпускают под новыми названиями. Вполне возможны случаи, когда устройства, которые называются и выглядят одинаково, но совершенно различаются внутренне.

Читайте также:  Windows linux transformation pack

Производители веб-камер, как и производители других устройств, совершенно не заинтересованы в выпуске драйверов для GNU/Linux. Таким образом, подавляющее большинство драйверов веб-камер для GNU/Linux — результат обратной разработки драйверов разработчиками-энтузиастами, многие из которых никогда не задумывались о стандартизации результатов своей работы.

По этим причинам, я старался избегать конкретики. Проблема не в том, что настройка веб-камера сложна (вовсе нет), проблема в том, что информацию приходится собирать по крупицам. Надеюсь, эта статья поможет вам в этом нелегком деле.

Источник

Настройка веб-камеры 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. Если у вас остались вопросы, пишите комментарии!

Источник

Настройка веб-камеры Linux

Сейчас все ноутбуки поставляются со встроенным средством связи — веб-камерой. Это очень удобно. С помощью web-камеры Linux вы можете общаться с друзьями через интернет, делать фото или даже записывать видео с ноутбука. Но только есть одно но.

Читайте также:  Драйвера для vpn windows 10

Не для всех моделей веб-камер есть драйвера в ядре Linux. Веб-камеры подобно сетевым wifi адаптерам еще не полностью поддерживаются этой операционной системой. Но тем не менее многие работают и даже очень хорошо. В этой инструкции мы рассмотрим как выбрать веб-камеру для Linux, а также поговорим о том как с ней работать и настраивать.

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

Одно дело если ваша веб-камера встроена в ноутбук и вы ничего уже не можете поменять, но другое, если вы покупаете ее сами. В таком случае к выбору web-камеры linux нужно подойти серьезно. Несмотря на то, что сейчас все больше и больше оборудования поддерживается ядром Linux, и достаточно хорошо поддерживаются многие камеры, важно обезопасить себя от проблем.

В Linux, для подключения веб-камер чаще всего используется драйвер v4l, он по умолчанию включен в ядро. Если ваша веб камера linux будет совместима с этим драйвером, скорее всего, с ней проблем не будет. Посмотреть список совместимых устройств можно на сайте Ubuntu. Если кратко, то — вот основные производители:

  • A4 Tech
  • Creative
  • Genius
  • Hercules
  • Jenoptik
  • Logitech
  • MediaForte
  • Micro Innovations
  • Microsoft
  • Mustek
  • Philips
  • Samsung
  • Sanyo
  • Sony
  • Tevion
  • Trust
  • Typhoon

Конечно, есть и другие производители, и другие драйвера, но с этим драйвером есть большая вероятность того что все будет работать из коробки. v4l использует другие драйвера для работы с оборудованием от различных производителей, но драйвера для всех веб камер, поддерживаемых v4l уже встроены в ядро.

Настройка веб-камеры в Linux

Если веб камера linux совместима с вашей системой, то она автоматически определится и будет работать. Давайте посмотрим определилась ли веб-камера в вашей системе:

sudo ls -l /dev/ | grep video

crw-rw—-+ 1 root video 81, 0 май 31 04:14 video0

Устройство video0 и есть ваша webcam linux, если все в порядке, вы можете с ней работать. Но что же делать если камеры нет? Не все камеры поддерживаются по умолчанию ядром и драйвером v4l. Но для некоторых есть сторонние драйвера, так что еще есть шанс заставить все это работать. Сначала посмотрим что скажет система о состоянии драйверов нашей веб камеры:

Module Alias: «usb:v046Dp08DAd0100dc00dsc00dp00ic01isc02ip00»
Driver Info #0:
Driver Status: gspca_zc3xx is active
Driver Activation Cmd: «modprobe gspca_zc3xx»
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #8 (Hub)

В этом примере программа сообщает что нужно использовать драйвер gspca_zc3xx, он готов к использованию и осталось его только загрузить командой:

Теперь еще раз проверьте есть ли устройство видео в каталоге /dev/.

Обычно система в этом сообщении должна сказать какой драйвер нужен, а уже с помощью интернета вы сможете найти как его установить в своей системе. Если предыдущий драйвер не работает или у вас другая веб-камера можно попробовать также драйвер uvcvideo:

sudo modprobe uvcvideo

Не во всех дистрибутивы по умолчанию выставляются правильные права на доступ к файлу устройства веб-камеры. Добавим разрешение на чтение и запись для всех пользователей в группе video:

sudo chown root:video /dev/video0

$ sudo chmod g+rw /dev/video0

Настройка веб-камеры linux завершена. Теперь давайте рассмотрим как использовать веб-камеру в Linux.

Работа с веб-камерой в Linux

Кроме стандартного использования web-камеры linux по назначению для видеозвонков в программе Skype, можно делать еще много вещей, например писать видео или делать фотографии. В Linux существует несколько способов записи видео с помощью веб-камеры.

Рассмотрим самые распространенные из них. Во-первых, вы можете транслировать вывод веб камеры сразу на экран компьютера или ноутбука просто выполнив команду:

mplayer tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0 -fps 30

А с помощью mencoder вы можете сразу писать вывод веб-камеры в avi файл:

mencoder tv:// -tv driver=v4l2:width=320:height=240:device=/dev/video0 -ovc lavc -o webcam.avi

Если в вашей системе не установлены эти утилиты, то вы можете использовать даже ffmpeg для записи видео с веб камеры:

ffmpeg -f video4linux2 -s 320×240 -i /dev/video0 out.mpg

Вам необязательно использовать для этой задачи консольные утилиты. Записывать видео с различных устройств позволяет и такая программа, как vlc. Запустите программу из главного меню, откройте меню файл, устройство захвата:

Выберите устройство для записи видеокамера, файл устройства video0:

Дальше нажмите на стрелочку около кнопки Play и выберите Convert (конвертировать) такое решение необходимо для сохранения данных в файл, если сохранять ничего не нужно, можно сразу нажать Play, чтобы проигрывать видео на экране в реальном времени:

Здесь осталось только выбрать файл для сохранения в поле конвертировать в файл:

После того как вы нажмете Старт начнется запись и засветится лампочка на веб-камере:

В набор программ v4l-tools входит утилита streamer, которая позволяет выполнять различные действия веб-камерой в Linux, записывать фото и видео.

Возможно, перед началом работы придется установить сам пакет:

sudo apt-get install v4l-tools

Теперь можно использовать программу. Для записи одного фрейма выполните:

streamer -o foobar.ppm

Следующая команда сохранит 10 фреймов:

streamer -t 10 -r 2 -o foobar00.jpeg

А такой командой можно записать видео, длительностью 30 секунд и с расширением 352 х 240 пикселей:

streamer -t 0:30 -s 352×240 -r 24 -o movie.avi -f mjpeg -F stereo

Выводы

Вот и все. В этой статье была кратко рассмотрена настройка веб-камеры Linux. Если у вас остались вопросы, пишите комментарии!

Оцените статью:

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

Читайте также:  Как создать флешку для установки windows 10 ультра исо

16 комментариев

можно более конкретнее по настройке драйвера, например перевернутое изображение камеры вернуть в нормальное состояние.

Купил лет 5 назад в Финляндии камеру Microsoft на упаковке коей был, помимо Окон и значок Пингваина по совместимости и кстати, почти на всех камках он присуствовал.
Завелась из коробки!
А, вот, до этого была Genius, так танцы с бубном и выкрутасы, чтобы завести её.

hwinfo —usb Сорри в кедах нет такой команды, а какая нужна?

Эта нужна, возможно ее нужно установить, в Ubuntu: sudo apt-get install hwinfo

Доброй ночи.
А как исправить ситуацию с постоянно работающей веб камерой, индикатор постоянно горит?

Попросите сотрудников ФСБ больше не следить за вами

Хорошая статья. Спасибо!
Есть проблемка. Не совпадает соотношение сторон. То есть выставляю 1280×720 включаю просмотр с камеры и перед ней кладу квадратик. На экране выглядит как прямоугольник. Не подскажете почему так?

$ sudo apt-get install hwinfo
[sudo] пароль для user:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
E: Не удалось найти пакет hwinfo

Так как же всё таки записывать видео? Лампочка на веб камере не светится, её кожется вообще нет. Камера просто передает изображение на монитор, и всё. Записвыать то — как, как прерывать запись, как сохранять. Ничего не ясно.

$ lsusb
Bus 001 Device 003: ID 0ac8:3610 Z-Star Microelectronics Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
evgen@evgen-System-Product-Name:

$ lsusb
Bus 001 Device 004: ID 0ac8:3610 Z-Star Microelectronics Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
evgen@evgen-System-Product-Name:

$
то при включении — камера определяется — работает.
далее попользовался и она неработает
Bus 001 Device 003 — Bus 001 Device 004:
как это почнить?

Все еще актуален вопрос о перевернутом изображении.
Как исправить в новом Cкайпе? (Linux Mint 18.2 KDE Версия Скайпа 8.11.76.8)

Здраствуйте! Возможно ли увеличить fps web камеры, если в настройках программ(V4L2, guvcview и. т.д. и т.п) доступно только: 320×240 fps5, 160×120 fps10?

$ lsusb
Bus 004 Device 002: ID 1871:0141 Aveo Technology Corp.

$uvcdynctrl -f
Listing available frame formats for device video0:
Pixel format: YUYV (YUYV 4:2:2; MIME type: video/x-raw-yuv)
Frame size: 320×240
Frame rates: 5
Frame size: 160×120
Frame rates: 10

Система: Xubuntu 18.04
Камера: NEC ic-310

И где потом искать это отснятое видео?

Как использовать вэб камеру в качестве микрофона? Пробовал через arecord, пишется пустой файл.

Не помогло
Камера Sony A7 , вроде не хлам ) есть софт для винды setup.exе конечно же не сработал =))

В общем появляется устройство /dev/video1 но никто не может его открыть.
user@pc1:/media/user/F/Work/$ lsusb
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 002: ID 276d:1160
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 016: ID 1a2c:0e24 China Resource Semico Co., Ltd
Bus 003 Device 003: ID 10c4:8105 Cygnal Integrated Products, Inc.
Bus 003 Device 006: ID 1908:2310 GEMBIRD
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 002: ID 041e:323d Creative Technology, Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
user@pc1:/media/user/F/Work/$

Я уже на экспериментировался от души. Выяснил одну зависимость что 2-3-4 вебки не могут висеть на одном usb контроллере, плохо работают с другими устройствами выжирающими контроллер даже временно (просто укладывают вебку в зелёный экран). То есть нужно докупать PCI USB контроллеры. тогда работает. Но это правило работает если с Linux все нормально.
Иногда Линь вообще ни в какую не желает дружить с вебкой, ругается что кабель ему не тот или неизвестная ошибка и т.п. Заметил эта особенность вылазит если ставить Linux с UNetbootin выбитая дистрибутив из списка. Из образа ISO подготовленного под Windows, таких косяков не было. Даже с вебкой и дровами от iMac 2006 года, всё работало прекрасно.
Еще есть нюансы с прерываниями, пропускной способностью и реальным количеством свободных прерываний, которые я так понимаю играют основную роль при нормальной работе всех USB устройств.
В общем лично мне год назад удалось на Ubuntu сделать домашнюю систему видеонаблюдения из 4-х USB Вебок, всё прекрасно работало, до переустановки системы, потом только слёзы (не только с USB но и с btrfs и жесткими дисками)! Имеет ли значение под какой конкретно системой подготавливается установщик OS флешь накопитель. Доказать связь не так просто, даже при наличии нескольких ПК на переустановки и подготовки флешек уходит слишком много времени и сил!!
А вообще учитывая огромное количество устройств с встроенными вебками, которые можно выковыривать и подпаивать к кабелю USB,проблема довольно актуальная. Поскольку дешевле разобрать парочку ненужных мониторов от ноутбуков или моноблоков, чем покупать IP Камеры + свичи + кабель + питание.

Источник

Оцените статью