ここでONVIF IPカメラの仕様について困っています。標準を使用してカメラに接続し、標準のメディア/デバイス要求を送信できるプログラムを構築しました。
問題は、ONVIF を介して PTZ 容量にアクセスしようとしていて、両方のカメラで次のエラーしか表示されないことです。
HTTP/1.1 400 Bad Request
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 741
Connection: keep-alive
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:ter="http://www.onvif.org/ver10/error">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<SOAP-ENV:Code>
<SOAP-ENV:Value>SOAP-ENV:Sender</SOAP-ENV:Value>
<SOAP-ENV:Subcode>
<SOAP-ENV:Value>ter:Namespace</SOAP-ENV:Value>
</SOAP-ENV:Subcode>
</SOAP-ENV:Code>
<SOAP-ENV:Reason>
<SOAP-ENV:Text xml:lang="en">Namespace Error</SOAP-ENV:Text></SOAP-ENV:Reason>
<SOAP-ENV:Node>http://www.w3.org/2003/05/soap-envelope/node/ultimateReceiver</SOAP-ENV:Node>
<SOAP-ENV:Role>http://www.w3.org/2003/05/soap-envelope/node/ultimateReceiver</SOAP-ENV:Role>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
だから、名前空間エラー。
問題は、GetCapabilities() ONVIF リクエストを通じて、カメラ (/onvif/ptz_service) の onvif PTZ 名前空間を取得したことです。
この問題は、2 台の ONVIF カメラの両方に送信する PTZ onvif リクエストでも同じです。
ONVIF を使用して PTZ 要求を送信し、動作するかどうかを確認するソフトウェアを既に見つけようとしましたが、見つかりませんでした (ここに ONVIF デバイス マネージャーがあります: http://sourceforge.net/projects/onvifdm/ですが、問題がカメラに起因しない限り、実際の PTZ 処理はありません)。