我们在实现一套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. cocoapods集成三方库遇到的坑

    什么都不想说直接上图 这是最近在管理三方库时遇到头疼的问题,刚开始一直怀疑是cocoapods或者ruby的版本问题但是升级到最新版还是同样的错误,后来又怀疑是资源文件的问题但是在同一时间不同地点集成 ...

  2. (17)python Beautiful Soup 4.6

    一.安装 1.登陆官网:https://www.crummy.com/software/BeautifulSoup/ 2.下载 3.解压 4.安装 cmd找到文件路径,运行 setup.py buil ...

  3. (3)Django 配置

    一.settings django安装的应用程序 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.c ...

  4. ()centos6.8安装配置ftp服务器

    ftp传输原理 客户端通过某软件用某个端口(a端口)向服务端发起tcp连接请求,同时告诉服务端客户端另一个空闲端口号(b端口),服务端用21端口与客户端建立一条控制连接通道. 接着在默认情况下,服务端 ...

  5. Java基础教程---JDK的安装和环境变量的配置

    一.Java的安装和环境变量配置 1.Java的安装: 第一步,从Oracle官网下载安装包,当然也可以从其他安全可靠的地方下载(PS:根据不同电脑系统下载相应的安装包,注意电脑的位数.如x64,x3 ...

  6. Ubuntu -- 配置Nginx和https及frp

    使用 sudo apt -get nginx安装最方便. 要确认80端口未被占用. 上传域名的证书. 然后要配置nginx配置文件.

  7. linux系统中毒排查学习记录

    linux有许多的版本,主要关注redhat(centos)和ubuntu这两个主流版本 以下命令基本都需要root权限,执行命令前记得加sudo 第一步 top,ps命令查看系统资源和负载情况,查看 ...

  8. 【Excle数据透视】如何创建一个数据透视表

    数据透视表可以汇总.分析.浏览和提供工作表数据或外部数据源的汇总数据 创建方法一 通过”插入”创建,具体操作请看下图: 创建方法二 通过快捷键创建 使用[ALT+D+P]创建 首先按下alt键,然后依 ...

  9. int a; int* a; int** a; int (*a)[]; int (*a)(int)

    a) int a;表示一个内存空间,这个空间用来存放一个整数(int):b) int* a;表示一个内存空间,这个空间用来存放一个指针,这个指针指向一个存放整数的空间,即a)中提到的空间:c) int ...

  10. oracle 客户端连接

    客户端安装时选择管理员模式安装. 连接配置: 首先找到:\app\Administrator\product\11.2.0\client_1\network\admin 文件夹下  tnsnames. ...