首页 > 其他分享 >vue2播放海康视频,利用海康H5player

vue2播放海康视频,利用海康H5player

时间:2024-05-22 16:42:13浏览次数:35  
标签:视频 wss JS 海康 地址 vue2 H5player js

一、H5视频播放器开发包地址

1、https://open.hikvision.com/download/5c67f1e2f05948198c909700?type=20

 2、内容

 3、主要用demo里面的文件

 4、demo可以用来测试获取的视频流是不是可以播放,如果用vue开发过,应该有安装的node,在当前页面右键-->在终端中打开

 (1)两者的不同在于,http.js测试ws格式的视频流,如果生产环境是http的地址,则用这个测试,本地测试可以用这个;https.js用来测试wss格式的视频流,这个对应的是https的生产环境。

  (2)下面是打开的测试wss的demo, https://localhost:9091/demo.html(这个链接对应上面)=》http =>ws; https:wss

 5、将demo里面的文件拷贝在vue2项目中,在src同级目录中添加public文件夹,如果有这个文件夹,在下面新建一个文件夹(h5player),将对应的红色框里面的文件拷贝过来

 6、在public文件夹下面的index.html文件中加上对插件的引入。同级目录下的js文件

 7、查询视频接口;如果获取wss格式的视频流,需要给protocol传wss,获取ws格式的视频流,则传ws

 8、显示视频位置

 <div id="player" class="video" /> 9、需要初始化插件相关信息  mounted(){     this.init()     this.initPlayer()   },  //  初始化界面大小,不同尺寸的浏览器调整窗口大小    init() {       // 设置播放容器的宽高并监听窗口大小变化       window.addEventListener('resize', () => {         if( this.player !== null){           this.player.JS_Resize();         }    })   // 初始化播放器     initPlayer(){       this.player = new window.JSPlugin({         // 需要英文字母开头 必填         szId: 'player',         // 必填,引用H5player.min.js的js相对路径,填写的是public下的路径         szBasePath: '/h5player',         openDebug: true,         iMaxSplit: 1,// 我只展示一个视频信息         iCurrentSplit: 1,         // 样式         oStyle: {           border: '#343434',           borderSelect: '#FFCC00',           background: '#000'         }       })

 10、展示视频

    videoInfo(videoUrl,data){       const _this = this       const param = {         playURL: videoUrl,         // 1:高级模式  0:普通模式,高级模式支持所有         mode: 1       }     // 播放视频           _this.player1.JS_Play(videoUrl, param, 0).then(             () => {     // 由于我只用了一个位置播放,老在左上角展示,所以我重新调整了大小               _this.player1.JS_Resize();},             e => { console.error(e) }           )          // 调整窗口           _this.player1.JS_ArrangeWindow(1).then(             () => {},             e => { console.error(e) }           )           // 插件报错给出提示,要不界面没有反映           _this.player1.JS_SetWindowControlCallback({             // 插件错误回调             pluginErrorHandler(iWindIndex, iErrorCode, oError) {               _this.$publicmethod.showMessage("获取视频信息失败,请您稍后重试!", _this.$publicmethod.ErrorType)             },           });

11、部署生产环境需要有相关的配置,添加nginx的配置信息

(1)修改nginx配置信息

(2)在海康的运管中心添加一个线路,提供生产环境的ip以及nginx的端口给海康人员,让他们添加一个线路;海康开发人员都知道!

 (3)将生产环境的证书和密钥上传到海康的运管中心系统,上传证书。添加并下发,下发到所有的系统中,然后重启服务即可!

 

 三、问题汇总

1、wss返回的地址是nginx+内网地址和端口,需要在获取到视频地址的接口中,将内网地址替换成外网地址,要不报错!(websocket连接报错502)

2、如果生产环境用的是域名,需要将获取到的地址的ip替换成域名,要不提示不是可信任证书,在console中可以看到ERR_CERT相关报错

 

标签:视频,wss,JS,海康,地址,vue2,H5player,js
From: https://www.cnblogs.com/flyShare/p/18206450

相关文章

  • vue2的混入mixin使用
    前言vue3中不再推荐使用mixins!在Vue2中,mixins是创建可重用组件逻辑的主要方式。尽管在Vue3中保留了mixins支持,但对于组件间的逻辑复用,使用组合式API的组合式函数是现在更推荐的方式。参考文档:https://juejin.cn/post/7033424132427481101https://segmentfault.c......
  • vue2 使用echarts实现地图点击进入下一层级+点击空白处回退
    先验知识:vue2中echarts的安装和显示中国地图:https://www.cnblogs.com/sunshine233/p/16140522.html鼠标事件: https://echarts.apache.org/zh/api.html#echartsInstance.onecharts.getMap():https://echarts.apache.org/zh/api.html#echarts.getMap监听“空白处”的事件:https:/......
  • vue2小效果的实现
    代码量:100行左右搏客量:1所用时间:1h<!--components文件中的Person.vue--><template><divclass="person"><h2>姓名:{{name}}</h2><h2>年龄:{{age}}</h2><button@click="changeName">......
  • Vue2入门之超详细教程十七-常用内置命令集合
    Vue2入门之超详细教程十四-常用内置指令集合1、简介常用内置指令集合v-bind:单向绑定解析表达式,可简写为:xxxv-model:双向数据绑定v-for:遍历数组/对象/字符串v-on:绑定时间监听,可简写为@v-if:条件渲染(动态控制节点是否存在)v-else:条件渲染(动态控制节点是否存在)v-show:条件渲染......
  • vue2使用elementUI组件el-tooltip指定元素进行提示信息(图标显示信息)
     <el-table-columnprop="operation"label="操作"borderwidth="200px"><templateslot-scope="scope"><divclass="operation-icons"><!......
  • 生命周期---Vue2&Vue3
    生命周期---Vue2&Vue3简单理解为:组件从创建到被销毁的一个过程,就相当于人的一生,从出生到死亡的一个过程。组件的生命周期也称生命周期、生命周期函数、生命周期钩子生命周期在特定的时刻会调用特定的函数生命周期分为四个阶段,每个阶段都有两个钩子,现只讨论这八个钩子V......
  • 海康威视
    1static关键字作用修饰局部变量​static修饰局部变量时,使得被修饰的变量成为静态变量,存储在静态区。存储在静态区的数据生命周期与程序相同,在main函数之前初始化,在程序退出时销毁。(无论是局部静态还是全局静态)修饰全局变量​全局变量本来就存储在静态区,因此static并不能改......
  • wps加载项在vue2项目中的应用(publish模式)
    wps加载项在vue2项目中的应用应用代码:wps.js/***WPSOA助手-WPS启动方法入口*/varpluginsMode=location.search.split("=")[1];//截取url中的参数值varpluginType=WpsInvoke.ClientType.wps;//加载项类型wps,et,wppvarpluginName="WpsOAAssist";//加载项名......
  • 关于vue2自己得到的陈果(不懂的知识点)
    ref引用相关的知识点:ref='ruleRef'this.$refs.ruleRef.resetFields()        只针对表单的重置this,$refs.ruleRef.validate(valid=>{    这里validate是进行一次检验,参数是一个回调函数,valid是一个布尔值,表示表单的检验是否通过if(!valid)......
  • Vue入门到关门之Vue2高级用法
    一、在vue项目中使用ref属性ref属性是Vue.js中用于获取对DOM元素或组件实例的引用的属性。通过在普通标签上或组件上添加ref属性,我们可以在JavaScript代码中使用this.$refs.xxx来访问对应的DOM元素或组件实例。放在普通标签上,通过this.$refs.名字---》取到的是do......