海康摄像头web3.3前端实现

这篇具有很好参考价值的文章主要介绍了海康摄像头web3.3前端实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 上篇我发布了一篇文章,有一个刷新页面摄像头就消失的bug,这个代码就是我改过以后得。

直接就放到组件里就行。要是不出来的话,可能是你们插件有问题。可以重新安装一次插件。

<template>

    <div class="chart-box" ref="chartBox">

        <div class="chart-body" ref="divPlugin" id="divPlugin"></div>

    </div>

</template>

<script>

// import chartTitle from "./chartTitle.vue";

export default {

    // components: { chartTitle },

    data() {

        return {

            szIP: "", //摄像头ip地址

            szPort: "", //摄像头端口

            szUsername: "admin", //摄像头登录用户名

            szPassword: "", //摄像头登录密码

            szDeviceIdentify: this.szIP + "_" + this.szPort, //摄像头变量,不知道干啥的

        };

    },

    created() {},

    mounted() {

        this.initHkCtrl();

    },

    beforeDestroy() {

        this.destoryVideo();

    },

    methods: {

        //初始化海康海康摄像头,初始化完成后再登录及后续操作

        initHkCtrl() {

            WebVideoCtrl.I_InitPlugin({

                bWndFull: true, //是否支持单窗口双击全屏,默认支持 true:支持 false:不支持

                iWndowType: 1,

                cbInitPluginComplete: () => {

                    //插件初始化完成回调

                    WebVideoCtrl.I_InsertOBJECTPlugin("divPlugin").then(

                        () => {

                            WebVideoCtrl.I_CheckPluginVersion().then((bFlag) => {

                                this.hkLogin();

                            });

                        },

                        () => {

                            alert("插件初始化失败");

                        }

                    );

                },

            });

        },

        //海康摄像头登录方法

        hkLogin() {

            console.log("调用登录方法");

            WebVideoCtrl.I_Login(this.szIP, 1, this.szPort, this.szUsername, this.szPassword, {

                timeout: 5000,

                success: () => {

                    console.log("登录成功");

                    setTimeout(() => {

                        this.getDevicePort();

                    }, 10);

                },

                error: ({ errorCode }) => {

                    console.log("oError: ", errorCode);

                    if (2001 === errorCode) {

                        console.log("已登录过");

                    } else {

                        console.log("登录失败");

                    }

                },

            });

        },

        //获取海康摄像头端口

        getDevicePort() {

            console.log("开始获取摄像头端口");

            WebVideoCtrl.I_GetDevicePort(this.szIP).then(({ iDevicePort, iHttpPort, iRtspPort }) => {

                this.startRealPlay();

            });

        },

        //打开海康摄像头监控画面

        startRealPlay() {

            const oWndInfo = WebVideoCtrl.I_GetWindowStatus(0);

            const _this = this;

            function play() {

                WebVideoCtrl.I_StartRealPlay(_this.szIP, {

                    iStreamType: 1,

                    iChannelID: 1,

                    bZeroChannel: false,

                    success: function () {

                        console.log("预览成功");

                    },

                    error: function () {

                        console.log("预览失败");

                    },

                });

            }

            if (oWndInfo != null) {

                // 已经在播放了,先停止

                WebVideoCtrl.I_Stop({

                    success: function () {

                        play();

                    },

                });

            } else {

                play();

            }

        },

        //海康摄像头销毁方法 --解决vue切换路由后摄像头画面存在问题

        destoryVideo() {

            WebVideoCtrl.I_DestroyPlugin()

                .then(() => {

                    console.log("then");

                })

                .catch((err) => {

                    console.log("catch: ", err);

                });

        },

    },

};

</script>

<style lang="scss" scoped>

.chart-box {

    width: 100%;

    height: 100%;

}

.chart-body {

    position: absolute;

    top: 35px;

    z-index: -11;

    width: calc(35vw - 60px);

    height: calc(30vh - 100px);

}

</style>

 在public文件下新建一个hk文件,把这三个文件放进去,在html中引入。

 海康视频组件销毁i_destroyplugin,web3,前端,vue

 在public文件下引入这两个,那个jsVideoPlugin那个文件不用引入。海康视频组件销毁i_destroyplugin,web3,前端,vue文章来源地址https://www.toymoban.com/news/detail-828486.html

