背景分析

接触到EasyNVR产品的开发者都知道,EasyNVR是一套功能齐全、简洁易用的流媒体解决方案,可作为能力曾前端接入摄像头,后端接入业务系统使用,也可以作为应用层,直接修改为属于企业用户自己的视频管理平台,其技术特点主要是以下几个方面:

  • 兼容性:通过 RTSP 协议接入传统网络摄像机、NVR、编码器等,使用RTSP协议接入能兼容市面上绝大多数网络摄像机等源设备,最大程度的提高整体方案的硬件设备的兼容性,有效的避免采用各个硬件厂家SDK 定制的繁琐以及不通用问题;
  • 丰富性:存储方面提供传统的本地硬盘存储,并可支持扩展存储。比如支持接入磁盘阵列、iSCSI设备(IPSan)、阿里云存储,丰富存储方案的选择;
  • 灵活性:存储方面也支持服务器本地磁盘的不间断录像,并可通过自己的应用场景进行定时录像、报警录像等,并可以制定一系列的录像策略,录像的检索与回放不仅支持传统的回放以及回放控制,并加入了时间轴控制等精确的回放控制,使得回放过程更加简单、灵活、精准;
  • 可扩展性:对于播放海康、大华NVR硬盘录像机自身的录像文件(也称作硬件录像),只需在EasyNVR中配置对应硬件录像机参数信息,就可以完成对网络硬盘录像机录像文件的检索和点播回放,重要的是免去了插件安装、浏览器限定等条条框框,在拥有录像机观看录像功能的基础上更是实现了无插件、多平台自由观看回放,使录像观看更加简单化,更加友好;
  • 开拓性:支持CDN推流,可以根据具体的现场需求,实时推流至流媒体服务器或者进行CDN转发。

发现问题:

EasyNVR互联网直播系统一直都是与时俱进,不断完善,丰富功能,最近团队进行系统内部测试,在linux系统中部署了一台EasyNVR,当部署好,运行起来发现以下问题:EasyNVR的配置页面数据出不来

分析问题:

基于是web页面出现的问题,开发人员第一反应一定是“F12”查看一下接口请求情况、是否有数据返回… …令人感到万分意外的是从“headers”状态一切都是正常的,但是我们的“response”的数据确实没数据展示。这说明我们的接口请求没有问题,问题可能出现在其他方面。

对于接口返回的情况排查完之后,我们通过控制台来看看会不会有什么发现。控制台很友好的抛出了问题*ERR_CONTENT_LENGTH_MISMATCH*

因为没有遇到过类似问题,我们开始在网络上寻找大神支援。

最后发现:原来是 nginx 的工作进程对大文件做了缓存,这个缓存在 %nginx%/proxy_temp 目录下,主进程在读取缓存的时候由于权限问题而无法访问。 EasyNVR确实是使用nginx作为方向代理的。这个问题,在我理解看来,就是linux下的文件权限的问题。

问题解决

  • linux比较注重文件的权限,于是我们给“/proxy_temp 目录”赋予相应的权限,将缓存的目录权限修改成对应权限。

  • 修改对应权限过后发现问题有效解决啦!!!!

ps:刚刚接触linux系统,通过本博文问题反思,发现思维转变很重要!!Go!Go!Go!

EasyNVR方案架构

方案一

  • 服务器在本地,与IPCamera/NVR/编码器同在一个局域网,拥有一个内网IP地址又具有外网访问地址
  • 多个IPCamera/NVR/编码器仅有内网IP地址(无外网IP),EasyNVR通过内网拉取IPCamera/NVR/编码器的流数据

方案二

  • 服务器在公网(比如云主机、公网服务器),与设备不在同在一个局域网内
  • IPCamera/NVR/编码器单独或者共有固定的公网IP地址,EasyNVR服务器可以直接访问到设备

方案三

  • EasyNVS服务器部署在公网(比如云主机、公网服务器)
  • 有多个内网现场的直播设备需要进行公网直播
  • EasyNVR对接EasyNVS可以利用网络实现按需直播,同时屏蔽各种网络环境问题,适用于有线、WIFI、4G、专网
  • 支持云端运维,公网具体运维每个现场EasyNVR设备
  • EasyNVS管理平台能获取到EasyNVR的所有能力,并进行互联网化输出,同时进行统一化的管理和接口输出。

EasyNVR应用场景

EasyNVR可以说已经成为国内视频互联网化基础建设的排头兵,几乎各个民生行业都已经有了EasyNVR视频能力输出的身影,EasyNVR多年服务于各行各业视频基础建设,EasyNVR的可靠性、完整性、稳定性已经受到了业界的广泛认可!



雪亮工程

