Главная >> Инструкции >> Настройка веб-камеры Linux

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

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

Не для всех моделей веб-камер есть драйвера в ядре 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. Но для некоторых есть сторонние драйвера, так что еще есть шанс заставить все это работать. Сначала посмотрим что скажет система о состоянии драйверов нашей веб камеры:

hwinfo --usb

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, он готов к использованию и осталось его только загрузить командой:

modprobe 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 320x240 -i /dev/video0 out.mpg

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

vlc

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

vlc1

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

vlc2

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

vlc3

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

vlc4

В набор программ 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 352x240 -r 24 -o movie.avi -f mjpeg -F stereo

Выводы

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

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

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (14 оценок, среднее: 4,71 из 5)
Загрузка...

17 комментариев к “Настройка веб-камеры Linux”

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

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

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

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

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

    Ответить
  6. evgen@evgen-System-Product-Name:~$ 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:
    как это почнить?

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

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

    Терминал:
    user@user:~$ lsusb
    Bus 004 Device 002: ID 1871:0141 Aveo Technology Corp.

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

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

    Ответить
  9. Не помогло
    Камера 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/$

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

    Ответить
  11. mjpg_streamer
    Трансляция видео с web камеры в локальную сеть:
    /usr/bin/mjpg_streamer -i "input_uvc.so -yuv" -o "output_http.so -p 8090"
    (опция "-yuv" нужна если камера не поддерживает MJPEG)
    В браузере клиента открыть адресс: :8090/?action=stream
    Пример: http://10.0.0.100:8090/?action=stream

    Ответить

Оставьте комментарий