我有一个网络摄像头,我正试图将其设置为公开。网络摄像头是公开可用的,但每次观看人数翻倍时,刷新延迟也会增加。因此,我只是要建立一个简单的转播网站,它不会牺牲质量或需要付费的 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) ""
}