В здании ГУ функционировала аналоговая система видеонаблюдения. Регистратор установлен в серверной (далеко от всех потребителей). Необходимо постовому видеть все камеры. Расстояние от постового до регистратора 120 м. Решили передавать видео по выходу коаксиалу с установкой активного конвертера на VGA монитор постовому.
Спустя некоторое время в здании начали устанавливать IP камеры и писать их на IP регистратор. Стал вопрос КАК видеть эти камеры постовому и “другим” пользователям.
В этом году провели модернизацию системы видеонаблюдения – поменяли аналоговую систему на AHD Partizan. Монтаж новых камер был выполнен используя существующую кабельную систему.
Какие проблемы появились у меня и как я их на данный момент решил.
- В наличии 3 регистратора
1-AHD-16ch-Partizan,
1-IP-16ch-Partizan,
1-IP-16ch-Hikvision.
У каждой железки свой софт и он работает ТОЛЬКО!!!! под винду и ТОЛЬКО!!! под IE. - Камеры захотело смотреть уже 6 человек и это не конец (((.
- Практически у всех уже стоит LinuxMint, а под ним их софт не работает.
Итак, постовому пришлось ставить комп и туда ставить родной софт от регистраторов (который неплохо нагружает проц, а хоронить нормальный комп – ну нету никакого желания).
Кроме этого аналогичный софт стоит еще у 4-х человек и регистратор не справляется с раздачей каждому по 16 потоков. Случаются частые разрывы, в результате чего картинка начинает отставать от реальности. За ночь отставание набегает на 30 минут.
У кого стоит LinuxMint – естественно, ничего не работает априори.
Первое, что пришло на ум – брать rtsp поток и через vlc плеер его показывать. Да, это работает, но не нравится никому, все привыкли видеть все камеры и кликом ее увеличивать. Данный финт это не может.
Что же мне поможет? Уволится нахрен из этого дурдома.
Вот как я решал эту ситуацию.
- Аналоговый DVR умеет отдавать по rtsp main и sub потоки.
- IP DVR также умеет отдавать такие же потоки.
- rtsp поток можно брать напрямую с IP камер.
А помог мне собрать все потоки и перераздать его дальше avreg.net. На этой системе у меня лет 8 работает система домашнего видеонаблюдения без нареканий!!!
Итак,
1. Поднял на виртуалке последнюю ubuntu и установил сервер видеонаблюдения.
Стандартная лицензия разрешает писать 4 камеры бесплатно, но мне писать не нужно – значит я могу в режим просмотра завести более 4 камер – что и было сделано.
Для захвата потока с регистратора была в интернете найдена строка для моего регистратора вот такого вида:
/user=555&password=666&channel=1&stream=1.sdp
где,
user=555 – логин
password=666 – пароль
channel=1 – номера канала
stream=1.sdp – sub поток с разрешением 352×288
stream=0.sdp – main поток с разрешением 928×576
Завел на avreg 16 каналов аналогового регистратора
и 4 камеры того же регистратора, но качественного потока (для пробы) – все показывает отлично.
Смотреть все это можно только Firefox-ом. Для этого необходимо выполнить следующую настройку.
– ввойти в режим настройка – набрать в адресной строке about:config и нажать кнопку
– в строке поиска
написать http.max-persistent-connections-per-server
и установить значение максимальному количеству просматриваемых камер -16 или 32.
после этого в браузере будут показывать все 16 камер вместо 4 по умолчанию.
Далее создаем в сервере пользователей, и раздаем им нужные камеры для просмотра, и незабываем создать нужные раскладки, если будете использовать различное количество камер для отдельных пользователей.
Для удобства создаю три раскладки: 1- все камеры, 2-улица, 3-здание. Данным деление добиваемся меньшего количества камер на экране что отражается на увеличении геометрии каждой камеры.
Теперь любого “желающего”, не зависимо от операционной системы, я могу безболезненно подключить к камерам.
Таким же способом подключаются потоки с имеющихся IP камер и пользователю ненужно устанавливать различное ПО для их просмотра. Все решается одним ресурсом.
Статистика.
Скрин с Proxmox
На графике показан взлет – момент где было изменено разрешение на 16 аналоговых камерах с 352х288 на 704×576.
Вывод команды top
Думаю, что такое решение пригодится многим, или нет?