EasyNVR网页Chrome无插件播放安防摄像机视频流是怎么做到web浏览器延时一秒内
背景说明
由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合是大势所趋。传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都需要OCX Web插件进行直播。对于安防监控的视频直播需求,根据不同的业务需求,对视频直播需求也不尽相同。针对这样的行业大环境背景,立足于开源社区的EasyDarwin团队推出了EasyNVR、EasyDSS等系列产品。而对于安防监控的视频直播需求,对延时要求都比较高。
用户问题咨询
企业集成视频到自身的物联网系统时,发现视频直播延时相对较大,但是从EasyNVR自身系统进行观看延时却低很多!想问下EasyNVR是如何实现低延时直播的?针对这个用户的疑问,我会在接下来的博文中对直播延时进行介绍!
视频直播延时出现分析
对于出现延时,我们需要从多方面进行分析。
1、设备端:
原因: EasyNVR是通过拉取设备的RTSP实现直播的,因此我们直播的视频源(RTSP)自身需要是低延时,如果设备端自身延时就存在,基于这个流进行转发直播,必然也会存在延时。
解决方案: 对于摄像机等出流的硬件设备,可以通过优化硬件设备、优化对应的参数,来保证源流地址的低延时。
2、网络传输:
原因:众所周知,视频直播对网络要求是相对较高的,网络跟不上势必会导致卡顿、延时的增加;
解决方案: 一方面可以增加网络配置,通过优化网络来增加流的传输速率,另一个方面通过降低流的相关配置,类似于降低流的码率之类的来减小视频流的传输对网络的要求!
3、客户端:
原因 不管是什么协议的视频流,在EasyNVR流媒体服务器中的处理方式都是将视频流转发出去,由客户端进行解码播放,因此,在视频直播展现的过程中,客户端的解码播放是至关重要的一环,大部分的播放问题出现也都是由于客户端导致的。
解决方案: 对于EasyNVR的视频播放,EasyNVR团队有专门针对web流媒体视频直播的播放器,该播放器可以播放HLS、FLV、RTMP等视频流。而rtmp视频流,是需要在web页面通过flash解码来进行播放,上述所说的播放器内部通过优化flash文件,处理了视频流的客户端播放,分为视频流畅不卡顿的“流畅模式”和低延时的“极速模式”。

极速模式

流畅模式
EasyNVR延时测试对比

通过该图片我们可以看出,在派出设备自身rtsp延时的情况下,EasyNVR的低延时极速模式基本可以做到于源视频流保持同步!
我们再次验证一下源视频流的延时

图片不太清晰,但是我们可以清除的看到源视频流的延时是半秒以内的。
结论总结
通过一系列的测试对比,我们发现,EasyNVR转发视频流的能力完全没有问题,对于视频流的延时处理也相对优秀。因此我们在实地的集成过程中如果有出现类似的视频延时问题,我们可以从源rtsp地址入手,后者更多的关注客户的播放视频。
这里附送EasyNVR视频直播的web播放器地址:https://www.npmjs.com/package/easy-player
EasyNVR相关集成使用说明文档及demo:https://github.com/EasyNVR/EasyNVR
专业团队
为了保障我们的服务器正常稳定运作,EasyNVR有专业的运维(售前支撑、商务咨询、售后维护)团队,随时对客户各种突发情况快速响应处理,保证互联网直播的顺利进行。我们也希望实现“0延时”,但理想丰满,现实骨感。每一个完美的直播背后都需要设备、网络、并发量等流程配合完成,正所谓“蝴蝶效应”,任何一个小环节都会对直播延时产生影响,EasyNVR团队要做的就是不断完善开发互联网直播系统,保证直播的低延时、稳定性,同时视频播放高清流畅。

EasyNVR安防摄像机网页流媒体服务
EasyNVR是一款拥有完整、自主、可控知识产权,同时又能够具备软硬一体功能的安防互联网化流媒体服务器,能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP、Onvif协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发。详情可访问EasyNVR官网:http://www.easynvr.com

智慧城市

