LiveNVR中使用Onvif協議控制預置位

2021-10-09 13:34:06 字數 1548 閱讀 1353

livenvr支援預置位控制,包括轉到指定預置位,設定指定預置位,刪除指定預置位

預置位在安防領域有較為普遍的應用,可以進行很多既定位置的跳轉,很方便

之前我們說過如何用onvif協議進行裝置的發現,探測,以及雲台控制等,今天我們來說一下如何使用onvif進行預置位的操作

獲取裝置能力capabilities

獲取裝置的能力,並且可以獲取到media和ptz的uri,使用這兩個url可以進行流和預置位操作,這裡如果ptz uri獲取不到意味著這個裝置無法支援預置位控制

_tds__getcapabilities* capabilities = soap_new__tds__getcapabilities(proxydevice, -1);

tt__capabilitycategory* category = new tt__capabilitycategory;

capabilities->category = category;

*(capabilities->category) = tt__capabilitycategory__all;

_tds__getcapabilitiesresponse* response = soap_new__tds__getcapabilitiesresponse(proxydevice, -1);

if (soap_ok == proxydevice->getcapabilities(capabilities, response))

}

獲取media profile

_trt__getprofiles* getprofiles = soap_new__trt__getprofiles(proxymedia, -1);

_trt__getprofilesresponse* response = soap_new__trt__getprofilesresponse(proxymedia, -1);

if (soap_ok == proxymedia->getprofiles(getprofiles, response))

}}

預置位控制

bool result = false;

ptzbindingproxy* ptzproxy = new ptzbindingproxy;

ptzproxy->soap_endpoint = ptzurl.c_str();

if (!security(ptzproxy, username, password))

char presettoken[8];

itoa(index, presettoken, 10);

if (command == preset_goto)

else if (command == preset_set)

else if (command == preset_remove)

delete ptzproxy;

return result;

LiveNVR中使用Onvif協議控制預置位

livenvr支援預置位控制,包括轉到指定預置位,設定指定預置位,刪除指定預置位 預置位在安防領域有較為普遍的應用,可以進行很多既定位置的跳轉,很方便 之前我們說過如何用onvif協議進行裝置的發現,探測,以及雲台控制等,今天我們來說一下如何使用onvif進行預置位的操作 獲取裝置能力capabil...

LiveNVR中使用Onvif協議控制預置位

livenvr支援預置位控制,包括轉到指定預置位,設定指定預置位,刪除指定預置位 預置位在安防領域有較為普遍的應用,可以進行很多既定位置的跳轉,很方便 之前我們說過如何用onvif協議進行裝置的發現,探測,以及雲台控制等,今天我們來說一下如何使用onvif進行預置位的操作 獲取裝置能力capabil...

LiveNVR中使用Onvif協議獲取裝置快照

我們知道livenvr中可以獲取快照資訊,之前的文章也說明了livenvr是如何進行快照抓取的 這裡我們使用另一種方法進行快照的抓取 獲取裝置能力capabilities 獲取裝置的能力,並且可以獲取到media和ptz的uri,使用media的uri,可以進行快照的抓取 tds getcapabi...