Nginx для раздачи mjpeg-потока?

Есть поток mjpeg с ZoneMinder (http). Он всегда один (одна камера), только клиентов для него много. Получается, что Zoneminder создает отдельный cgi-процесс для каждого подключенного клиента, прилично нагружая процессор.


Можно ли на nginx раздавать один поток всем клиентам? Или скажем — умеет ли он раздавать «Content-Type: multipart/x-mixed-replace;boundary=...» не дублируя источник?


Просто проксировать демон Zoneminder он умеет, но точно так же создает поток под каждого клиента.
  • Вопрос задан
  • 4612 просмотров
Пригласить эксперта
Ответы на вопрос 4
opium
@opium
Просто люблю качественно работать
Нативно точно не умеет, вам надо что то вроде erlyvideo или vlс
Ответ написан
Комментировать
vsespb
@vsespb
лет 5 назад писал сервер, раздующий mjpeg именно так как Вы хотите. думаю nginx не умеет. там не так всё тривиально. может модуль какой есть.
Ответ написан
nogoody
@nogoody
программист
Когда-то делал видео сервер через vlc
Принимал rtsp, отдавал flv прям под плеер
cvlc rtsp://192.168.0.103:554 --sout
'#transcode{vcodec=FLV1,vb=256,fps=4,scale=1,acodec=none,samplerate=22050}:http{dst=:8081/stream.flv}'
--rtsp-cahing=2400 --video --no-sout-audio --udp-caching=30000
--http-caching=5000


данная команда берет поток rtsp://192.168.0.103:554 и ретранслирует
его на 8081 порту по адресу /stream4.flv
параметры кэша получил опытным путем, для каждой локалки по разному

Для вашего случая поменять vcodec под mjpeg
Ответ написан
@Omni
4.livejournal.com/57552.html?thread=2557392#t2557392 - другого способа сообщить не нашел, всё отрублено :-) Сорри за неудачную попытку публикации и пропажу Вашего комментария.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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