Найти в Дзене
Vitaly A.

Один из лучших программных IP-видеорегистраторов. Xeoma

Хочу обратить внимание профильного сообщества о софтовом видеорегистраторе Xeoma. Изначально у меня была восьмиканальная плата IP-регистратора XM на базе Hisilicon Hi3798M. Всем меня устраивала, кроме трёх бесячих моментов. Во первых - полностью отсутствующая предзапись, во вторых - отсутствие детекции движения в регистраторе, что в купе с дубовой детекцией движения камер сводит на нет всю

Хочу обратить внимание профильного сообщества о софтовом видеорегистраторе Xeoma. Изначально у меня была восьмиканальная плата IP-регистратора XM на базе Hisilicon Hi3798M. Всем меня устраивала, кроме трёх бесячих моментов. Во первых - полностью отсутствующая предзапись, во вторых - отсутствие детекции движения в регистраторе, что в купе с дубовой детекцией движения камер сводит на нет всю запись по детекции движения. В третьих - крайне корявая работа с H265, из за чего мне приходилось выгружать файлы .h264 на флешку (а не по сети), а затем править в них заголовок с H264 на HEVC. А если файл объёмом 1-2 гигабайт, то это то ещё "удовольствие".

Начал изучать рынок более продвинутых аппаратных регистраторов для решения своей проблемы, но если вопрос предзаписи и нормальной конвертации результата ещё можно решить покупкой какого-нибудь брендового Dahua или Hikvision, то вот вопрос с детекцией движения не решаем никак в аппаратных решениях.

Поэтому решено было перейти на софтовое решение. Изучив их ассортимент я решил, что бесплатного сыра не бывает, поэтому остановил свой взор на платных решениях с относительно небольшой ценой за канал. Мне очень понравилось, как всё красиво расписано о преимуществах Xeoma... И своя детекция движения, и аппаратное ускорение, и H264/H265, и распознавание номеров/лиц.

Ссылка на сайт разработчика

материал с сайта разработчика
материал с сайта разработчика

Поэтому воодушевился данным описанием и начал собирать системник под софтовый видеорегистратор. Для этих целей приобрёл материнскую плату формата miniITX на чипсете A320, четырёхъядерный процессор Ryzen 3 Pro 3200GE со встроенным видеоядром Vega8, 8 гигабайт оперативки DDR4-2666, 450Вт блок питания формата STX, 120Gb NVME SSD под операционную систему и программное обеспечение.

общий план размещения мини-компьютера
общий план размещения мини-компьютера
-3

В итоге вышло мне это удовольствие примерно в 22 тысячи рублей (по ценам сентября2020). И это не считая того, что жёсткий диск на 4Tb у меня уже был от предыдущего регистратора, также как и монитор. Но разместилось всё компактно в сейфе, благодаря своим габаритам.

Далее я установил бесплатную операционную систему MX-Linux, после чего связался с технической поддержкой Felenasoft и получил бесплатно "пробный" ключ на 8 видеокамер. Изначально первое впечатление у меня было глубоко положительное, благодаря чему я планировал написать бочку мёда (положительного) и ложку дёгтя (отрицательного). Однако постепенно, в процессе месячной эксплуатации, ложка дёгтя перерастала в плошку, затем в банку, затем в кастрюлю Поэтому отзыв будет не очень позитивный...

И так, начнём по порядку. Первое, с чем я столкнулся - это с плохой совместимостью IP-камер c Xeoma. У меня пять IP-камер. Okayvision PTZ-HD54F20X500, Besder HX-HD20M200AS на базе модуля Camhi с чипом Hi3516CV200, а также три камеры на базе софта XM. Три камеры умеют H265, две - только H264. Xeoma цепляется к камерам по RTSP-потоку. Часть камер при подключении к Xeoma у меня отрубалась, в одной не работал H265 поток. По итогу я связался с технической поддержкой и они помогли решить все мои проблемы, кроме совместимости H265 потока от Okayvision с Xeoma. Я даже пробрасывал порт с камеры в интернет на техническую поддержку, но они пришли к выводу, что камера H265 не транслирует в RTSP. Поэтому мне пришлось для осущестdления работоспособности уйти на H264. В итоге я получил все пять работоспособных камер на Xeoma.

-4

