移动互联网越来越普及,幼儿园监控类的项目也越来越多,如何能够以最低的成本、最快的速度搭建一套幼儿园监控类的平台成了许多开发者的需求,那么我们今天就来简单探讨一下如何基于EasyDarwin实现一套幼儿园监控、宝贝在线视频类的流媒体系统平台。

1、流媒体分发:幼儿园监控不同于我们传统意义上的家居监控,家居监控因为同时观看的终端数量有限,多采用p2p的形式,但幼儿园监控里面,同一个摄像机可能会被很多家长同时观看,所以多采用流媒体服务器转发的形式来做,那么就需要用到我们的EasyDarwin流媒体服务器进行转发和分发;

2、前端架构:这需要做两方面的区分,老设备接入和新设备集成,我们现在大部分幼儿园在接入移动互联网监控之前已经有了比较完善的传统监控系统,也就是说设备(DVR、IPC、NVR)已经固定了,如果硬件换代,势必会增加很大成本,或者说是新设备,但没有没有设备改造的权限,只能以标准Onvif/RTSP/SDK的形式控制设备,所以在这些模式下,我们多是采用加中间适配层来实现的,也就是说在内网摄像机与公网平台之间需要加一台设备来做摄像机接入,可以用简单PC的形式来做,也可以用自己开发的嵌入式盒子来实现(这个接入的形式我们在《关于Darwin接入私有协议、私有SDK码流的讨论》有过讨论):

那么具体的平台接入方法实现,我们可以参考EasyDarwin开源项目中的EasyCamera实现:

设备与公网平台的信令接入可以用开源的libEasyCMS实现,设备与流媒体服务器之间的流媒体推送可以用libEasyPusher实现,至于EasyCamera内部与设备怎么对接,用户可以根据自己的需求去选择,无论是上图中描述的SDK接设备,还是Onvif接设备,还是简单的RTSP接设备(RTSP接入设备我们还有libEasyNVSource库帮忙),都可以;

