海康威视设备在Web端显示实时(回放)视频

本文介绍了在Web端显示海康威视摄像头实时视频的方法,包括rtmp和hls两种协议的概述及优缺点。通过使用video.js、nginx、vlc和FFmpeg,详细阐述了从获取通道、推流到播放的实现步骤,以及hls协议的工作原理和m3u8文件的作用。
摘要由CSDN通过智能技术生成

前言

目前做的项目,需要Web端显示实时视频数据。本次项目使用的是海康威视的摄像头进行实时监控。

硬件:海康威视的摄像头

软件:video.js、nginx、vlc

参考:https://blog.csdn.net/qq_36720088/article/details/82893924?utm_source=distribute.pc_relevant.none-task

一、实时视频

1、前期工作

海康摄像头支持四种取流协议,其中在web上能利用的为三种协议:rtsp、rtmp、hls。rtsp在web上显示起来比较复杂,这里我们主要介绍rtmp、hls。

在这里插入图片描述

RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing)和分包(packetizing)的问题。随着VR技术的发展,视频直播等领域逐渐活跃起来,RTMP作为业内广泛使用的协议也重新被相关开发者重视起来。

HLS:HTTP Live Streaming,是由苹果公司提出的基于HTT的流媒体网络传输协议。他的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些。当媒体流正在播放时,客户端可以选择从愈多不同的备用源中以不同的速率下载同样的资源,允许流媒体绘画适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含源数据的extended M3U(m3u8)playlist文件,用于寻找可用的媒体流。

rtmp流属于flv格式只能用flash播放,故需要flash插件支持;但现在flash将被废除,在2020年底,chrome、FireFox等主流浏览器都不支持flash,虽然flash在中国有特供版,但终究不是长久之计。所以我们考虑用hls。其实各大视频现在都采用了hls,并且还使用了blob加密。事实证明,hls比flash安全稳定多了,果然抵不过苹果的真香定律。

2、具体实现

第一步:

1、先下载海康威视的设备网络SDK,根据自己的运行环境选择合适版本。

我下载的是CH-HCNetSDKV6.1.4.42_build20200527_win64,所以解压后是这样的。

在这里插入图片描述

可以参考demo示例,编写自己的程序。

2、修改HCNetSDK类中的HCNetSDK地址,改为自己项目的HCNetSDK.dll地址。可以用一个方法来获取项目的HCNetSDK.dll。

    /**
     * 获取项目webapp目录
     * @return
     */
    public static String getWebPath()
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lllwyh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值