Далее у меня возникли вопросы к оптимизации. С удивлениям для себя я обнаружил, что Xeoma поддерживает аппаратное декодирование, но только для QuickSync от Intel и CUDA от nVidia. В итоге я со своим Ryzen и видео Vega8 сразу по аппаратному декодированию иду лесом. Я связался с технической поддержкой и там мне пояснили, что AMD не выкладывала свой API для аппаратного ускорения в общий доступ, в отличие от Intel и nVidia, поэтому для AMD нет оптимизации. Однако я простым гуглением очень быстро установил, что в мае 2020 AMD выложила свой API в открытый доступ и уже часть программных продуктов начала поддерживать аппаратное ускорение (например продукты Adobe). Я довёл эту информацию до технической поддержки и мне пообещали разобраться в ситуации. Но в итоге я получил со своим Ryzen следующие цифры... Одна камера в 4MP-потоке и четыре камеры в 2MP-потоке съедают у меня производительность 60-65% четырёхъядерного процессора, заставляя его ядра трудиться на частоте в 3Ghz (у меня частота процессора напрямую варьируется от нагрузки. в простое процессор работает на частоте 700Mhz), что довольно многовато. А вот по оперативной памяти всё очень пристойно - Xeoma, обрабатывая 5 IP-камер, съедает около 4Гб оперативки из 8Гб, при этом не трогая swap (у линукса с этим всё очень хорошо). В инструкции написано, что применение одной видеокарты 750Ti позволяет "прокормить" 4-5 камер, а если видеокарта будет 1060, то можно прокормить десятки IP-камер с помощью аппаратного ускорения. Надо будет попробовать взять у кого-нибудь видеокарту и опробовать в деле это аппаратное ускорение.

Затем я начал настраивать детекцию движения и настройки архивации. И вот тут меня ждал культурный шок после видеорегистратора XM. Xeoma подхватывает RTSP-видеопоток от камер (вне зависимости от того, в H264 он или в H265), затем анализирует его картинку на предмет наличия движения, после чего сжимает в единый формат и помещает в контейнере MKV на жёсткий диск. Например я указал для каждой камеры на жёстком диске свою папку и Xeoma раскидывает mkv в папки от видеокамер.

скриншот окна настройки записи
скриншот окна настройки записи

Детекция движения работает в такой ситуации просто невероятно! С высоты 50 метров на 2-мегапиксельной камере детектируется каждый человеческий силуэт, проходящий в зоне действия камеры. При этом с помощью предзаписи и постзаписи в архив записывается именно фрагмент с движением) в настройках есть очень значительные настройки чувствительности, размера детектируемых пикселей, зоны действия детектора. На высшей чувствительности у меня доходило даже до того, что детектор срабатывал на светодиоды сигнализаций припаркованных машин с высоты 50 метров на 4-MP потоке с фокусным расстоянием 8мм.

скриншот окна настройки детекции движения
скриншот окна настройки детекции движения

Ещё очень понравилась визуализация детекции движения при просмотре на мониторе. В режиме реального времени движущийся объект выделяется полупрозрачными рамками и выделяется по всему пути движения. Далее меня впечатлила предзапись в Xeoma. Предзапись регулируется в диапазоне от 250ms до 30 минут. Также можно индивидуально настроить размер архива для каждой камеры. К слову - на регистраторе XM у меня две камеры работали по детекции движения, а три с постоянной записью. Жёсткого диска 4Tb в таком режиме хватало на месяц. Сейчас все пять камер работают только по движению (одна переведена из H265 в H264) и объёма 4Tb диска хватает на 55 дней.

Далее меня очень впечатлила конвертация из архива. Очень удобно можно соединиться клиентом с сервером, просмотреть архив по детекции движения в очень большом диапазоне скорости просмотра (от 0,05х до 900х),

-7

Затем выбрать нужный фрагмент и сохранить без перекодирования в AVI, MP4, MKV. Можно перекодировать в WEBM, AVI (Mpeg4), WMV. Ну и, естественно, скинуть снапшоты в разных графических форматах.

-8

Видеозаписи без перекодирования скидываются по сети ОЧЕНЬ быстро. Если перекодировать в AVI (mpeg4), то скидывается уже подольше, но всё равно быстрее, чем в регистраторе от XM.

А вот к интерфейсу у меня в процессе эксплуатации появилось много претензий... Основной претензией по интерфейсу к регистратору XM у меня было, невозможность вывести изображение с одной камеры на большую часть экрана в результате движения, а менее нужные камеры разместить маленькими квадратиками на экране. В Xeoma я столкнулся с такой же проблемой. В настройках Xeoma можно вывести на большую часть экрана сработавшую по детекции движения камеру, но только такая настройка действует для ВСЕХ камер. То есть у меня все пять камер постоянно мелькают при срабатывании детектора движения. Вроде бы элементарная настройка, а такой нет. Связался с технической поддержкой по данному вопросу - мне предложили "костыли" в виде распараллеливания камер. Вместо пяти камер я получил десять. Каждая камера с детекцией и каждая камера без детекции.

-9

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

Далее проблема с интерфейсом в том, что у меня камеры 16:9 а экран делится на 6 камер и в результате у каждой камеры сверху и снизу чёрные полосы. Мне казалось очевидным, что в софтовом регистраторе можно окна раздвигать и сдвигать на экране до любых удобных размеров, но разработчикам Xeoma это не столь очевидно. Написал по данному поводу в техническую поддержку - пообещали включить данную "инновацию" в план перспективных разработок.

-10

