2

我有一个 IP 摄像机,当我输入手册提供的特定 URL 时,它会给我一个快照。该手册还指出http响应是:

HTTP Code: 200 OK
Content-Type: image/jpeg
Content-Length: <image size>
Body:<JPEG image data>

查看 Firefox 上的页面,我只能看到图像。我什至无法查看它的页面源。我希望这表明使用 C++ 获取的格式非常简单。

我想要做的是编写一个 C++ 程序,它会在某个时间间隔自动从这个相机中抓取图像(甚至可能在图像上做一些事情)。

我需要知道什么才能做到这一点?

(请注意,我必须使用 C++ EDIT: 和 linux )

4

3 回答 3

2

最简单的解决方案可能是curl。它甚至有一个缺少循环的例子。for (;;) { grab(); sleep(60000); }

于 2011-09-30T14:41:48.960 回答
0

如果您提到“我必须使用 C++”,如果 Windows 有问题,那么您可以使用WinHTTP API。您创建与 IP 摄像机 Web 服务器的会话和连接,然后发送带有 URL 的 HTTP 请求以获取 JPEG 快照,并读回您的 JPEG 图像数据。

于 2011-09-30T07:56:30.073 回答
0

该 HTTP 语句本身就是一个图像。除了图像数据被编码,并且图像上面有一些文本标题。否则,它等同于在本地图像文件中找到的图像。要获取文件,请打开与服务器的连接,读入内容并解释 HTTP 请求。[它会告诉你错误的请求、图像的大小等]

有关如何获取资源的信息,请参阅此问题。

于 2011-09-30T07:56:43.100 回答