到了这里,关于海康摄像头web3.3前端实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue中web端播放rtsp视频流(摄像头监控视频)(海康威视录像机)

    ffmpeg下载 https://ffmpeg.org/download.html 找ffmpeg-release-essentials.zip点击下载,下载完解压 ffmpeg.exe 程序运行 添加成功后验证是否生效任意地方打开cmd窗口输入 ffmpeg 打印如下表示成功 新建一个app.js文件,同级目录下npm安装 node-rtsp-stream 我是直接写在项目里了,你们可以单独写在外

    2024年04月25日
    浏览(33)
  • SpringBoot+海康威视摄像头实现在前端的预览

    本文是之前文章的一篇完善文,如果你是才接触海康威视摄像头的二次开发请先阅读入门篇 在实现摄像头的预览的时候需要搞懂什么是rtsp。 rtsp是一种实时流传输协议(Real Time Streaming Protocol,RTSP),主要使用TCP和UDP完成数据的传输。 1.1 了解海康威视rtsp的url规范 【老版本】

    2023年04月08日
    浏览(36)
  • QML实现海康威视、TP_LINK等摄像头视频接入

           随着物联网的发展,越来越多的企业期望在系统平台中接入摄像头视频,达到对现场的实时视频监控的目的。本文通过QML接入海康、TP_LINK等摄像头的视频流从而在平台上展示视频。        1、要做到摄像头视频的接入首先要保证摄像头的通信是正常的,即系统终端和

    2024年02月03日
    浏览(120)
  • vue对接海康web1.5.2开发包,实现摄像头画面展示

    目录 前言 一、首先下载视频web插件v.1.5.2版本 二、利用官方插件包进行相关需求开发 1.官方插件包和开发文档的下载 2.在项目中引入插件包的相关的js (1)下载完成后打开 (2)在项目中public文件下创建一个文件夹放视频插件js 3..new 一个WebControl 插件相关实例  (1)创建Web

    2024年02月08日
    浏览(28)
  • 海康威视摄像头二次开发_云台控制_视频画面实时预览(基于Qt实现)

    需求:需要在公司的产品里集成海康威视摄像头的SDK,用于控制海康威视的摄像头。 拍照抓图、视频录制、云台控制、视频实时预览等等功能。 开发环境: windows-X64(系统) + Qt5.12.6(Qt版本) + MSVC2017_X64(使用的编译器) 海康威视提供了 设备网络SDK ,设备网络SDK是基于设备私有网

    2024年02月13日
    浏览(33)
  • 基于海康Ehome/ISUP接入到LiveNVR实现海康摄像头、录像机视频统一汇聚,做到物联网无插件直播回放和控制

    LiveNVR基础配置 海康 ISUP 接入配置 ,填写相关信息 服务 IP (设备可以访问到的IP) 服务端口 接入密码 (ISUP接入时要填此密码) 填写上 1、海康 ISUP 接入配置 中配置的相关信息,设备ID( 自定义不要重复 ) 填写上 1、海康 ISUP 接入配置 中配置的相关信息,设备ID( 自定义

    2024年02月08日
    浏览(36)
  • 【视频】海康摄像头、NVR网络协议简介

    设备发现SADP:进行设备的发现、激活、修改网络参数、忘记密码等; SDK:4200、系统平台的接入前端设备,协议不对外开放,但对外提供接口库; ISAPI:Intelligent Security API(智能安全API),基于HTTP传输报文,在浏览器直接输

    2023年04月08日
    浏览(28)
  • 海康威视摄像头播放录像视频(RTSP协议)

    旧URL:rtsp://[username]:[password]@[ipaddress]/[videotype]/ch[number]/[streamtype] 如:rtsp://admin:12345@192.168.25.64:554/h264/ch1/main/av_stream 新URL:rtsp://[username]:[password]@[IP]:554/Streaming/Channels/[channelID][streamID] 如:rtsp://admin:12345@192.168.25.64:554/Streaming/Channels/101 录像机其实和摄像机基本一样,旧URL中摄像

    2024年02月12日
    浏览(56)
  • vue+js+海康web开发包接入海康威视摄像头

    一、登录海康开放平台下载web开发包,下载需要先登录海康账号,没有的需先注册一个。 海康开放平台web开发包下载地址:https://open.hikvision.com/download/5cda567cf47ae80dd41a54b3?type=10id=4c945d18fa5f49638ce517ec32e24e24 二、将web开发包引入vue项目 下载后解压的包目录如下: 将把webs下的整个

    2024年02月02日
    浏览(36)
  • 海康摄像头前端调用实时画面解决方案(无插件版开发)

    项目中有一个需求,是需要把海康摄像机的实时画面在项目前端的页面中展示出来。本文的技术栈主要用到了 vue3、vite、threejs 等,辅助软件主要有 海康自带的iVMS-4200 3.9.1.4 客户端、VLC media player 等。原先最开始是想使用海康官方提供的WEB无插件开发包,但是在实际开发中发

    2024年02月16日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包