1

我有一个网络摄像头,我正试图将其设置为公开。网络摄像头是公开可用的,但每次观看人数翻倍时,刷新延迟也会增加。因此,我只是要建立一个简单的转播网站,它不会牺牲质量或需要付费的 3rd 方支持来处理事情。

目前,直接连接到相机时获取图像的延迟为 700 毫秒。这是通过 chrome 调试器验证的。如果我编写一个 cURL 下载请求,根据 curl_getinfo 的延迟平均为 1.4 秒。使用 file_put_contents() 具有相同的持续时间。

$ch = curl_init('http://path.to/image.jpg');
$fp = fopen('./localImage.jpg', 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
$ci = curl_getinfo($ch);
curl_close($ch);
var_dump($ci);
fclose($fp);

知道为什么会这样吗?

array(22) {
  ["url"]=>
  string(33) "http://path.to/image.jpg"
  ["content_type"]=>
  string(10) "image/jpeg"
  ["http_code"]=>
  int(200)
  ["header_size"]=>
  int(124)
  ["request_size"]=>
  int(64)
  ["filetime"]=>
  int(-1)
  ["ssl_verify_result"]=>
  int(0)
  ["redirect_count"]=>
  int(0)
  ["total_time"]=>
  float(1.40834)
  ["namelookup_time"]=>
  float(4.7E-5)
  ["connect_time"]=>
  float(0.082317)
  ["pretransfer_time"]=>
  float(0.083356)
  ["size_upload"]=>
  float(0)
  ["size_download"]=>
  float(60331)
  ["speed_download"]=>
  float(42838)
  ["speed_upload"]=>
  float(0)
  ["download_content_length"]=>
  float(60331)
  ["upload_content_length"]=>
  float(0)
  ["starttransfer_time"]=>
  float(0.318247)
  ["redirect_time"]=>
  float(0)
  ["certinfo"]=>
  array(0) {
  }
  ["redirect_url"]=>
  string(0) ""
}
4

0 回答 0