ONVIF: что это за команда для фокусировки? - PullRequest
0 голосов
/ 28 июня 2018

У меня есть камера, совместимая с ONVIF.

Если я хочу увеличить / уменьшить изображение, мне нужно отправить этот URL на камеру: http://192.168.2.88/cgi-bin/ptz_cgi?action=FocusAdd&steps=50&user=admin&pwd=admin

Это свойство принадлежит моей камере, поэтому я хотел бы сделать то же самое с ONVIF.

Мой вопрос:

Использует onvif так же просто, как отправку: ONVIF: //192.168.2.88: 2010 / какая-то команда?

Если это так, что это за команда:)

Я использую Delphi XE2

Спасибо.

1 Ответ

0 голосов
/ 28 июня 2018

Нет, это не так просто, как протокол CGI. Основные отличия:

  • ONVIF основан на SOAP, в то время как многие проприетарные протоколы основаны на REST или просто параметрах, закодированных в URL
  • Модель устройства ONVIF более сложная, поскольку она поддерживает более широкий набор вариантов использования.

Таким образом, после того, как вы сгенерируете код из WSDL-файлов или получите библиотеку, которая реализует необходимые функции, вы должны сделать:

  • получить услуги устройства
  • убедитесь, что у него есть служба PTZ
  • убедитесь, что у него есть служба мультимедиа, 1 или 2 (последняя для устройств профиля T)
  • получить список профилей медиа
  • выберите профиль мультимедиа, имеющий PTZNode, и именно тот, который вы ищете
  • выбор подходящего координатного пространства из возможностей службы PTZ
  • отправить команду Move с правильными параметрами

Это может показаться слишком сложным, но вы должны помнить, что протокол ONVIF должен поддерживать устройства с более чем одним входом, такие как многоканальные кодеры. Эти кодеры могут иметь несколько фиксированных камер, а другие подключенные камеры могут иметь PTZ, управляемую кодером. На практике приведенный мною список позволяет понять, как выглядит устройство, которым вы управляете.

...