3、平台部分:平台部分就更容易了,EasyDarwin开源项目(https://github.com/EasyDarwin/EasyDarwin)都可以用到(包括CMS中心管理服务器、EasyDarwin流媒体服务器),只要稍稍熟悉一下代码,就能很轻松将自己定义的协议流程加入进去,也可以直接就用EasyDarwin提供的协议版本,省去了大量的开发成本;

EasyDarwin流媒体服务器还能支持多种流媒体协议输出:RTSP、HLS、RTMP,这样对多平台需要的安卓、ios、web、微信直播,都能全部支持了;

4、客户端部分:如果采用传统C/S架构,我们可以选择EasyPlayer开源流媒体播放器(RTSP播放器)进行直播播放;如果你用的是WEB客户端,那么你可以采用EasyDarwin输出RTMP直播协议的,或者如果你的延时要求不高,就可以采用EasyDarwin输出的HLS协议;如果你是做手机直播,你可以采用HLS、RTSP、RTMP中的任何一种,如果是做手机WEB App,可以选择EasyDarwin HLS输出;如果你想用微信平台做这个项目,那可以选择HLS,完全支持微信直播;

就是这样,功能组件都可以用上,主要是需要熟悉架构和使用的方法!


本文转自www.easydarwin.org,更多开源流媒体解决方案,请关注我们的微信:EasyDarwin

基于EasyDarwin实现幼儿园监控类项目的更多相关文章

  1. 项目-基于视频压缩的实时监控系统--tiny6410

    项目-基于视频压缩的实时监控系统--tiny6410 @国嵌linux学习笔记. 1. 构造服务端结构体 server struct server { int epfd; //保存epoll指针 st ...

  2. Asp.Net Core 2.0 项目实战(5)Memcached踩坑,基于EnyimMemcachedCore整理MemcachedHelper帮助类。

    Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...

  3. 嵌入式应用开发第四阶段-基于rk3399的视频监控系统

    一.需求分析 伴随着嵌入式技术.图像处理技术和无线网络传输技术的发展,传统模拟视频监控系统和基于PC的远程视频监控系统由于自身的不足,已经无法满足现代社会应用中不断涌现出来的新需求,于是基于嵌入式技术 ...

  4. 基于腾讯云监控 API 的 Grafana App 插件开发

    Tencent Cloud Monitor App Grafana 是一个开源的时序性统计和监控平台,支持例如 elasticsearch.graphite.influxdb 等众多的数据源,并以功能 ...

  5. [安卓] 12、开源一个基于SurfaceView的飞行射击类小游戏

    前言  这款安卓小游戏是基于SurfaceView的飞行射击类游戏,采用Java来写,没有采用游戏引擎,注释详细,条理比较清晰,适合初学者了解游戏状态转化自动机和一些继承与封装的技巧. 效果展示    ...

  6. B/S 类项目改善

    B/S 类项目改善的一些建议   要分享的议题 性能提升:在访问量逐渐增大的同时,如何增大单台服务器的 PV2 上限,增加 TPS3 ? RESTful:相较于传统的 SOAP1,RESTful 风格 ...

  7. C#监控类属性的更改(大花猫动了哪些小玩具)

    C#监控类属性的更改(大花猫动了哪些小玩具) 实体类创建后在方法中对哪些属性赋值了,传递到底层方法时在底层如何得知哪些属性被赋值过.如何监控属性的更改,请看脑洞大开之<大花猫动了哪些小玩具> ...

  8. NET Core2.0 Memcached踩坑,基于EnyimMemcachedCore整理MemcachedHelper帮助类。

    DotNetCore2.0下使用memcached缓存. Memcached目前微软暂未支持,暂只支持Redis,由于项目历史原因,先用博客园开源项目EnyimMemcachedCore,后续用到的时 ...

  9. visualvm监控类是否是多例模式

    使用 visualvm干的第一件事情:监控类是否是多例模式 具体操作为: 1.首先启动本地项目,打开 jvisualvm,选择Tomcat(注意,在jdk目录下的名称里,命名前加了一个 j,别找不到了 ...

随机推荐

  1. css3 背景图动画一

    一 实现背景图循环播放 @keyframes mlfly { 0%{ background-position:0 0; } 100%{ background-position:210px 0; } } ...

  2. es6总结(四)--对象

  3. 转 Centos下安装apahce的configure: error: APR not found. Please read the documentation解决办法

    转自: http://www.cnblogs.com/Anker/p/3355573.html 今天从Apache官网上http://httpd.apache.org/下载httpd web服务器,由 ...

  4. Linux 虚拟地址与物理地址的映射关系分析【转】

    转自:http://blog.csdn.net/ordeder/article/details/41630945 版权声明:本文为博主(http://blog.csdn.net/ordeder)原创文 ...

  5. unity3d自动寻路教程

    U3D的自动寻路插件是不少,但是其实U3D的PRO版本就提供了相当实用的自动寻路组件了,以下教程分别讲解自动寻路的路径选择优先,上楼梯跳下的条件判断等等实用方法,教程分三编,但这个教程没有讲到Navm ...

  6. npm 查看模块全部版本

    npm 查看模块全部版本:(jquery) npm view jquery versions 安装指定版本: (jquery) npm install jquery@1.7.2

  7. 通过XOML或者XAML的方式创建和启动工作流

    在Workflow Foundation中,提供了多种设计工作流的方式.例如 纯代码的方式(C#) 代码分离的方式(XOML+C#) 以上两种,可以从Visual Studio提供的项目模板中选择 他 ...

  8. 纯CSS3美化radio和checkbox

    如题,主要通过CSS3来实现将radio和checkbox美化的效果.可是兼容性并非非常好,PC端仅仅支持chrome浏览器(IE和Firefox測试不行,其它没有很多其它測试).然后微信端和QQ端訪 ...

  9. Utuntu 和 window共享文件

    由于自己想用服务器跑代码,数据集和模型一般都在本机电脑上,用实验室服务器需要拷贝数据或者,在服务器上重新下载数据很麻烦 都在局域网内可以实现文件共享,代码和数据都在本地,共享给服务器,只需要使用服务器 ...

  10. qt实现又一次登录

    1.需求 须要实现程序操作过程中的又一次启动,即常常说的又一次登录功能 2.解决 在main函数中检測exec的返回值决定是关闭还是重新启动.使用注冊函数atexit(relogin)来实现这个功能 ...