У меня есть несколько автономных сетевых камер безопасности (Axis 2100, они довольно старые), которые я хочу транслировать на веб-сайт.Камеры поддерживают потоковую передачу в формате MJPG, но для потоковой передачи видео с этих камер я должен сделать их общедоступными.Из соображений безопасности я хочу ограничить просмотр этих камер через мой веб-сайт, где я могу аутентифицировать пользователей.Поскольку веб-камеры находятся на отдельном хосте, я использую cURL и PHP для входа в камеры, получения потока изображений MJPG и отображения живого потока для отображения на веб-странице.
header('content-type: multipart/x-mixed-replace; boundary=--myboundary');
while (@ob_end_clean());
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://XX.XXX.XXX.XX/axis-cgi/mjpg/video.cgi?resolution=320x240');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY | CURLAUTH_ANYSAFE );
curl_setopt($ch, CURLOPT_USERPWD, 'USERNAME:PASSWORD');
$im = curl_exec($ch);
echo $im;
curl_close($ch);
Проблема заключается в том, что когда у меня несколько сеансов с попытками доступа к одной и той же странице php с кодом выше в одном браузере, загружается только один сеанс, в то время как остальные остаются пустыми и в итоге отображают 500 внутреннихОшибка сервера.Он работает, когда он открывается через несколько разных браузеров, но с ухудшением производительности.
В конечном счете, я хотел бы сделать его сервером веб-камеры, где я мог бы установить соединение с одним входным потоком с камеры и транслировать его нанесколько клиентов.
Мой сайт размещен на GoDaddy на сервере Linux, а я не на выделенном сервере, поэтому я не думаю, что смогу установить какой-либо причудливый сервер с открытым исходным кодом для видеопотока.
Спасибо и простите за такой длинный пост.
-T.Ho