LINUX.ORG.RU

Raspberry Pi 4 B под видеонаблюдение

 ,


0

1

Привет. Хочу прикрутить какой-то мини компьютер к неочень умному телевизору для отображения камер. На тытрубе видел успешные проекты на малинке, но почему то важные моменты никто особо не освещает.

Во-первых, на что можно расчитывать в плане видеопотока при использовании малинки? Сейчас у меня 4 IP камеры, которые отдают 1080р25. На регистраторе я могу урезать до 720р25. Ниже не хотелось бы. Потянет ли малинка 720р25 в 4 потока (около 2к битрейт по каждому)? Если да, какой нужен кодек? И потянет ли она еще несколько (2-4), если захочу добавить камер? Речь идет об отображении 24/7/365 и именно об отображении. Запись на диск идет на самом регистраторе.

Во-вторых, достаточно ли будет при таком использовании (rj-45+minihdmi+sd) блока питания 5В/2,5А? Или все же нужно 5В/3А? Под рукой нет блоков на 3А, а в магазинах ценник на них под малинку от 1500, когда у 2,5 от 500 деревянных.

В-третьих, как малинка и sd в частности переносят отключения питания? Бывает, пошаливают горсети. ИБП ставить не хочется под нее. Если, допустим, последовательно запитать от повербанка, который будет на постоянке подключен к розетке?

Что из дистров посоветуете на такой случай? На офсайте советуют их собственный Raspberry Pi OS на основе дебиана. Желательно без компиляний с готовыми бинарными пакетами в репах под мои задачи.

Надеюсь, тут есть опытные энтузиасты по малинке и линуксу.

Я пользуюсь питанием Belkin на 2,4 А. На ЛОРе мне сказали, что это - оверпрайс. Но после нескольких блоков питания и кабелей, которые оказались некачественными, я готов заплатить подороже, лишь бы работало хорошо. И работает. Значка молнии, сигнализирующем о просадке напряжения, больше нет. Процессор больше не троттлит, а в те моменты, когда раньше был особо сильный троттлинг, теперь показывает не молнию, а термометр. Overheat вместо Over-voltage.

Что касается системы видеонаблюдения. На устройстве есть несколько линий данных. Одна - на USB, и на ней «висит» много устройств. Контроллер SD-карты, Ethernet, Wi-Fi, Bluetooth. Что-то ещё там висит. В итоге, когда ты подключаешь устройство по USB, оно работает медленнее, чем может, потому что шина USB уже занята кучей других устройств. Это всё равно, что к одному разъёму USB подключить USB-хаб, и к нему - несколько устройств. Тут то же самое, с той лишь разницей, что ты не видишь физическое подключение остальных устройств к разъёмам.

Поэтому камера, подключенная по USB, выдаст 2 FPS в разрешении 1080p.

На Raspberry Pi есть один разъём для видеокамеры. К нему идёт отдельная линия данных, и на ней можно получить 1080p30. При этом, на графическом чипе есть аппаратный кодер, поэтому, если твой софт это поддерживает, можно кодировать аппаратно. Поддерживает аппаратное кодирование, например, MotionEye.

Аппаратный кодировщик использует API OpenMAX IL. Но на самом деле используется API MMAL, а OpenMAX работает поверх него. Разработчики Raspbian OS добавили в VLC и Chromium поддержку MMAL для воспроизведения видео. Исходники доступны по команде apt-get source vlc-nox Только, судя по патчу debian/patches/20_mmal.patch, они правили непосредственно исходники.

На плате, помимо разъёма I²C для видеокамеры, есть ещё один разъём I²C для подключения тачскрина. Неужели это отдельная линия данных, к которой можно подключить ещё одну видеокамеру? Увы, нет: I²C это всего лишь разъём, и его контакты ведут совсем в другое место, нежели нужно. Однако можно приобрести Raspberry Pi Compute Module, и на нём, как ты видишь на картинке: несколько разъёмов под камеру: http://opennet.ru/opennews/art.shtml?num=39521

Насчёт качества самих камер я не могу ничего сказать. С инфракрасным портом я таких не встречал.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Я очень извиняюсь, но мой комментарий не в тему. Я отвечал про Raspberry Pi 3, а топикстартер спрашивает про Raspberry Pi 4. На RPi 4 нет проблем с перегруженным USB, поэтому обычные IP-камеры подойдут.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Все равно полезная инфа, спасибо. У меня в любом случае камеры сначала через NVR, а потом потоком по сети к малинке будут. Ну и кодирование меня особо не интересует, больше декодирование, т.к. кроме камер на малинке ничего не будет происходить. Хотя может фильмы попробую погонять по сети…

Poduska
() автор топика
Ответ на: комментарий от ZenitharChampion

Камеры по I2C только конфигурируются, данные идут по mipi-csi. I2C шину для настроек какую хочешь можно использовать.

slapin ★★★★★
()
Ответ на: комментарий от ZenitharChampion

К слову как минимум на RPi 4B аппаратный енкодер (и наверное декодер) работают в том числе и без юзерспейсных openmax-драйверов - просто через v4l2 API. Конкретно в терминах gstreamer это фильтры v4l2h264enc и v4l2h264dec.

Поставил на raspbian docker и 64-бит ядро, внутри запустил ubuntu arm64 без какихлибо специальных файлов для raspbian и там v4l2h264enc прекрсано работают, процессор не кушают.

Так что юзерспейсные openmax-драйвера - отнюдь не обязательны. Тем более они кажется блобы?

GPFault ★★★
()
Последнее исправление: GPFault (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.