Типовые неисправности и решения
Типовые неисправности PrimeCast и их решения по подсистемам: экран и джойстик, HDMI-захват, сеть, поток, доступ и клиентские приложения.
Типовые симптомы сгруппированы по подсистемам. Перед углублённым разбором выполните быструю проверку; команды для модуля собраны в разделе Углублённая диагностика модуля.
Экран и управление
Экран не включается
Возможные причины:
- нет питания;
- плохой USB-C кабель;
- недостаточная мощность БП;
- ошибка загрузки;
- проблема SPI или дисплея;
- служба OSD не запущена.
Проверки:
systemctl status primecast-osd --no-pager
sudo journalctl -u primecast-osd -b --no-pager
vcgencmd get_throttled
Джойстик не управляет меню
- Проверьте, реагирует ли сенсорный экран.
- Проверьте службу OSD.
- Проверьте BCM-пины
5,6,13,19,26. - Проверьте общий GND.
- Убедитесь, что другой процесс не занял GPIO.
- Проверьте аргумент
--pinsв systemd unit.
Захват и HDMI
«Устройство не подключено»
v4l2-ctl --list-devices
lsusb
dmesg --level=err,warn | tail -n 100
Если UVC-захвата нет:
- переподключите USB;
- замените порт;
- уберите пассивный хаб;
- проверьте питание;
- проверьте захват на другом компьютере.
«Нет HDMI»
- Убедитесь, что источник включён.
- Подключите источник напрямую к монитору.
- Замените HDMI-кабель.
- Установите 720p60 или 1080p30.
- Отключите нестандартный HDR/VRR.
- Для AV2HDMI выберите 720p и правильный PAL/NTSC.
- Проверьте
/dev/video0.
Неправильные цвета аналогового сигнала
- проверьте PAL/NTSC;
- проверьте AV-кабель;
- убедитесь, что подключён именно жёлтый видеовыход;
- сравните другой AV2HDMI;
- отключите лишний апскейлинг;
- проверьте композитный сигнал на отдельном мониторе.
Сеть
«Нет интернета»
nmcli device status
ip -br address
ip route show default
getent hosts YOUR_SERVER
Разделите проблему:
- нет линка;
- нет IP;
- нет шлюза;
- не работает DNS;
- сервер недоступен;
- исходящий UDP заблокирован.
Работает по LAN, но не по LTE
- недостаточная исходящая скорость;
- CGNAT не мешает исходящему SRT, но может влиять на другие схемы;
- оператор фильтрует UDP;
- модем проседает по питанию;
- неправильный APN;
- нестабильный радиоканал.
Поток
Агент активен, но поток не появляется
systemctl status primecast-agent --no-pager
sudo journalctl -u primecast-agent -n 200 --no-pager
pgrep -af 'primecast-agent|ffmpeg'
Ищите:
- ошибку открытия
/dev/video0; - неподдерживаемый формат;
- ошибку аппаратного энкодера;
- невозможность подключения к SRT;
- повторные завершения FFmpeg.
В логе deprecated pixel format
Это предупреждение FFmpeg о диапазоне цвета. Если картинка нормальная и поток стабилен, предупреждение само по себе не означает отказ.
Если цвета неправильные:
- проверьте формат источника;
- отключите HDR;
- сравните изображение напрямую и через захват;
- зафиксируйте образец кадра;
- передайте инцидент разработчикам кодирования.
В логе EOI missing, emulating
Сообщение относится к неполному JPEG-кадру от UVC-захвата. Редкое одиночное сообщение может не влиять на просмотр. Постоянные сообщения вместе с артефактами требуют:
- замены USB-кабеля или порта;
- проверки питания;
- снижения FPS/разрешения;
- проверки другого HDMI-захвата.
Изображение зависает
- Проверьте исходящую скорость.
- Проверьте потери и джиттер.
- Уменьшите битрейт.
- Проверьте температуру и питание.
- Проверьте предупреждения UVC.
- Проверьте медиареле.
- Сравните браузер и приложение.
Большая задержка
Задержку формируют:
- буфер источника;
- AV2HDMI;
- HDMI-захват;
- GOP;
- SRT latency;
- сеть;
- буфер WebRTC;
- клиентское устройство.
Не уменьшайте SRT latency без теста потерь. На нестабильной сети слишком маленький буфер увеличит количество срывов.
Чёрный экран, но звук или статус есть
- проверьте кодек браузера;
- обновите браузер;
- отключите аппаратное ускорение только как диагностический тест;
- проверьте WHEP-ответ;
- проверьте, поступают ли кадры на MediaMTX;
- сравните с другим клиентом.
Доступ и клиенты
Неверный номер или пароль
Убедитесь, что пользователь вводит:
- номер устройства, а не имя аккаунта;
- пароль устройства, а не пароль аккаунта или SSH.
Сверьте данные на экране модуля. Не просите пользователя отправлять пароль открытым сообщением.
Работает в браузере, но не в приложении
Наиболее вероятно:
- устаревший закреплённый сертификат;
- старый URL внутри клиента;
- корпоративная политика приложения;
- устаревшая сборка.