Далее хотелось бы поговорить о ценах... Лицензии покупаются четырёх видов: Starter (запись до двух камер за 500руб.), Lite (запись до 4 камер за 3200руб.), Standart (запись до 3000 камер (4 камеры стоят 6200), Pro (запись неограниченного количества камер (4 камеры стоят 18400руб.), . Так как мне нужно 5 камер с детекцией движения (в Starter и Lite, как я понял - детекции нет), то приобрёл 4 лицензии Standart +1 дополнительная лицензия Standart. Но стоит отметить, что лицензии хоть и бессрочные, но в пакеты Standart и Pro включён только год обновлений (для Lite и Starter обновления бессрочные). Т.е. через год вам перестанут приходить обновления, но работу видеосервер продолжит. Если без заморочек, как мне, нужна запись+детекция, то без обновлений вполне можно пережить... Оно и так работает вполне корректно.
Также к лицензиях "Standart" и "Pro" за дополнительную плату можно подключать кучу дополнительных модулей. Например распознавание лиц, автомобильных номеров, захват экрана, FTP-приёмник, HTTP-приёмник, PTZ-слежение, счётчик посетителей, детектор объектов, распознаватель объектов, слежение за спортивным событием, ограничитель размера объектов, маскирование зон, детектор дня, детектор звука, поворот изображения, Face ID, распознавание QR-кода, считыватель карт доступа, распознавание пола, детектор лиц (эмоций), контроллер Modbus, уменьшение и обрезка изображения, управление GPIO, отправка e-mail, отправка SMS, веб-сервер, RTSP-транслятор, отправка HTTP-комманд, звуковой сигнал, запуск приложения, уведомление на мобильных устройствах, детектор оставленных предметов, детектор дыма, детектор пересечения линии, детектор праздношатания, отправка автономеров на FTP, распознаватель цвета, детектор скопления людей, определение скорости автомобиля, распознаватель возраста, детектор звуковых событий, детектор строительной безопасности, прямая трансляция на youtube, парковочные места, но на практике у меня не было необходимости их использовать, поэтому не готов оценивать эффективность работы этих модулей. Пробовал только Трансляцию на youtube. Удивительно легко запускается трансляция, но проблема в том, что youtube ограничивает трансляцию 6-часами, поэтому применение на постоянной основе под вопросом (написал в техническую поддержку по данному поводу - разбираются с вопросом). Также Xeoma предоставляет за дополнительную плату облачный сервис записи и просмотра видео.

Дополнительно хочу отразить, что разработчики не бросают своё детище. Я приобрёл лицензию ещё пол года назад (и у меня уже есть полугодовой опыт использования). За это время в программе появились следующие функции: распознавание текста в кадре, детектор социальной дистанции, мобильные уведомления без подключения к серверу, контроллер Modbus, распознаватель возраста, детектор лиц (эмоции), распознавание лиц, детектор падения, прямая трансляция на youtube, детектор оставленных предметов, детектор огня, распознавание пола, Face ID, распознавание цвета, детектор звуковых событий, ограничитель размера объектов, детектор дронов и самолётов, парковочные места, слежение за спортивным событием, детектор падений, отслеживание движений глаз, модуль с IP-микрофонами, обрезка, уменьшение и поворот изображения, детектор скопления людей.

Так как сама Xeoma может быть установлена не только на Windows и Linux, но ещё и на ARM-компьютеры, то на сайте разработчика появился очень познавательный отзыв об установке серверной части на Raspberry Pi4.

Ссылка на отзыв

Ну и ещё хотелось бы резюмировать вопрос энергопотребления. Так как я неоднократно слышал упрёки, что видеорегистратор на базе компьютера потребляет большое количество электроэнергии - у меня получилось сравнить современный компьютер с процессором, энергопотребление которого понижено до 35Вт со standalone видеорегистратором.

Так как количество камер и другие энергопотребители не изменились, то наиболее наглядно продемонстрирует разницу "ночной тариф". В течение года у меня счётчик электроэнергии фиксировал ежемесячное ночное потребление примерно 65-66 киловатт в месяц. После установки видеорегистратора на базе PC - потребление "подскочило" до 71 киловатт (за октябрь).

-11

Резюмируя всё вышесказанное - мне нужна была предзапись, качественная детекция движения и удобная архивация. Всё это я от Xeoma получил. Также я надеялся на более удобный и гибкий интерфейс с аппаратным ускорением - тут мои ожидания не оправдались. Но хотелки и необходимость - разные вещи. Поэтому считаю, что Xeoma со своими первоочередными задачами справилась. Но какой ценой... 22тысячи железо + 6тысяч софт. Против автономного регистратора XM за 2300 рублей. Меня успокаивает только то, что за эти деньги я получил ещё и дополнительный энергоэффективный универсальный инструмент, работающий круглосуточно, на который можно повесить FTP-сервер, DLNA-сервер, Torrent-качалку, NTP-сервер, VPN-сервер...