经典案例
EasyNVR网页Chrome无插件播放安防摄像机视频流是怎么做到web浏览器延时一秒内的更多相关文章
- EasyNVR网页Chrome无插件播放摄像机视频功能二次开发之云台控制接口示例代码
随着多媒体技术和网络通信技术的迅速发展,视频监控技术在电力系统.电信行业.工业监控.工地.城市交通.水利系统.社区安防等领域得到越来越广泛的应用.摄像头直播视频监控通过网络直接连接,可达到的世界任何角 ...
- EasyNVR网页H5无插件播放摄像机视频功能二次开发之直播通道接口保活示例代码
背景需求 随着雪亮工程.明厨亮灶.手机看店.智慧幼儿园监控等行业开始将传统的安防摄像头进行互联网.微信直播,我们知道摄像头直播的春天了.将安防摄像头或NVR上的视频流转成互联网直播常用的RTMP.HT ...
- 如何自己构建一套EasyNVR这样的无插件流媒体服务器实现摄像机硬盘录像机的网页可视化直播
EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...
- EasyNVR摄像机网页Chrome无插件视频播放功能二次开发之通道配置文件上传下载示例代码
背景需求 熟悉EasyNVR产品的朋友们都知道,产品设计初期根据整个直播流程层级,我们将EasyNVR无插件直播系统划分为:硬件层.能力层.应用层,连接硬件与应用之间的桥梁,同时屏蔽各种厂家硬件的不同 ...
- 通过Onvif设备探索获取EasyNVR网页无插件播放所需要的摄像机硬盘录像机NVR的RTSP地址
想实现网络监控摄像头进行视频直播的朋友门应该知道,方法其实非常简单,你不需要使用支持直播的网络摄像机,只需要经过一套流媒体服务器将监控摄像头的RTSP视频流转为RTMP\HLS\HTTP-FLV视频流 ...
- 如何自己实现一套EasyNVR这样的无插件流媒体服务器
EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...
- Web下无插件播放rtsp视频流的方案及各家优秀内容资源整理
Web下无插件播放rtsp视频流的方案及各家优秀内容资源整理 方案一:服务器端用 websocket 接受 rtsp ,然后,推送至客户端 实现步骤: 方案二:使用 ffmpeg + nginx 把 ...
- EasyNVR网页无插件播放摄像机RTSP流是如何调取接口在Web页实现多窗口同时直播的
背景需求 在互联网飞速发展的时代,开发者常会说的一个词就是"跨平台".自从移动端的用户需求越来越大,H5逐渐发展,跨平台似乎已经成为了软件开发不可或缺的技术.EasyNVR互联网直 ...
- EasyNVR无插件播放HLS/RTMP网页直播方案前端完善:监听表单变动
在上一篇博客中我们表述完了防止提交成功后多余操作提交的一个过程:其中的精髓在于ajax的触发事件的使用. 而这篇博客主要想说明一下如何实时的判断出表单是否发生变化. 问题表述: 在网页前端的开发过程中 ...
随机推荐
- JS数组扁平化(flat)
需求:多维数组=>一维数组 let ary = [1, [2, [3, [4, 5]]], 6]; let str = JSON.stringify(ary); 第0种处理:直接的调用 arr_ ...
- delete,drop,truncate的区别?
drop:是删除表的结构 delete:删除表的数据 truncate:删除表的数据,并且对id进行重新排序.
- Go语言 - 指针 | new | make
区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针. 要搞明白Go语言中的指针需要先知道3个概念:指针地址.指针类型和指针取值. 概念 任何程序数据载入内存后,在内存都有他们的地 ...
- include指令 include动作
- Spring框架的JDBC模板技术和事物
Spring框架的JDBC模板技术 技术分析之Spring框架的JDBC模板技术概述 1. Spring框架中提供了很多持久层的模板类来简化编程,使用模板类编写程序会变的简单 ...
- 15-Flutter移动电商实战-商品推荐区域制作
1.推荐商品类的编写 这个类接收一个List参数,就是推荐商品的列表,这个列表是可以左右滚动的. /*商品推荐*/class Recommend extends StatelessWidget { ...
- robot framework设置更高级别的关键字
robot framework中除了内置的关键字,以及低级别的用户自定义关键字外,为了使用例更加整洁,我们还可以形成更高级别的关键字 方法如下: 在Keywords里面设置 其中Run Success ...
- 第三章 - SQL基础及元数据获取
SQL的介绍 SQL的定义:结构化查询语句 SQL的作用:对库和表进行操作 SQL的常用分类 DDL 数据定义语言(Data Definition Language) DCL 数据控制语言(Data ...
- 【批处理】if命令,注释方式
If 命令 if 表示将判断是否符合规定的条件,从而决定执行不同的命令. 有三种格式:1.if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串 ...
- Redis的订阅、事务、持久化
1.Redius的订阅: 运用关键字subscribe订阅: 关键字publish发布: 发布后,订阅的页面才会出现发布的内容. 2.Redis事务: Redis事务与mysql的事务不同,mysql ...