海康web3.0使用记录

2023-05-16

项目中集成海康web3.0控制摄像头
近期项目中的业务需求涉及播放控制实时监控,采用了海康web3.0的开发包,开发包规范是32位IE11浏览器,业务前期本来只是播放rtsp流的监控,所以采取了VLC插件进行播放,后期需求增加,要进行云台控制,然后就采用了海康web3.0开发控件。
一,VLC提一下,需要下载VLC插件,使用了3.0以上版本,不过也没太多运用,api实现了控制全屏,画面比例,还有就是动态控制播放地址使用的api;
标记的地方就是流地址,IE浏览器-安装插件-地址正确-正常播放
二,海康web3.0开发包,需要安装一个WebcomponentsKit.exe插件,在codebase文件夹下,使用的是32位,插件对应的也是32位,版本为3.0.6.2(在网上看到貌似说插件版本和webVideoCtrl.js版本对应才能成功运行demo)
1.安装插件前IE浏览器还需要改动一些设置,点击IE浏览器的设置,找到【 Internet 选项】:
点击自定义级别
2.找到【ActiveX 控件和插件】:
这个ActiveX相关的选项,一把梭全部启用或开启提醒。。。
3.IE设置完毕就可以打开demo了:
安装插件之后打开demo.html,不需要将demo部署到容器也可以运行的
IE设置ActiveX之后,打开demo.html会出现这个提示,点击允许。。
注意哦:因为开发包我也是网上找的,原本的在demo.html中的最底部,引入了demo.js,这个引入方式是原开发包的
之后将引入方式改为:更改后

4.下面是成功打开demo的页面:
标记中的四个参数是运行成功的关键
5.我这边只有监控的rtsp地址,格式如下:
rtsp://账号:密码@xxx.xxx.xxx.xxx:554/xxxx/xxx/xxx/av_stream
对应填写账号密码及ip,端口(554是rtsp端口,标记中的端口号并不是554,应该是摄像头的端口),点击登录–点击开始预览,就可以成功播放监控了。

三,页面引入demo,demo功能挺全的,一般都是需要什么功能移植到页面就是,只要demo运行成功,后面的功能就是搬砖了:
1.把需要的部分js放在项目下:(demo.css,demo.js,demoWeb.js,jquery-1.7.1.min.js,webVideoCtrl.js)
2.控制页面需要的部分布局:

<div id="divPlugin" class="plugin" style="float: left;"></div>
  <div  style="float: left;width: 180px;height: 100%;">
     <div style="height: 35px;line-height:35px;width: 100%;margin-top: 10px;text-align: center;">
      <input type="button"  class="layui-btn layui-btn-radius" value="开始预览" onclick="clickStartRealPlay();" />
    </div>
    <div style="height: 35px;line-height:35px;width: 100%;margin-top: 15px;text-align: center;">
      <input type="button"  style="height: 35px;width:85px;background-color:#FF5722;color: #fff;white-space: nowrap;text-align: center;font-size: 14px;border: none;border-radius: 100px;cursor: pointer;display: inline-block;" value="相机抓图" onclick="clickCapturePic();" />
    </div>
    
    <div style="height: 35px;line-height:35px;width: 100%;text-align: center;margin-top: 10px;">
      <input type="button" style="height: 30px;width:60px;background-color:#1E9FFF;color: #fff;white-space: nowrap;text-align: center;font-size: 14px;border: none;border-radius: 100px;cursor: pointer;display: inline-block;"  value="变倍+" onmousedown="PTZZoomIn()" onmouseup="PTZZoomStop()">
      <input type="button" style="height: 30px;width:60px;background-color:#1E9FFF;color: #fff;white-space: nowrap;text-align: center;font-size: 14px;border: none;border-radius: 100px;cursor: pointer;display: inline-block;"  value="变倍-" onmousedown="PTZZoomout()" onmouseup="PTZZoomStop()">
    </div>
    <div style="margin-top: 8px;text-align: center;">
       <table cellpadding="0" cellspacing="3" border="0" style="margin:auto">
        <tr style="height: 35px;">
            <td>
                <input type="button" class="inpBtn" value="左上" onmousedown="mouseDownPTZControl(5);" onmouseup="mouseUpPTZControl();" />
                <input type="button" class="inpBtn" value="上" onmousedown="mouseDownPTZControl(1);" onmouseup="mouseUpPTZControl();" />
                <input type="button" class="inpBtn" value="右上" onmousedown="mouseDownPTZControl(7);" onmouseup="mouseUpPTZControl();" />
            </td>
        </tr>
        <tr style="height: 35px;">
            <td>
                <input type="button" class="inpBtn" value="左" onmousedown="mouseDownPTZControl(3);" onmouseup="mouseUpPTZControl();" />
                <input type="button" class="inpBtn" value="自动" onclick="mouseDownPTZControl(9);" />
                <input type="button" class="inpBtn" value="右" onmousedown="mouseDownPTZControl(4);" onmouseup="mouseUpPTZControl();" />
            </td>
        </tr>
        <tr style="height: 35px;">
            <td>
                <input type="button" class="inpBtn" value="左下" onmousedown="mouseDownPTZControl(6);" onmouseup="mouseUpPTZControl();" />
                <input type="button" class="inpBtn" value="下" onmousedown="mouseDownPTZControl(2);" onmouseup="mouseUpPTZControl();" />
                <input type="button" class="inpBtn" value="右下" onmousedown="mouseDownPTZControl(8);" onmouseup="mouseUpPTZControl();" />
            </td>
        </tr>
    </table>
    </div>
    
  </div>
       <input id="rtspport" type="hidden" class="txt" />   
       <select id="streamtype" class="sel" style="display: none;">
            <option value="1">主码流</option>
       </select>     
       <select id="ip" class="sel" onchange="getChannelInfo();getDevicePort();" style="display: none;"></select>          
       <select id="channels" class="sel" style="display: none;"></select>
       <select id="captureFileFormat" name="captureFileFormat" class="sel" style="display: none;">
                    <option value="0">JPEG</option>
        </select>
          <select id="netsPreach" name="netsPreach" class="sel" style="display: none;">
                    <option value="0">最短延时</option>
                </select>
                <select id="wndSize" name="wndSize" class="sel" style="display: none;">
                    <option value="0">充满</option>
                </select>
                  <select id="rulesInfo" name="rulesInfo" class="sel"  style="display: none;">
                    <option value="1">启用</option>
                </select>
                  <select id="packSize" name="packSize" class="sel" style="display: none;">
                    <option value="0">256M</option>
                </select>
                 <select id="protocolType" name="protocolType" class="sel" style="display: none;">
                    <option value="0">TCP</option>
                </select> 
           <script src="/resource/layuiadmin/layui/layui.all.js"></script>
			<script src="/resource/js/hk/jquery-1.7.1.min.js"></script>
			<script id="videonode" src="/resource/js/hk/webVideoCtrl.js"></script>
			<script src="/resource/js/hk/demo.js"></script>