水利监控

网络直播

智慧农业

EasyNVR安防摄像机网页流媒体服务

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

实现RTSP摄像机硬盘录像机NVR网站网页微信H5直播方案EasyNVR部署问题之:ERR_CONTENT_LENGTH_MISMATCH的更多相关文章

  1. 通过Onvif设备探索获取EasyNVR网页无插件播放所需要的摄像机硬盘录像机NVR的RTSP地址

    想实现网络监控摄像头进行视频直播的朋友门应该知道,方法其实非常简单,你不需要使用支持直播的网络摄像机,只需要经过一套流媒体服务器将监控摄像头的RTSP视频流转为RTMP\HLS\HTTP-FLV视频流 ...

  2. EasyGBS国标流媒体视频平台接入海康、大华、宇视的摄像机、硬盘录像机NVR、国标下级平台的方案

    在上一篇<EasyNVR和EasyDSS云平台联手都不能解决的事情,只有国标GB28181能解决了>我们大致介绍了国标GB/T28181的使用场景,而且初步介绍了EasyGBS国标视频平台 ...

  3. 如何自己构建一套EasyNVR这样的无插件流媒体服务器实现摄像机硬盘录像机的网页可视化直播

    EasyNVR流媒体解决方案 EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera.NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNV ...

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

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

  5. EasyNVR摄像机网页无插件直播方案H5前端构建之:通道内部搜索功能的实现方案与代码

    EasyNVR网页摄像机直播方案 EasyNVR是一款拥有完整.自主.可控知识产权,同时又能够具备软硬一体功能的安防互联网化流媒体服务器,能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络 ...

  6. 浏览器低延时播放监控摄像头RTSP海康大华硬盘录像机NVR视频(EasyNVR播放FLV视频流)

    背景描述 EasyNVR的使用者应该都是清楚的知道,EasyNVR一个强大的功能就是可以进行全平台的无插件直播.主要原因在于rtsp协议的视频流(默认是需要插件才可以播放的)经由EasyNVR处理后可 ...

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

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

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

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

  9. EasyNVR摄像机网页无插件直播方案H5前端构建之:使用BootstrapPagination以分页形式展示数据信息

    背景介绍 EasyNVR核心在于摄像机的音视频流的获取.转换.转码与高性能分发,同时同步完成对实时直播流的录像存储,在客户端(PC浏览器.Android.iOS.微信)进行录像文件的检索.回放和下载. ...

随机推荐

  1. HTML&CSS基础-内联框架

    HTML&CSS基础-内联框架 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.如下图所示,在同一个路径中有两个网页 <!DOCTYPE html> < ...

  2. oracle获取时间段之间的所有日期

    SELECT TO_CHAR(ADD_MONTHS(TO_DATE('2014-10', 'yyyy-MM'), ROWNUM - 1), 'yyyy-MM') as monthlist FROM D ...

  3. python学习类与方法的调用规则

    1类方法的特点是类方法不属于任何该类的对象,只属于类本身 2类的静态方法类似于全局函数,因为静态方法既没有实例方法的self参数也没有类方法的cls参数,谁都可以调用 3.实例方法只属于实例,是实例化 ...

  4. Please umount the filesystem and rectify the problem(s)

    1.输入命令:ls -l /dev/mapper 2.再输入:xfs_repair /dev/dm-0 3.输入命令:xfs_repair -L /dev/dm-0 4.最后进行重启:init 6 等 ...

  5. 深度学习Keras框架笔记之Dense类(标准的一维全连接层)

    深度学习Keras框架笔记之Dense类(标准的一维全连接层) 例: keras.layers.core.Dense(output_dim,init='glorot_uniform', activat ...

  6. HDU - 4059: The Boss on Mars (容斥 拉格朗日 小小的优化搜索)

    pro: T次询问,每次给出N(N<1e8),求所有Σi^4 (i<=N,且gcd(i,N)==1) ; sol:  因为N比较小,我们可以求出素因子,然后容斥.  主要问题就是求1到P的 ...

  7. C++中优先队列的使用

    既然是队列那么先要包含头文件#include <queue> 优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本质是一个堆实现的 .定义:priority_ ...

  8. js遍历localStorage的键值对

    //遍历本地存储localStorage for (var i = 0; i < localStorage.length; i++) { var key = localStorage.key(i ...

  9. Web API design

    Web API design 28 minutes to read Most modern web applications expose APIs that clients can use to i ...

  10. packr 方便的潜入静态资源文件到golang 二进制文件中

    类似的工具以前有介绍过statik,今天使用的工具是packr 也是很方便的golang tools 安装 go get -u github.com/gobuffalo/packr/packr 或者我 ...