调用海康DVR云台控制
            (JAVA代码实现)
package com.ller;
import com.alibaba.fastjson.JSON;
import com.hikvision.sdkdvrmons.HCNetSDK;
import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
@RestController
public class DvrController {
    private Logger logger = Logger(DvrController.class);
    HCNetSDK hCNetSDK = HCNetSDK.INSTANCE; //SDK库
    int lUserID;//用户句柄
    HCNetSDK.NET_DVR_DEVICEINFO_V30 m_strDeviceInfo;//设备信息
    public static NativeLong g_lVoiceHandle;//全局的语音对讲句柄
    HCNetSDK.NET_DVR_IPPARACFG  m_strIpparaCfg;//IP参数
    HCNetSDK.NET_DVR_CLIENTINFO m_strClientInfo;//用户参数
    //从NVR取流测试:局域网可以,通过通道取流地址:rtsp://admin:x..3389..1@1192.168.126.66:554/h264/ch1/main/av_stream
    //云台控制
    @RequestMapping("/control")
    @ResponseBody
    public String PTZ( String data) {  //let data{"name":"Anni"}
       // Map map = (Map) JSON.parse(data);
        int login = Login();
        boolean ptz = hCNetSDK.NET_DVR_PTZControlWithSpeed_Other(login, 1, 23, 0, 5)
;  // 控制操作
        int e = hCNetSDK.NET_DVR_GetLastError();//错误号返回值
java jna        logger.info("操作错误值:" +  e );
        boolean out = hCNetSDK.NET_DVR_Logout(login); //注销设备
        boolean cleanup = hCNetSDK.NET_DVR_Cleanup(); //释放SDK资源
        int error = hCNetSDK.NET_DVR_GetLastError();//错误号返回值
       // logger.info("云台控制:" + ptz);
        if (ptz == true) {
            return "1";
        }
        return "0";
    }
    //注册登录
    int Login() {
        // 1.首先初始化设备
        boolean initSuc = hCNetSDK.NET_DVR_Init();
        // 2.然后注册设备
        lUserID = hCNetSDK.NET_DVR_Login_V30(IP, (short) 8000, 用户名, 密码, m_strDeviceInfo);
        //logger.info("登录返回值:" + lUserID);
        return lUserID;
    }
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。