1.需要数据
{ szIP: '192.168.1.X', //摄像头ip szPort: '80', //端口 szUsername: 'admin', //用户名 szPassword: 'xxxxxx' //密码 },
2.下载内容
WEB3.3控件开发包 V3.3
下载地址:海康开放平台
3.安装插件,引入js文件
(1)双击HCWebSDKPlugin.exe,安装插件
(2)引入文件
把这两个文件放在public下static目录下,在public的index.html中引入
4.vue代码--视频组件
当前script里面的方法只是当前开发所需,其他方法可以看下载的文件中HCWebSDK3.3.pdf文档,或者运行demo--cn--demo.html文件,根据自己所需查找对应方法
5.vue代码--父组件
#引入 import monitorVideoVue from '@/components/video/monitorVideo.vue'; #html部分#js部分 在data中定义 // 视频列表 sysParams: [ { szIP: '192.168.1.A', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' }, { szIP: '192.168.1.B', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' }, { szIP: '192.168.1.C', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' }, { szIP: '192.168.1.D', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' }, { szIP: '192.168.1.A', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' }, { szIP: '192.168.1.B', szPort: '80', szUsername: 'admin', szPassword: 'xxxx' } ],
6.我的代码问题
其实在父组件的sysParams中不需要这样重复声明账号密码,他登录一次后会有已登录状态,这里未作修改,只有通道列表更改一下就可以,只是当前代码还未更改
正确需要格式
loginIp: '192.168.90.xxx',//ip地址,后面拼接的是通道列表iChannelIDIndexList port: '80',//端口 username:'admin',//用户名 password: 'a123xxxxxxxxxxxx',//密码 iChannelIDIndexList: [1, 4, 6, 7], // 选择的通道列表
这样的一个格式基本上可以实现多窗口的播放了,但项目后续没有用这个方法来实现,就没有继续完善代码
7.缺点
(1)必须安装HCWebSDKPlugin.exe插件,没有安装插件的电脑无法观看
(2)有时候会有一点卡顿
(3)如果不销毁播放器,他会出现在所有页面的上面,销毁的话再重新加载会慢一点