Hikvision Company为其软件制作了很好的相机和可怕的文档。
如果您最终到达这里,那么您可能会尝试通过其“ ISAPI.pdf”文件进行挖掘,但在那里没有太多帮助。
首先,我建议您通过Web界面设置相机。接下来,以XML格式获取设置的参考模板。通过在您的浏览器中打开:
- http://192.168.1.64/ISAPI/Streaming/channels/1-用于流式选项(分辨率,FPS,比特率),
- http://192.168.1.64/ISAPI/Image/channels/1-用于图像设置(白平衡,WDR,闪电等)。 您将被要求进行相机的登录和通过。
,如果您有不同的摄像机型号,则可能需要从所有摄像机中获取这些模板,比较并找到共同的基础。
将此配置部署到相机,只需使用同一URL!
示例Python代码:
import requests
from requests.auth import HTTPDigestAuth
username, password = ('admin', 'camera_password')
stream_xml = """
<StreamingChannel version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>1</id>
blah blah blah
"""
url = "http://192.168.1.64/ISAPI/Streaming/channels/1"
response = requests.put(url, data=stream_xml, auth=HTTPDigestAuth(username, password))
print(response.text)
assert response.status_code == 200
image_xml = """
<ImageChannel xmlns="http://www.hikvision.com/ver20/XMLSchema" version="2.0">
<id>1</id>
<enabled>true</enabled>
<videoInputID>1</videoInputID>
"""
url = "http://192.168.1.64/ISAPI/Image/channels/1"
response = requests.put(url, data=image_xml, auth=HTTPDigestAuth(username, password))
print(response.text)
assert response.status_code == 200
您应该得到:
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<requestURL></requestURL>
<statusCode>1</statusCode>
<statusString>OK</statusString>
<subStatusCode>ok</subStatusCode>
</ResponseStatus>
在更复杂的情况下,当您需要每个相机型号的不同配置时,请使用:http://192.168.1.64/ISAPI/System/deviceInfo
查找相机型号。