Служба камеры GoCam
GoCam — это служба камеры, добавленная в бета-версии FLYOS-FAST v1.4.0, предназначенная для USB-камер без драйверов, поддерживающих протокол UVC. Она обеспечивает потоковое видео в реальном времени, получение одиночных кадров и страницу управления параметрами камеры.
GoCam в настоящее время подтвержден только в бета-версии образа FLYOS-FAST v1.4.0. Для стабильной версии v1.3.10 и образов платформ, не включающих GoCam, продолжайте использовать Crowsnest.
Включение GoCam
GoCam и Crowsnest следует использовать взаимоисключающе. Если оба параметра установлены в 1, система запустит Crowsnest в приоритетном порядке, и GoCam не будет работать.
Установите в FlyOS-Conf/config.txt:
crowsnest=0
gocam=1
После сохранения перезагрузите верхний компьютер. Инструкции по изменению файлов конфигурации см. в Руководстве по настройке системы FLYOS-FAST.
Перед первым подключением или заменой камеры полностью выключите принтер и отсоедините его от источника питания. Не подключайте и не отключайте кабели камеры и не разбирайте разъемы при включенном питании.
Подключите USB-камеру без драйверов, поддерживающую UVC, к USB-порту верхнего компьютера, затем снова включите питание.
Открытие страницы управления GoCam
GoCam по умолчанию использует порт 8080. В той же локальной сети, что и верхний компьютер, откройте:
http://IP-адрес-устройства:8080
Страница управления предоставляет следующие функции:
- Просмотр изображения с камеры в реальном времени.
- Просмотр поддерживаемых камерой форматов, разрешений и частоты кадров.
- Копирование адресов видеопотока и снимков.
- Настройка параметров UVC, реально поддерживаемых камерой.
Набор параметров, доступных для изменения, зависит от конкретной камеры; страница отображает только те параметры, которые поддерживаются текущей камерой и могут быть изменены, например яркость, частота сети, фокусировка или экспозиция. Изменения параметров применяются к камере немедленно; после подтверждения результата нажмите Save to config, чтобы сохранить настройки после перезапуска службы.
Адреса видеопотока и снимков
| Назначение | Рекомендуемый адрес |
|---|---|
| Потоковое видео в реальном времени | http://IP-адрес-устройства:8080/?action=stream |
| Одиночный снимок | http://IP-адрес-устройства:8080/snapshot |
| Снимок на самом верхнем компьютере | http://localhost:8080/snapshot |
GoCam также совместим с адресами /stream, /?action=snapshot и /webcam/?action=.... В новых конфигурациях следует в первую очередь использовать адреса из приведенной выше таблицы, чтобы избежать проблем совместимости плагинов из-за использования путей других служб камеры.
Настройка таймлапса
В режиме GoCam адрес снимка для таймлапса в moonraker.conf должен быть установлен следующим образом:
[timelapse]
output_path: /usr/share/printer_data/timelapse/
snapshoturl: http://localhost:8080/snapshot
frame_path: /tmp/timelapse
После изменения перезапустите Moonraker. Полную инструкцию см. в разделе Функция таймлапса.
Если таймлапс не создает кадры, сначала проверьте snapshoturl. GoCam рекомендует напрямую использовать /snapshot; не оставляйте без проверки старый адрес снимков Crowsnest.
Файл конфигурации
Конфигурация службы GoCam расположена в:
/usr/share/printer_data/config/gocam.conf
Пример конфигурации по умолчанию:
[cam 1]
port: 8080
device: /dev/video1
resolution: 1920x1080
max_fps: 30
quality: 5
# v4l2ctl: focus_automatic_continuous=0,focus_absolute=70
# ffmpeg_flags: -fflags nobuffer -flags low_delay
| Параметр | Значение по умолчанию в образе v1.4.0 | Описание |
|---|---|---|
port | 8080 | Порт службы текущей камеры |
device | /dev/video1 | Узел устройства камеры; предпочтительно использовать фиксированные пути в /dev/v4l/by-id/... |
resolution | 1920x1080 | Разрешение, реально поддерживаемое камерой |
max_fps | 30 | Максимальная частота кадров |
quality | 5 | Качество MJPEG, диапазон значений от 1 до 31 |
v4l2ctl | Не задан | Необязательные параметры UVC; параметры, сохраненные на странице управления, записываются сюда |
ffmpeg_flags | Не задан | Необязательные параметры FFmpeg |
Проверка состояния и устранение неполадок
Выполните через SSH:
systemctl status gocam --no-pager
Просмотр последних журналов службы:
tail -n 100 /usr/share/printer_data/logs/gocam.log
Часто встречающиеся проблемы:
- Страница недоступна: убедитесь, что
gocam=1,crowsnest=0, и проверьте, не занят ли порт8080другим сервисом. - На странице отображается отсутствие сигнала: проверьте, указывает ли
deviceна текущую камеру, и убедитесь, что разрешение и частота кадров поддерживаются камерой. - Параметры теряются после перезапуска: после настройки в реальном времени также необходимо нажать Save to config.
- В таймлапсе нет изображений: измените
snapshoturlнаhttp://localhost:8080/snapshotи перезапустите Moonraker.