Задать вопрос
myspacebarisbroken
@myspacebarisbroken

Как бюджетно создать хранилище и сервер для камер видеонаблюдения?

Всем доброго дня! Имеется 19 камер. DCS-933L и еще какие-то ноунейм. На них отсутствует возможность записи, можно только смотреть в лайве. Так вот возникло желание создать сервер для видеонаблюдения, который бы записывал с них видео + через который можно было бы смотреть камеры в лайве. Что посоветуете? Я пока-что пришел к серверу на raspberry + motion eye os и сетевому хранилищу с 1 жд. Пойдет? Или не потянет 19 камер? Хотелось бы бюджетненько уложиться.

UPD: DCS-933L не поддерживают rtsp, что очень печально. Ноунейм-камеры поддерживают) Было решено купить 10 rtsp камер вместо DCS-933L и NVR видеорегистратор.
  • Вопрос задан
  • 6035 просмотров
Подписаться 2 Простой 3 комментария
Решения вопроса 1
A_M
@A_M
Основная специализация - системы видеонаблюдения
Ничего дешевле nvr не получится собрать, смотрите в сторону hiwatch или его более стремных (в сравнении с нормальным софтом, а не rpi) китайских собратьев.
Но сначала нужно для этого прекрасного dlink-овского куска найти ссылку на rtsp-поток, встречал модели этого бренда без rtsp и onvif.
Ответ написан
Пригласить эксперта
Ответы на вопрос 8
@Drno
купить видеорегистратор hiwatch \ hiksivion и подключить в него камеры по onvif \ rtsp

Ваш вариант с распбери и дороже и хуже
Ответ написан
@rPman
Не смотрите в сторону малинок почти что никогда (хотя они хороши в робототехнике, там хороший набор карт расширений) - отстойнейшая поддержка ОС и всего вокруг.

Выбирайте интелевские x86 SoC, J серия с mitx платами очень хороша, и по ценам, и по производительности на ват. На их основе собирать маломощные (хотя J5xxx очень не плохи да еще и с 16gb ram) домашние сервера и рабочие машинки.

Что бы выбрать хранилище, нужно сначала померить, какой объем даннх необходимо сохранять.. не приблизительно, а на практике, попробовав часть из камер попробовать сохранить на любой десктопной машине с ssd (что бы уж наверняка)... и это будет трафик только на запись. У hdd есть неприятная особенность, ронять скорость работы при одновременной работе нескольких приложений... если одновременная запись с нескольких камер может считаться одним потоком (и будет работать на максимуме возможностей устройства, а это порядка 150мбайт/с даже для дешевейших toshiba 3tb 5400rpm) то достаточно одному пользователю начать считывать видео из истории, скорость может упасть от 2х до 10х раз (зависит от софта, если данные будут считывать большими кусками порядка десятков/сотен мегабайт, то только уронит скорость в половину).

p.s. твои камеры навряд ли дадут больше 2мбит/с, а 19 таких - от силы 5мбайт/с, т.е. такой трафик потянет любой диск даже в худшем
Ответ написан
@Dupych
SecureOS Lite. Ищи в игете.
Бесплатная на 32 камеры.
Немного непонятная в настройке.
Но цепляет кучу типов камер и есть монитор камер.
Нужен хороший проц не ниже 4 ядра и 8 гигов оперы.
Распбери ге подойдет. Не вытянет.
Если хочешь собрать NAS то OenMediaVault. ISCSI Target.
Надежно и просто.
У меня по ISCSI Target бэкапы подключены и никаких отвалов.
Ответ написан
Комментировать
@skameat
Я уже очень давно все подобное делаю на revisormvs, хоть и коммерческая, но глюки в работе только из за зависания камер. В офисе 28 камер, комп уровня core i3.
Ответ написан
Комментировать
@rostislav-zp
Попробуйте погуглить "dva1622 synology","xpenology arc loader". Отлично ставится на большинство сборок ПК.Ну или нормальный регистратор,как выше вам советовали.

Ответ написан
Комментировать
@Apasnychel
Я уверен что эти камеры поддерживают rtsp
Соответственно, вот код который записывает видио, паралельно запускай столько, сколько у тебя камер.
import cv2

# Укажите URL вашего RTSP потока
rtsp_url = "rtsp://username:password@IP:port/stream"

# Открытие потока
cap = cv2.VideoCapture(rtsp_url)

# Проверьте, удалось ли открыть поток
if not cap.isOpened():
print("Не удалось подключиться к RTSP потоку.")
exit()

# Параметры записи видео
frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
fps = int(cap.get(cv2.CAP_PROP_FPS)) or 25 # Если FPS не определен, задаем 25

# Кодек и выходной файл
output_file = "output_video.avi"
fourcc = cv2.VideoWriter_fourcc(*'XVID') # Выбор кодека
out = cv2.VideoWriter(output_file, fourcc, fps, (frame_width, frame_height))

print("Начинается запись видео... Нажмите Ctrl+C для остановки.")

try:
while True:
ret, frame = cap.read()
if not ret:
print("Поток завершен или возникла ошибка.")
break

# Запись кадра в файл
out.write(frame)

# Если нужно отобразить кадр в окне
cv2.imshow("RTSP Stream", frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
except KeyboardInterrupt:
print("Запись остановлена пользователем.")

# Освобождение ресурсов
cap.release()
out.release()
cv2.destroyAllWindows()
Ответ написан
@DuD
Еще можно попробовать scrypted. Умеет отдавать даже в homekit.
Ответ написан
Комментировать
@Elias292
Хм...
Я делал ... и DCS-933L тоже были. Они видеопоток умеют. или у меня 942 были?
Покупается китайская материнка, они щас дешёвые. Но лучше двухпроцессорные, так как на каждую камеру нужно свое ядро, иначе пропуск кадров будет при детекции движения.

Ставится линукс, на нем zoneminder
все камеры заводятся два раза:
1) с детекцией движения. И запись по движению.
2) Чисто запись потока.

Диски... Нужен один маленький ssd под базу данных.
И hdd диски для собственно записи видео.

У меня сделано так.
Вполне справляется.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы