我们在实现一套EasyNVR无插件直播方案时,选择了采用厂家无关化的通用协议RTSP/Onvif接入摄像机IPC/NVR设备,总所周知,Onvif是摄像机的发现与控制管理协议,Onvif用到的流媒体协议也是RTSP,那么,我们在摄像机/NVR流媒体接入上,就是直接采用统一的RTSP协议接入;

然而,在RTSP协议上,由于各个厂家都有不同的处理方法,比如 海康、大华、雄迈、宇视、天地伟业等厂家的RTSP地址规则就不一样,在有Onvif协议支持的设备还好一些,可以通过Onvif将摄像机的RTSP地址发现出来,但是遇到不支持Onvif的设备,就要自己拼接各个厂家的RTSP地址规则了,例如:海康、大华IpCamera RTSP地址和格式雄迈/巨峰摄像机RTSP地址格式

接入RTSP方面,目前市面上兼容性最强的两个组件:live555和ffmpeg,各有利弊,live555结构复杂、ffmpeg整体庞大,最终我们选择了以live555作为摄像机RTSP接入的方案,能非常方便实现部分功能的定制,例如本文重点提到的OPTIONS发送的问题:

当我们采用RTP over UDP/TCP方式在取流的过程中,RTSPClient(live555)可能长时间都在从RTSPServer(IPC/NVR)取流,但缺没有向RTSPServer发送保活报文,如果服务器端启动了Session保活检测机制(参看live555中RTSPServer中noteliveness实现),服务器端长时间没有收到客户端发送的数据包,就会认为客户端连接是假连接,主动断开与客户端的连接(不管客户端是否正在取流);

所以,我们为了解决上述的问题,我们大部分的RTSPClient客户端都会定时(例如30s)向RTSPServer发送OPTIONS(有的也有可能发送的是GET_PARAMETER)命令,类似于保活报文,这样服务器端就能正常地发送直播数据流了;

然而,并不是所有的RTSPServer都做的那么好,就比如海康的某些IPC/NVR型号,当RTSPClient在拉流的过程中,突然发送OPTIONS保活报文,就像是发送了一个垃圾数据一样,RTSPServer自动就将整条RTSP连接断开了,导致RTP取流也随着停止了,我们只能在这类设备中,选择不发送OPTIONS保活包;

EasyNVR RTSP无插件H5直播方案

EasyNVR就完全解决了上述各种问题,实现了一个完整的、小而美的传统安防向互联网迈进的解决方案:

★ 支持PC端/Android安卓端/iOS苹果端/微信端无插件化观看;

★ 支持微信扫描二维码观看;

★ 支持微信/微博直播分享;

★ 基于纯Web网页/无插件H5观看(不用安装任何APP);

★ 支持海康/大华等市面上几乎全部的网络摄像机接入;

★ 实时IP Camera/NVR直播画面实时直播监控;

EasyNVR 下载

EasyNVR项目下载地址:https://github.com/EasyDarwin/EasyNVR(内含使用文档和接口文档)

EasyNVR适用于各种网络场景中

EasyNVR适用的案例

基于EasyNVR实现了很多行业场景的直播需求,目前已经广泛应用于石油油田、水利大坝、园区监控、幼儿园直播、景区直播:

上为一水利监控项目应用,EasyNVR服务器一边拥有内网访问权限,一边拥有公网固定IP,采用的是方案1x

上为一施工工地网页监控项目,采用的EasyNVR方案为1x

上为一幼儿园直播监控项目,面向家长进行幼儿园微信直播,采用的EasyNVR方案为1x

上为一园区监控网页监控项目,采用的EasyNVR方案为1x

上为一施工工地网页监控项目,采用的EasyNVR方案为1x

上为中石油地点网页监控项目,采用的EasyNVR方案为2x

上为黄山某景区微信直播项目,采用的EasyNVR方案为2x

EasyNVR使用的一些常见问题

常见应用: 安防监控系统 / 小区监控 / 幼儿园监控 / 交通监控 / 厂区监控 / 景点景区监控 / 店面监控

特色特点: 基于纯web页面观看监控 / 无须安装插件 / 跨平台支持PC端、安卓端、iOS苹果端 /支持微信扫二维码观看

WEB端跨平台监控的目标是什么?

本站做的是取监控摄像头视频流,进行服务器端分发,实现无插件跨平台的web监控(注意,不是基于APP / APK,而是基于纯web页面),PC端/安卓/IOS苹果等主流终端,打开同一个网页地址都可以观看,同时也支持手机微信扫二维码观看。

海康/大华自身就有官方的自带的web端,你这边做的这种有什么意义?

第一,本站做的是无插件跨平台的web观看形式,PC/安卓/IOS苹果都开打开同一个页面,直接可以观看(web端是不要装插件的);而海康/大华的web端观看是必须装他们自己的插件的,这是最主要的区别;

第二,本站方案,实现的是用户自己的流媒体服务器平台,无在线观看人数限制的问题;而海康云平台(萤石云)是海康的私有云,基于萤石云观看,也是必须装海康自己的APP或APK,并且对在线人数有严格限定的。

EasyNVR用户需要准备什么?

1. 服务器方面:Windows2008/Windows2012/CentOS 64位操作系统 、4G内存、2核CPU及以上;

2. 服务器带宽:根据自身情况而定 : 5M-100M不等(与用户要求的在线人数有关系);

3. 一个或多个监控摄像头(支持RTSP或Onvif) 。

我们提供什么样的服务?

1. 为用户搭建服务器端环境;

2. 为用户实现海康/大华监控摄像头实现基于web端无插件跨平台直播;

3. 实现PC、安卓、IOS苹果三种主流终端都可以观看监控画面;

4. 提供完整实例给用户,提供完整技术教程,提供技术售后。

为什么选择我们?

1. 经验。我们拥有数年流媒体技术服务的实际应用经验,也拥有web流媒体播放器操作经验,熟悉多终端跨平台技术;

2. 实测。我们亲自购买海康/大华/雄迈/天地伟业网络摄像头IPC,进行实测验证;庞大的开源社区用户群体;

3. 多种方案。我们目前能提供1x / 2x / 3x 三种方案,这三种方案基本包含了IPC所处的各种网络环境;

4. 稳定。我们做出的直播效果,无论是PC端直播画面,还是移动端直播画面,都比较稳定;

5. 操作方便。我们给用户提供完整的范例及教程,普通人员均可按范例添加或删减摄像头;

6. 省心省力。一个页面适配PC、安卓、IOS苹果、微信,简化繁杂的主流终端的适配,省心省力。

在线演示:

http://easynvr.easydarwin.org:10800/

获取更多信息

技术方案咨询:13718530929

邮件:support@easydarwin.org

WEB:www.EasyDarwin.org

QQ交流群:587254841

Copyright © EasyDarwin.org 2012-2017

在做RTSP摄像机H5无插件直播中遇到的对接海康摄像机发送OPTIONS心跳时遇到的坑的更多相关文章

  1. 基于EasyDarwin框架实现EasyNVR H5无插件直播流媒体服务器方案

    在之前的一篇博客<web无插件播放RTSP摄像机方案,拒绝插件,拥抱H5!>中,描述了实现一套H5无插件直播方案的各个组件的参考建议,又在博客<EasyNVR H5流媒体服务器方案架 ...

  2. 基于EasyDarwin开源流媒体服务器框架实现EasyNVR H5无插件直播流媒体服务器方案

    背景分析 在之前的一篇博客<web无插件播放RTSP摄像机方案,拒绝插件,拥抱H5!>中,描述了实现一套H5无插件直播方案的各个组件的参考建议,又在博客<EasyNVR H5流媒体服 ...

  3. EasyNVR摄像机网页无插件直播方案H5前端构建之:bootstrap-datepicker日历插件的实时动态展现

    EasyNVR场景需求 基础:不管是城市监控还是园区管理或者是幼儿园监控,这些安防监控需求已经成为我们生活中不可或缺的重要一环,这不仅仅是提升城市管理水平和人民群众安全感的现实需求,也是完善社会治安消 ...

  4. EasyNVR摄像机网页无插件直播方案H5前端构建之:接口调用获取实时信息

    背景分析 熟悉EasyNVR产品的小伙伴应该知道,EasyNVR主要针对的是安防类的项目,通过RTSP/onvif协议将前端高清网络摄像机IPC.NVR等接入进来,然后将设备端的音视频通过采集.转换, ...

  5. EasyNVR摄像机网页无插件直播方案H5前端构建之:bootstrap弹窗功能的实现方案与代码

    前言介绍 在web前端的网页设计中,为了展示出简洁的网页风格和美观的效果,往往会使用弹窗效果在EasyNVR前端页面录像检索功能时,必然会播放录像,如果单独为播放录像文件排一个界面,用户在使用上会更加 ...

  6. EasyNVR摄像机网页无插件直播方案H5前端构建之:区分页面是自跳转页面还是分享页面

    背景分析 EasyNVR整套方案的架构中,涉及到前端设备(摄像机IPC.硬盘录像机NVR.编码器等).流媒体服务端(EasyNVR).客户端终端设备(PC.浏览器.Android.iOS.微信). 在 ...

  7. EasyNVR摄像机网页无插件直播使用过程中问题的自我排查-设备不在线问题的自我排查

    系列背景 由于EasyNVR的受众越来越多,时长会遇到很对类似的问题咨询,之前虽然有写过很多的博文进行技术的或者使用问题的解答,随着客户询问的增多,我发现,要想然客户了解问题和解决问题,往往引导和给一 ...

  8. EasyNVR摄像机网页无插件直播方案H5前端构建之:如何播放HLS(m3u8)直播流

    背景描述 HLS (HTTP Live Streaming)是Apple的动态码率自适应技术,主要用于PC和Apple终端的音视频服务,包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文 ...

  9. EasyNVR摄像机网页无插件直播方案H5前端构建之:关于接口调用常见的一些问题(401 Unauthorized)

    背景分析 最近在使用EasyNVR的过程中,很多小伙伴咨询关于接口调用的问题,初步判断应该是遇到权限问题(401 Unauthorized).EasyNVR为第三方系统和应用提供了标准的API接口,方 ...

随机推荐

  1. Hrbust 2320 OX (博弈)

    题目链接  Hrbust 2320 用三进制来存储整个棋盘的状态. 设$dp[status][now]$为轮到$now$下棋的时候是必胜必败还是平局. 那么若当前能延伸出的所有状态中存在必败态的,则当 ...

  2. luogu P1592 互质

    题目描述 输入两个正整数n和k,求与n互质的第k个正整数. 输入输出格式 输入格式: 仅一行,为两个正整数n(≤10^6)和k(≤10^8). 输出格式: 一个正整数,表示与n互质的第k个正整数. 输 ...

  3. java.lang.NoSuchMethodError: main Exception in thread "main" ===Exception

    java.lang.NoSuchMethodError: mainException in thread "main" 出现该异常是因为在之前我的项目中自定义了一个String类, ...

  4. 经验分享 | Burpsuite抓取非HTTP流量

    使用Burp对安卓应用进行渗透测试的过程中,有时候会遇到某些流量无法拦截的情况,这些流量可能不是HTTP协议的,或者是“比较特殊”的HTTP协议(以下统称非HTTP流量).遇到这种情况,大多数人会选择 ...

  5. 后台CMS日志处理记录

    自从上一次添加了极光推送之后,我的工程就像是着魔了一样,不管怎么调整,日志级别都是DEBUG. 启动一次工程会打印很多无用日志,今天决定抽时间去研究了一下,最终解决了问题,下面记录一下解决过程. 1. ...

  6. Win7无法启动,缺少系统文件ecache.sys怎么办

    网上下载ecache.sys这个文件放到System32目录下即可 http://www.wenjian.net/file/ecache.sys.html  

  7. hdu 4372 第一类斯特林数

    #include <cstdio> #include <iostream> #include <algorithm> #include <queue> ...

  8. jq:正则表达式

    var checkNum = /^[A-Za-z0-9]+$/;   注意没有引号 checkNum.test(这里添加待匹配的字符串); var textNull=/^\s*$/; if(textN ...

  9. const的理解、const指针、指向const的指针

    1.const 的理解 const 是C语言的一个关键字,需要注意的是,const 关键字是把变量变为一个只读的变量(也就是不可以作为左值),绝对不是将这个变量变为常量.也就是说经过const 修饰的 ...

  10. mysql 配置 安装和 root password 更改

    第一步: 修改my.ini文件,替换为以下内容 (skip_grant_tables***重点) # For advice on how to change settings please see # ...