【发布时间】:2013-02-25 23:44:32
【问题描述】:
我已经安装了 cURL,我可以从网站上下载一张图片,而且效果很好。
代码如下:
#define CURL_STATICLIB
#include <stdio.h>
#include <stdlib.h>
#include </usr/include/curl/curl.h>
#include </usr/include/curl/stdcheaders.h>
#include </usr/include/curl/easy.h>
size_t write_data(void *ptr, size_t size, size_t nmemb, FILE *stream) {
size_t written = fwrite(ptr, size, nmemb, stream);
return written;
}
int main(void) {
CURL *curl;
FILE *fp;
CURLcode res;
char *url = "http://www.example.com/test_img.png";
char outfilename[FILENAME_MAX] = "/home/c++_proj/output/web_req_img.png";
curl = curl_easy_init();
if (curl) {
fp = fopen(outfilename,"wb");
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
res = curl_easy_perform(curl);
/* always cleanup */
curl_easy_cleanup(curl);
fclose(fp);
}
return 0;
}
我还有一台 dlink DCS-930L 相机。我可以轻松地将我的相机连接到静态 IP 地址,并且可以通过登录相机(例如http://192.168.1.5)在相机上查看实时视频。
我不需要任何特殊软件或任何东西即可开始观看视频。
现在,我想使用 cURL 从相机下载图像。但我不知道该怎么做。 有人可以告诉我,或者提供一些代码吗? 我要做的就是捕获(采样)一些正在流式传输的图像。 我如何知道何时发出请求,以及图像之间的边界何时出现。
我真的很感激一些可以让我继续前进的建议和代码。
T
【问题讨论】:
-
这完全取决于相机提供的接口,即
http://192.168.1.5上显示的图像/视频的内容类型实际上是什么。唯一能够为您提供帮助的人是那些在家中拥有精确摄像头的人。 -
@Ruby:请避免在发布问题时使用签名,谢谢,:)