页面使用了layui组件,忽略。。。直接加载js函数:

$(document).ready(function(){
 	changeWndNum(1);
	clickLogin('你的IP','你的端口','你的账号','你的密码'); 
});	

ok!基本功能移植成功。。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

海康web3.0使用记录 的相关文章

  • 小白入门区块链(通俗易懂)

    区块链基础入门 什么是区块链 科技层面解释 数学 密码学 互联网 计算机编程 官方解释 区块链是一个分布式的共享账本和数据库 具有去中心化 不可篡改 全程留痕 可以追溯 集体维护 公开通明的特点分布式数字账簿 加密技术 不可篡改 通证 一种
  • DeFi新篇章

    随着原生去中心化中央限价订单簿 Central Limit Order Book CLOB DeepBook的推出 Sui上的DeFi开启了新篇章 DeepBook由一群Sui贡献者共同构建 为新一代DeFi应用提供了一个稳定的流动性层 通
  • 04元宇宙,下一代互联网

    我对于元宇宙的定义应该能够为这个问题带来一些新的启发 为什么人们通常认为元宇宙是移动互联网的继承者 要想让元宇宙成为现实 需要开发新的标准 创建新的基础设施 可能还需要对长期存在的 TCP IP 协议进行彻底改革 包括采用新的设备和硬件 甚
  • 远程访问群晖Drive并挂载为电脑磁盘同步备份文件「无需公网IP」

    文章目录 前言 1 群晖Synology Drive套件的安装 1 1 安装Synology Drive套件 1 2 设置Synology Drive套件 1 3 局域网内电脑测试和使用 2 使用cpolar远程访问内网Synology D
  • 如何打造优秀Web3产品

    近日 我们采访了Mysten Labs的联合创始人兼首席执行官Evan Cheng 探讨了Web3技术对消费者的价值 Web3行业应该如何更好地自我诠释 以及它对产品开发的影响 您曾谈到Web3作为一种所有权实验 这种新技术可能会改变消费者
  • 使用hardhat 开发以太坊智能合约-搭建环境

    Web3工具网站 点我访问 现已上线 欢迎使用 如有好的意见和建议也欢迎反馈 本系列课程 第一节 使用hardhat开发以太坊智能合约 搭建环境 第二节 使用hardhat开发以太坊智能合约 测试合约 第三节 使用hardhat开发以太坊智
  • web3.0涉及的技术

    非同质化代币 非同质化代币 Non Fungible Tokens NFTs 是一种数字资产 与传统的加密货币 如比特币或以太币 不同 它们具有独特性和不可替代性 NFTs 是基于区块链技术的数字资产 用于表示和证明数字或实物资产的唯一性
  • 【Web3】认识以太坊钱包

    目录 区块链钱包概念 密码 私钥 Private Key 公钥Public Key Keystore 助记词 Mnemonic 如何解锁账户 区块链钱包概念 钱包用来存钱的 在区块链中 我们的数字资产都会对应到一个账户地址上 只有拥 有账户
  • 中国工程院院士郑纬民:元宇宙是一个赋能实体经济的重要新赛道

    2022年3月31日 元宇宙产业委共同主席郑纬民院士在第三届元宇宙产业论坛发表了题为 元宇宙创新应用全面启航 算力是基础 的演讲 以下为郑纬民院士的演讲全文 今年全国两会中一些代表和委员提出了关于元宇宙的建议和提案 说明元宇宙已经得到了大家
  • 加密解密-对称加密与非对称加密

    目录 加密 Encryption Symmetric Key Encryption 对称密钥加密 凯撒密码 对称加密的例子 aesarCipher 例子 Kercos原理 Kerckhoff s Principle 有什么方法破解凯撒密码
  • 元宇宙不是Web3

    个人对元宇宙的定义为 大规模 可互操作的网络 能够实时渲湘3D虚拟世界 借助大量连使性数据 如身份 历史 权利 对象 通信和支付等 可以让无限数量的用户体脸实时同步和持续有效的在场感 现在 你应该能理解我为何会给出这样的定义了 许多人可能会
  • 为什么 Web3 社交将超越其 Web2 同行

    我们最近听到了很多关于 web3 社交媒体平台的消息 但如果你没有跟上 你可能想知道为什么我们已经有了 Twitter Facebook Instagram 等 我们还需要 web3 社交 好吧 这一切都取决于谁拥有权力 在 web2 中
  • Moonbeam路由流动性

    Moonbeam路由流动性 Moonbeam Routed Liquidity MRL 使加密资产流动性能够从其他生态系统 如以太坊 Solana Polygon或Avalanche 进入波卡生态系统 借助MRL 用户可以通过简洁的用户体验
  • web3.0的特点、应用和安全问题

    特点 Web 3 0 也称为 Web 3 或 Semantic Web 是互联网的下一阶段 旨在构建更加智能 去中心化和用户友好的网络 Web 3 0的主要内容包括以下几个方面 去中心化 Web3 0 的目标是将互联网从集中式架构转变为去中
  • 【Web3.0大势所趋】下一代互联网的未来

    前言 Web3 0 是一个越来越受到关注的话题 它被认为将会带来天翻地覆的变化 本文我们一起来谈谈 Web3 0 的概念 特点和优势 并探讨它为什么如此重要和具有革命性的 文章目录 前言 Web3 0是什么 区块链技术 智能合约 总结 We
  • python 之 web3 与智能合约的交互、编译等使用

    一 背景 web3 py是一个用于与以太坊交互的 Python 库 它常见于去中心化应用程序 dapps 中 帮助发送交易 与智能合约交互 读取块数据以及各种其他用例 最初的 API 源自Web3 js Javascript API 但后来
  • 【从0学习Solidity】2. 值类型详解

    Solidity极简入门 2 值类型 博主简介 不写代码没饭吃 一名全栈领域的创作者 专注于研究互联网产品的解决方案和技术 熟悉云原生 微服务架构 分享一些项目实战经验以及前沿技术的见解 关注我们的主页 探索全栈开发 期待与您一起在移动开发
  • AWS动手实验 - 创建一个Web3网站

    实验操作和录播 亚马逊云科技开发者社区 web3 dApp demo README CN md at main Chen188 web3 dApp demo GitHub 注意事项 按照操作手册进行即可 需要注意到的几个地方 1 EC2 的
  • Move 向未来,2024 开发者大会热潮涌动

    1 月 13 日至 14 日 2024 Move 开发者大会 Move 生态关键的一年 将于上海举办 本次大会由 MoveFuns OpenBuild 和 MoveBit 主办 Rooch AptosGlobal alcove zkMove
  • 创业者自白|Mia Bao:唯有热爱,才能从“废墟”中蜕变出价值

    本采访转载自 财富 Fortune Magazine 创业者自白 Mia Bao 唯有热爱 才能从 废墟 中蜕变出价值 财富中文网 在充满机遇和挑战的区块链与Web3领域 涌现出许多富有冒险精神的年轻创业者 然而 在这个领域中 秉持热爱 并

