vue + 海康摄像头

必须使用ie浏览器

使用方法:

  1. 将NetVideoActiveX23.cab放到文件夹
  2. 上object
    <object style="width:100%;height:100%;" ref="HIKOBJECT1" classid="CLSID:CAFCF48D-8E34-4490-8154-026191D73924" standby="Waiting..." id="HIKOBJECT1" name="HIKOBJECT1"   :codebase="$store.state.path+'videoMonitor/getNetVideoActiveX23'"></object>
  1. 定义需要数据
vedio:{
      vedioControl: '',
      loginUserId:'',
      chanelName:'',
      bRet:'',

	//摄像头信息
      configs:{
        ip:'210.72.141.195',
        port:8000,
        user:'admin',
        pwd:'12345'
      }
    },
  1. 初始化
initVedio(){

        //1.准备工作 判断年份+下载控件
        let curYear = new Date().getFullYear();
        if( curYear < 1971 || curYear > 2037 ){
          this.$Message.error("为了正常使用本软件,请将系统日期年限设置在1971-2037范围内!");
          return false;
        }

        if(this.$refs.HIKOBJECT1.object == null){
          this.$Message.error("请先下载控件并注册")
          this.vedio.vedioControl = ''
          return false
        }else{
          this.vedio.vedioControl = this.$refs.HIKOBJECT1;
        }


        //2.注册
        console.log(this.vedio.configs.ip,this.vedio.configs.port,this.vedio.configs.user,this.vedio.configs.pwd)
        this.vedio.loginUserId = this.vedio.vedioControl.Login(this.vedio.configs.ip,this.vedio.configs.port,this.vedio.configs.user,this.vedio.configs.pwd);
        console.log(this.vedio.loginUserId);
        if(this.vedio.loginUserId == -1){
          this.$Message.error("连接失败!");
          return false;
        }else{
          this.$refs.HIKOBJECT1.SetUserID(this.vedio.loginUserId);
          this.$Message.success('连接成功!');
          this.vedio.turnOn = true;
        }

        //3.获取名称
        // this.vedio.chanelName = this.vedio.vedioControl.GetServerName();
        // if(this.vedio.chanelName == ''){
        //   alert('获取名称失败')
        // }

        //4.获取通道

        //5.预览
        this.vedio.vedioControl.SetPlayWndType(0);
        this.vedio.bRet = this.vedio.vedioControl.StartRealPlay(0, 0, 0);

        console.log(this.vedio.bRet);

        return true;


      },
  1. 登出
logout(){

        if(this.vedio.vedioControl.Logout())
        {
          this.$Message.success("挂断成功!");
          this.vedio.turnOn = false;
        }
        else
        {
          this.$Message.error("挂断失败!");
        }
      },
发布了38 篇原创文章 · 获赞 5 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_39423672/article/details/87808158