RTSP网络摄像头/海康大华硬盘录像机网页无插件直播方案EasyNVR如何实现RTMP/FLV/HLS/RTSP直播流分发

背景需求

对于摄像机直播,客户反馈的最多就是实现web直播、摆脱插件,可以自定义集成等问题。

我们熟悉的EasyNVR已经完美的解决了这些问题。然而对于web播放也存在一些问题,通常我们web播放RTMP流使用的是flash,在这个过程中就会出现一个问题,随着web端一直播放,直播时间的增加,视频直播的延时也会累积起来,延时也就越大。

问题分析

实际上在很多播放器都会有类似问题,出现该问题的原因在于我们播放rtmp视频流的时候启用了flash,咱们的EasyNVR调用rtmp视频流也有这个问题存在。

解决参考

EasyPlayer.js是一款开源的播放器,对于播放器自身定位不一定是实时的直播。我们对他进行了重新的编译,将缓存设置更小,同时EasyPlayer.js也有对应的参数是用来对应播放实时流的。

经过我们实时的测试发现,编译出的低延时,追帧版本的播放器在实测过程中对网络有一定的要求,因为播放器在播放时为了保证实时性就会一直追帧,这样就不会存在累计延时的情况了。但是,当网络环境差的时候,我们的网络无法完全满足直播视频数据时就会在直播画面中出现类似掉帧的情况。

EasyNVR的处理方式

EasyNVR是实时的进行直播视频流,因此在视频的web直播中我们也会遇到延时累计的问题。我们采用的方式是将两个播放形式都集成到我们的播放系统中,并且可以通过播放页面来进行播放模式的选择。

EasyNVR方案一-加水印.png

我们将直播分为了实时直播和流畅直播,顾名思义,实时就是保证直播的实时性,保证播放器的低延时直播;流畅直播则为可以在网络环境不是特别理想的情况下依然可以进行流畅的视频直播。

56.png

经过播放一段时间的对比就可以看出两者这件的差别。注意为了方便用户的集成,我们将EasyPlayer.js的功能通封装成播放器EasyPlayer。

关于EasyNVR

EasyPNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为HTTP-FLV/RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyPNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发。

NVR3.png

提交

Image placeholder
forakinte
未设置
  83人点赞

没有讨论,发表一下自己的看法吧

推荐文章
Onvif/RTSP海康大华网络安防摄像机网页无插件直播方案EasyNVR如何使用Excel将通道配置简单化?

进入移动互联网时代以来,企业微信公众号已成为除官网以外非常重要的宣传渠道,当3.2亿直播用户与9亿微信用户的势能累加,在微信上开启直播已成为越来越多企业的必然选择。EasyNVR核心在于摄像机的音视频

Onvif/RTSP海康大华网络安防摄像机网页无插件直播方案EasyNVR中直播页面和视频列表页面的区别介绍

背景分析随着平安城市、智慧城市、雪亮工程、智能交通等各项建设的持续开展,安防逐渐得到普及,面对如此广阔的市场,对安防企业来说不仅仅是机遇更多的是挑战。现今大多数摄像头一直没能摆脱人工监控的传统监控方式

Onvif/RTSP海康大华网络安防摄像机网页无插件直播方案EasyNVR登陆用户名密码失效问题解决方案

背景分析随着互联网基础设施建设的发展,4G/5G/NB-IoT各种网络技术的大规模商用,视频随时随地可看、可控的诉求越来越多,互联网思维、架构和技术引入进传统监控行业里,成为新形势下全终端监控的基础需

RTSP、RTMP网络摄像头互联网无插件直播视频流媒体服务器EasyNVR在windows上无法启动问题排查

背景需求随着雪亮工程、明厨亮灶、手机看店、智慧幼儿园监控等行业开始将传统的安防摄像头进行互联网、微信直播,我们知道摄像头直播的春天了。将安防摄像头或NVR上的视频流转成互联网直播常用的RTSP、RTM

安防摄像头网页无插件直播流媒体服务器EasyNVR在IE浏览器下的 pointer-events- none前端兼容性调试

背景说明由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合是大势所趋。传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都需要OCXWeb插件进行直播。对于安防监控

安防摄像头RTSP/Onvif协议网页无插件直播视频流媒体服务器EasyNVR之按需直播如何有效利用最大上行带宽

介绍一般情况下,直播默认的播放方式是非按需直播,但很多情况下,不少用户会选择按需直播。按需直播能够减少带宽流量和服务器性能占用,最优的提高服务器的使用效率。下面我们来系统介绍下EasyNVR中按需直播

RTSP-ONVIF协议安防视频监控流媒体服务解决方案EasyNVR在Windows重启时提示“进程意外终止”问题解析

什么是ONVIFOpenNetworkVideoInterfaceForum,开放型网络视频接口论坛,以公开、开放的原则共同制定开放性行业标准。是一个提供开放网络视频接口的论坛组织。ONVIF规范描述

视频流媒体服务器对接宇视摄像机OCX插件出现error code 14001错误分析

