У меня Nginx на Openwrt BB (wndr3800) с обратным проксированием на ip-камеру dlink 932LB1, и он работает хорошо.Никаких значительных задержек, даже до того, как я отключил proxy_buffering.Если у меня много информации по сети, видео может стать прерывистым, но не более, чем при прямой ссылке на камеру из браузера (или из любого из моих приложений ip cam).Так что ... это возможно.
Nginx был для меня способом.Я пробовал tinyproxy & lighttpd для обратного прокси, но у каждого из них отсутствуют функции в OpenWrt.Как tinyproxy, так и lighttpd требуют настраиваемой компиляции для функций полного обратного прокси, и (AFAIK) lighttpd не будет принимать полные доменные имена в директиве прокси.
Вот что у меня получается:
- Basicили дайджест аутентификации на общедоступной стороне. Nginx обеспечивает контроль доступа по всему сайту.
- Я передаю свои CGI-скрипты (shell, haserl и т. д.) в uhttpd Openwrt.
- Тщательно управляемый обратный прокси-сервер к камереAPI mjpeg & jpeg, никакие другие функции камеры не доступны для общего доступа.
- Базовая авторизация камеры обрабатывается Nginx (proxy_set_header), поэтому внутренний код авторизации не доступен для публики.
- Относительно небольшая площадь(без perl, apache, ruby и т. д.).
Я бы включил сюда свой файл nginx.conf, за исключением того, что в этом нет ничего необычного ... только голые прокси.Вы можете попробовать tcpdump или wireshark, чтобы увидеть, что загромождает вашу локальную сеть, если трафик действительно является вашим виновником.
Но, похоже, что-то в вашем маршрутизаторе является причиной задержки.Возможно, аппаратное обеспечение просто не может справиться с нагрузкой на процессор / трафик, или может быть что-то еще в вашей настройке Openwrt, которая загружает шоссе.Ваше видео гладкое и просто задерживается?Или вы смотрите серьезно нестабильное видео?Упомянутая вами задержка удлинения звучит как буфера / кеша ... но я не знаю, что будет делать это.