19.04.2021

Raspberry pi bdsm ip cctv + микрогном

Два года проект валялся в столе ибо не было желания вникать в ONVIF с полной уверенностью что 100+ одновременных потоков это удел очень сурового железа, однако (с) совершенно случайно выяснилось что обернуть RTP в банальный AVI не так уж муторно и с этим может справиться даже имитация процессора. Пока всё в глубочайшей [попе] альфе, о чём намекает по два эксепшена на одно осмысленное событие (азаза это рекорд), но работает

В VNC и двух терминалах через SSH болтается RPi3 + очень медленная SD карта + старый стретч
40 IP камер с разрешнием 2-3Мп и потоком ~0.5..0.8Мб/с подключены по сетке
Через HDMI подключен 1080 моник, который собсно видно в VNC (тигрь!)

Чито может:

  • на калечную карту может одновременно писать основной поток c 20 камер, больше 25 — упирается в карточку примерно через 5 секунд.
    Можно было бы подвылечить кешем, отдав метров 200-300 оперативы, но после праздников просто перекину всё на RPi4 с шустрой картой и внешним диском, по логике должно получиться 100+ потоков
  • суб поток ~150 камер, тут уже 3b в целом начинает сдавать
  • запись 16 каналов и одновременная обработка 12 каналов быстрых данных от приборов отжирают в top’е всего 22% ядра и 14% памяти (хз как top считает, на самом деле больше — один канал камеры слопывает около 2-3%, обработка около 10% в сумме)

Чито не может:

  • 351% это всего-то отрисовка двух камер — одна в реальном времени, вторая из записи. тут всё пИчально до боли но этим пока особо и не занимался. Без отрисовки по top’у интерфейс лопает процентов 20-30 «в простое» (если не двигать окна, если двигать то чуток упирается в свой свинговский однопоток но в 1080 всё довольно шустро)

Скрин из под обычного ПК с OL и гномом 3.28 на 4к монике. Сия древность не умеет во fractional и я долго не любил его за огромные элементы управления при scale=2, но случайно решил зайти к вопросу с боку и в целом мне понравилось — выставлен scale=1, а вот скейл шрифтов 1.75 (на практике это немного перебор, 1.65 в самый раз).
В итоге:

  • нужные элементы интерфейса (кнопки/бары/меню) — в самый раз
  • не шибко нужные элементы интерфейса (кнопки управления окном/разделители) меньше нужного но не мешают
  • на удивление такой скейл не ломает ни firefox ни eclipse (в эклипсе мелкие значки и тексты подсказок но не шибко мешает и подсказки по идее можно починить) ни даже java приложения (как минимум на 11). Пока не пробовал капризную, в этом плане, RawTherapee но у неё на случай беды есть костылик
  • гном тормозит меньше чем со scale=2 :-)
    Большинство приложений выглядят «немного не так» но реальных багов масштабирования пока не замечено ни одного и в плане удобства, лично по мне так знамо лучше стало.

>>> Просмотр (3840×2160, 2642 Kb)

Источник.