背景需求随着雪亮工程、明厨亮灶、手机看店、智慧幼儿园监控等行业开始将传统的安防摄像头进行互联网、微信直播,我们知道摄像头直播的春天了。将安防摄像头或NVR上的视频流转成互联网直播常用的RTMP、HTT

CentOS7 下使用 rsync+sersync 配置文件自动同步

为什么需要文件自动同步功能? 我们平时上传代码,可以通过ftp、sftp等将文件上传至服务器,耗时耗力,而且很容易出错。如果服务器数量少还好,一但服务器数量增加,压力可想而知。 这个时候我们可以使用各

Rust 标准库中的 async/await (async-std)

Rust对齐标准库中的async/await(async-std)简介现在的rust生态中,async/await在rust1.39中已经stable,其他库还有futures已经到0.3.x,还有就

干货:计算机网络知识总结

一计算机概述 (1),基本术语 结点(node): 网络中的结点可以是计算机,集线器,交换机或路由器等。 链路(link): 从一个结点到另一个结点的一段物理线路。中间没有任何其他交点。 主机

lamp网站架构

c/s架构 b/s架构 b/s软件的优缺点

jquer如何判断是否有滚动条?

利用jQueryscrollTop()来控制滚动条滚动,再判断滚动条是否有偏移。如果有,则存在滚动条,相反没有滚动就不存在。 $(function(){ $("body").scrollTop(10)

Ubuntu 中使用 Nginx+rtmp 搭建流媒体直播服务.md

一、背景本篇文章是继上一篇文章《Ubuntu中使用Nginx+rtmp模块搭建流媒体视频点播服务》文章而写,在上一篇文章中我们搭建了一个点播服务器,在此基础上我们再搭建一个直播服务器,二、配置rtmp

GitHub上标星1.5w,被B站使用,flv.js开源作者月薪还不到5k!学历对程序员有多重要?

大数据文摘出品作者:刘俊寰上周,文摘菌向大家介绍了在美国当数据科学家的年薪水平,发现科学家们的整体薪资走势虽然有所下降,但是年薪中位数保持在12万美元左右。同一时间,知乎上一个很老的话题忽然被重提,也

京东云和英特尔“花样”升级高性能云硬盘

数据,已成为这个时代的基调。当我们因为数据带来新的机遇而喜不自胜的时候,也常常会不可避免地遇到一些随之而来的困扰。与如何更好地使用数据相比,数据的存储和管理是更棘手的问题所在。面对海量数据爆炸式的增长

行业目前最大容量,东芝16TB硬盘里藏了哪些技术?

强大的SSD似乎给硬盘(HDD)带来了“毁灭性”的打击,使其淡出存储舞台,但事实并非如此。这种冲击确实存在,不过更多在消费级硬盘市场。对于企业级的数据存储,可以说从现在到未来很长一段时间内,硬盘依旧会

代表性企业级大容量氦气硬盘解析:希捷Exos X14

 海量数据时代,AI、大数据、物联网等技术不止带来了业务应用的转型,还带来了数据的“井喷式”爆发增长。IDC曾预测,2025年全球数据量将高达163ZB。在如此情况下,数据存储成了一个至关重要的问题,

利用 consul+nginx-upsync 实现动态负载

如果Nginx遇到大流量和高负载,修改配置文件重启可能并不总是那么方便,因为恢复Nginx并重载配置会进一步增加系统负载,并很可能暂时降低性能。而一个个修改配置文件也是很容易出错和费时间的操作。 这时

利用 consul+nginx-upsync 实现动态负载

这是前一段时间学习的课程上面的,自己实际操作了一下,详细操作及说明如下。如果Nginx遇到大流量和高负载,修改配置文件重启可能并不总是那么方便,因为恢复Nginx并重载配置会进一步增加系统负载,并很可

死磕Synchronized底层实现,面试你还怕什么?

关于 synchronized 的底层实现,网上有很多文章了。但是很多文章要么作者根本没看代码,仅仅是根据网上其他文章总结、照搬而成,难免有些错误;要么很多点都是一笔带过,对于为什么这样实现没有一个说

css如何实现文字颜色渐变?3种实现方法

基础样式:.gradient-text{ text-align:left; text-indent:30px; line-height:50px; font-size:40px; font-

Linux 文件同步工具之 rsync

学习背景 1.最近公司的项目在使用jenkins做自动化构建,因为jenkins在构建时是比较耗性能的,便单独使用了一台服务器做构建服务器。但是个人觉得这样成本过高,单独拿一台服务器来构建并且该服务器

深入了解JavaScript async/await !

Asyncfunctions让我们以async这个关键字开始。它可以被放置在任何函数前面,像下面这样:asyncfunctionf(){ return1; }在函数前面的「async」这个单词表达了一

ES6问答-async函数

async函数 async是什么?它和Genernator函数外观上的区别是什么? constasyncReadFile=asyncfunction(){ constf1=awaitreadFile