随机推荐

  • STM32串口自定义数据接收协议

    文章目录 写在前面0 需求1 问题产生1 1 模块 43 上位机实验1 2 电路板串口数据接收实验1 3 问题来了 xff01 2 开始分析2 1 串口数据格式2 2 测一波波形 3 代码分析4 新的问题 xff1a 串口数据累加总结 写在
  • 科普:电池的保护电路

    科普 xff1a 电池的保护电路 http www cnbeta com articles 204504 htm
  • 汇编语言基础知识-寄存器

    汇编语言基础知识 寄存器 寄存器是距离CPU中最近的存储单元 xff0c 对于现代CPU其获取数据的顺序往往是 CPU 61 61 gt 寄存器 61 61 gt 一级缓存 61 61 gt 二级缓存 61 61 gt 三级缓存 61 61
  • ERROR:未定义标识符“cout“、“endl“

    ERROR情况 xff1a 未定义标识符 span class token string 34 cout 34 span 未定义标识符 span class token string 34 endl 34 span 问题原因 xff1a c
  • VSCode格式化快捷键

    Shift 43 Ctrl 43 F
  • Linux内核源代码分析一(Linux0.12)

    Linux内核源代码分析一 xff08 Linux0 12 xff09 Linux 内核主要由 5 个模块构成 xff0c 它们分别是 xff1a 进程调度模块 内存管理模块 文件系统模块 进程间通信模块和网络接口模块 1 引导启动程序 x
  • Qt类继承关系以及所属模块关系一览表

    Qt类关系一览表 高清版下载 xff1a Qt类继承关系以及所属模块关系一览表 更多内容请关注个人博客 xff1a https blog csdn net qq 43148810
  • cartographer主从机rviz订阅地图出错

    参考 xff1a https answers ros org question 261071 rviz client md5sum error ERROR 1563347805 272316618 Client rviz wants top
  • Gooseeker软件使用教程

    因为课程需要使用到Gooseeker软件 xff0c 写个使用教程防止以后忘记 安装好gooseeker软件 xff0c 下图为安装好的界面 xff1a 点击右上方的 MS谋数台 xff0c 弹出如下界面 xff1a 在左上方的网址栏输入想
  • HTTP Auth认证请求(附代理)-代码篇

    2种方式 方式一 xff1a Http请求头上添加Basic Authentication认证 httpPost httpPost addHeader Authorization 34 Basic 34 43 Base64 encodeBa
  • Makefile以及CMakelists的编辑

    1 概念 在linux中不像windows和mac有图形界面 xff0c 怎么快速的用命令行运行大型项目成为一个问题 xff0c 并且像c c 43 43 需要自己添加include文件的位置 xff0c 当文件数目变多的时候 xff0c
  • python爬虫练习1:计算评分平均值

    练习要求 xff1a 抽取某本书的前50条短评内容并计算评分的平均值 提示 xff1a 有的评论中并不包含评分 代码 xff1a span class token comment coding utf 8 span span class t
  • python爬虫练习2:取道指成分股数据

    练习要求 xff1a 在 http money cnn com data dow30 上抓取道指成分股数据并将30家公司的代码 公司名称和最近一次成交价放到一个列表中输出 代码 xff1a span class token comment
  • python中sort函数的使用

    转自https blog csdn net lyy14011305 article details 76148512 我们需要对List进行排序 xff0c Python提供了两个方法 对给定的List L进行排序 xff0c 方法1 用L
  • Python序列与文件编程练习

    练习一 xff1a 使用以下语句存储一个字符串 xff1a string 61 My moral standing is 0 98765 将其中的数字字符串转换成浮点数并输出 代码 xff1a span class token commen
  • 简单平台用户信息管理系统

    要求 xff1a 用字典创建一个平台的用户信息 xff08 包含用户名和密码 xff09 管理系统 xff0c 新用户可以用与现有系统帐号不冲突的用户名创建帐号 xff0c 已存在的老用户则可以用用户名和密码登陆重返系统 实现代码 xff1
  • DataFrame小练习

    练习要求 xff1a 已知有一个列表中存放了一组音乐数据 xff1a music data 61 the rolling stones Satisfaction Beatles Let It Be Guns N Roses Don t Cr
  • nenuacm 2019 新生训练#10 字符串处理 题解

    题目链接 Ultra Fast Mathematician 解题思路 xff1a 题目说辣么多 xff0c 其实就是将两个二进制进行异或运算 xff1a 相同位上的数字相同 xff0c 异或结果为0 xff0c 否则为1 AC代码 span
  • 比较两个字符串大小(C语言)

    比较两个字符串的大小 比较两个字符串的大小 xff0c 不许使用strcmp函数 输入格式 在两行分别输入两个长度小于20的字符串 在字符串中不要出现换行符 xff0c 空格 xff0c 制表符 输出格式 直接输出 gt 或 lt 或 61
  • 海康web3.0使用记录

    项目中集成海康web3 0控制摄像头 近期项目中的业务需求涉及播放控制实时监控 xff0c 采用了海康web3 0的开发包 xff0c 开发包规范是32位IE11浏览器 xff0c 业务前期本来只是播放rtsp流的监控 xff0c 所以采取