Я искал способ прокси-потока mjpeg от сетевой камеры AXIS M1114.
используя следующую настройку URL
http://host:port/axis-cgi/mjpg/video.cgi?resolution=320x240&camera=1
я пытаюсь захватить выходные данные и сделать их доступными для пользователей с помощью php-скрипта, работающего на сервере Apache в Ubuntu.
просмотрев сеть в поисках ответа безрезультатно я прихожу к вам.
моя конечная цель состоит в том, чтобы пользователи могли ссылаться на прокси-сервер следующим образом:
<img src='proxy.php'>
и иметь подробную информацию обо всех вещах в proxy.php.
Я попытался использовать способ cURL (рекомендуется в аналогичной теме здесь), но я не могу заставить его работать, вероятно, из-за недостатка знаний о внутренней работе.
в настоящее время мой очень простой proxy.php выглядит так
<?php
$camurl = "http://ip:port";
$campath = "axis-cgi/mjpg/video.cgi";
$userpass = "user:pw";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $camurl + $campath);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'resolution=320x240&camera=1');
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, $userpass);
$result = curl_exec($ch);
header('Content-type: image/jpeg');
echo $result;
curl_close($ch);
?>
Насколько я понимаю, это даст приемлемый результат для моего плана. Но увы.
Мой вопрос будет, если есть явная ошибка, которую я не вижу. Любой более простой вариант / способ получения результата, к которому я стремлюсь, тоже приветствуется.
Пожалуйста, укажите мне в правильном направлении. Я с радостью предоставляю любую соответствующую информацию, которую я мог пропустить. Заранее спасибо.
решено редактировать:
После комментирования:
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true);
изменения
curl_setopt($ch, CURLOPT_URL, $camurl + $campath);
в
curl_setopt($ch, CURLOPT_URL, $camurl . $campath); (mixing up some languages)
и, самое главное, удаление пробела в файле .php, так что заголовок фактически является заголовком, который вроде как делает то, что я хотел.
Задача ещё не решена.
Других решений пока нет …