EasyNVR是怎么做到Web浏览器播放RTSP摄像机直播视频延时控制在一秒内的
背景说明
由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合也是大势所趋。传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都是都需要OCX Web插件进行直播。对于安防监控的视频直播需求,根据不同的业务需求,对视频直播需求也是不同的。其中,有大部分安防直播,对视频直播的延时要求是相对比较高的。
用户问题咨询
经常会有用户咨询到,集成视频到自身的物联网系统,发现视频直播延时会相对较大,但是从EasyNVR自身系统进行观看会发现延时会低很对多!希望了解到咱们的EasyNVR是如何实现低延时直播的。
针对这个用户的疑问,我会在接下来的博文中对直播延时进行介绍!
视频直播延时出现分析
对于出现延时,我们需要从多方面进行分析。
设备端:
原因: EasyNVR是通过拉取设备的RTSP实现直播的,因此我们直播的视频源(RTSP)自身需要是低延时,如果设备端 自身的延时就存在,我们再基于这个流进行转发直播,必然也会存在延时。
解决方案: 对于摄像机等出流的硬件设备,我们可以通过优化硬件设备 优化对应的参数,从而保证源流地址的低延时
网络传输:
原因众所周知,视频直播,对网络要求肯定是相对较高的,网络跟不上势必会导致卡顿、延时的增加
解决方案: 一个是我们可以增加网络配置,通过优化网络来增加流的传输速率,另一个方面是通过减低流的相关配置,类似于降低流的码率之类的来减小视频流的传输对网络的要求!
客户端:
原因 不管是什么协议的视频流,在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
EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发;
EasyNVR解决方案交流群:383501345
Copyright © EasyNVR Team 2016-2019
—本文转自EasyNVR官方博客:https://blog.csdn.net/EasyNVR
EasyNVR是怎么做到Web浏览器播放RTSP摄像机直播视频延时控制在一秒内的的更多相关文章
- EasyNVR网页/微信播放RTSP摄像机HLS/RTMP播放时出现起播等待问题的优化过程
EasyNVR 项目中, 我们需要在网页/微信中嵌入 HLS 播放器, 实现直播效果. 开发过程中, 我们调研了很多HLS播放器, 包括 百度cyberplayer, ckplayer, flowpl ...
- web无插件播放RTSP摄像机方案,拒绝插件,拥抱H5!
本文转自:http://www.cnblogs.com/babosa/p/7355468.html 需求 问题:有没有flash播放RTSP的播放器?H5能不能支持RTSP播放? 答案:没见过,以后估 ...
- [转] web无插件播放RTSP摄像机方案,拒绝插件,拥抱H5!
需求 问题:有没有flash播放RTSP的播放器?H5能不能支持RTSP播放? 答案:没见过,以后估计也不会有: 问题:可以自己做浏览器插件播放RTSP吗? 答案:可以的,chrome做ppapi插件 ...
- 浏览器播放rtsp流媒体解决方案
老板提了一个需求,想让网页上播放景区监控的画面,估计是想让游客达到未临其地,已知其境的状态吧. 说这个之前,还是先说一下什么是rtsp协议吧. RTSP(Real Time Streaming ...
- H5s播放rtsp和rtmp视频
最近接触的几个项目都有对接视频的功能,目前国内视频厂商以海康和大华为主,其对应的视频流格式也不一致,导致对接起来很麻烦.有幸在客户那接触到一种新的视频对接解决方案,支持Html5标准.废话不多少,看一 ...
- 3┃音视频直播系统之浏览器中通过 WebRTC 直播视频实时录制回放下载
一.录制分类 在音视频会议.在线教育等系统中,录制是一个特别重要的功能 录制一般分为服务端录制和客户端录制 服务端录制:优点是不用担心客户因自身电脑问题造成录制失败(如磁盘空间不足),也不会因录制时抢 ...
- EasyNVR网页Chrome无插件播放安防摄像机视频流是怎么做到web浏览器延时一秒内
背景说明 由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合是大势所趋.传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都需要OCX Web插件进行直播.对于安防 ...
- Web下无插件播放rtsp视频流的方案及各家优秀内容资源整理
Web下无插件播放rtsp视频流的方案及各家优秀内容资源整理 方案一:服务器端用 websocket 接受 rtsp ,然后,推送至客户端 实现步骤: 方案二:使用 ffmpeg + nginx 把 ...
- 浏览器无插件播放rtsp流解决方案
1. 安装 FFmpeg 参考 CentOS下安装FFmpeg,特别详细. 我遇到的错误和解决办法: 缺少lame ffmpeg+libmp3lame库源码安装教程(CentOS) make ffmp ...
随机推荐
- Django --- 查询优化,ajax
目录 ORM查询优化 MTV与MVC模型 choices参数 ajax简介 前后端传输数据编码格式 ajax如何传输json格式数据 ajax如何传入文件数据 序列化 ORM查询优化 在使用数据库数据 ...
- VOJ 1049送给圣诞夜的礼物——矩阵快速幂模板
题意 顺次给出 $m$个置换,反复使用这 $m$ 个置换对一个长为 $n$ 初始序列进行操作,问 $k$ 次置换后的序列.$m<=10, k<2^31$. 题目链接 分析 对序列的置换可表 ...
- 对数据仓库ODS DW DM的理解
原文链接:https://www.jianshu.com/p/72e395d8cb33 今天看了一些专业的解释,还是对ODS.DW和DM认识不深刻,下班后花时间分别查了查它们的概念. ODS——操作性 ...
- Tomcat 部署多个web项目
1.若Tomcat的端口设置为10000,则http://localhost:10000访问的目录是 webapps 2.Service.xml中host内配置Context标签,path+docba ...
- learning armbian steps(1) ----- armbian 入门知识基础学习
第一问: armbian是什么? Armbian是轻量级的Debian系统和为ARM开发板专门发行并重新编译的Ubuntu系统. 第二问: 什么场景下会用到armbian系统? 一个带有arm编译器 ...
- VIM工具的常用命令快捷键
一.光标的移动0: 移动到行首.$: 移动到行尾.w: walk移动到下一个单词b: back 移动到上一个单词h或退格: 左移一个字符:后退l或空格: 右移一个字符:前进j: 下移一行:k: 上移一 ...
- Launch4j:An error occurred while starting the application.解决方案
长期使用Processing 2.X进行开发,突然有一天Processing 1.5.1打不开了,报错如下: 按[确定]后窗口消失,但是任务管理器中的“javaw.exe”并没有消失..... 试过各 ...
- python-图像目标监测(1)识别答题卡
# -*- coding: utf-8 -*- """ Created on Thu Dec 20 16:05:10 2018 @author: leizhen.liu ...
- makefile通用模板(二)
DIR_INC = ./include DIR_SRC = ./src DIR_OBJ = ./obj DIR_BIN = ./bin DIR_LIB = /home/exbot/lib LIBS = ...
- day25 内置常用模块(四): 模块和包
阅读目录: 模块 import from xxx import xxx 包 import from xxx import xxx from xxx import * __init__.p ...

