本文转自EasyDarwin团队Alex的博客:http://blog.csdn.net/cai6811376 EasyDarwin云平台中部分协议使用了Base64编码昨晚报文通信的载体.比如在对摄像机进行对讲操作时,客户端将采集的音频数据经过Base64编码,通过POST的方式将组织的协议数据发送到EasyCMS,EasyCMS再对设备进行操作. 当设备接收到音频数据时,将Base64编码后的数据进行解码,得到音频数据,将音频数据播放出来. 这里,我们以前的Base64编解码是这样写的.(使…
本文由EasyDarwin开源团队成员Alex贡献:http://blog.csdn.net/cai6811376/article/details/52006958 EasyDarwin云平台一直在稳步的升级迭代中,近日,EasyDarwin云平台实现了语音对讲的功能.对讲功能的加入,标志着EasyDarwin云平台进一步的完善. 流程设计 客户端使用POST的方式在body中携带协议报文向云平台发送开始对讲命令: 云平台组织协议报文向指定的设备发送: 设备执行开始对讲命令后向云平台返回相应报文…
云平台架构 EasyDarwin开源流媒体云平台目前已经包括了EasyCMS中心管理服务.EasyDarwin流媒体服务.EasyCamera设备端(支持Arm_Linux.Android.PC).EasyNVR(支持ARM主机.PC).EasyClient客户端,整个开源云平台经过一段时间的运行测试,表现稳定: 设备接入 目前EasyCamera已经支持了摄像机接入和Android手机端接入,EasyNVR支持普通RTSP摄像机的接入,所有设备都是按照统一的协议标准接入到EasyDarwin云…
前言 随着Android系统的不断更新和发展,现在越来越多的硬件产品选择用安卓系统作为运行环境,电视机,机顶盒.门禁.行车记录仪.车载系统.单兵设备等等,Android系统底层还是Linux,但对上层的开发和维护就变得容易很多,比如以往需要在硬件上开发一个图形界面,流程就会非常复杂,但依托于安卓系统,可以绕开比较多的Linux系统底层开发,直接采用Java+jni可以达到非常稳定和高效的产品效果,这里尤为突出的要说到移动单兵设备,或者行业应用需要的移动监控设备,使用Android做设备系统,具有…
前言 早在2013年我就设计了一套架构非常简单的分布式流媒体服务器平台<基于Darwin实现的分布式流媒体直播服务器系统>,当时的考虑如今看来有诸多的细节点没有考虑到:1.CMS是单点部署,无法扩展设备注册节点服务器:2.EasyDarwin流媒体服务器虽然可以分布式部署,但负载信息都是以Hash map的形式存在CMS的内存中的,EasyDarwin与CMS保持着长连接信令交互,这种形式只能够实现功能,但在架构扩展性上还是有太多瓶颈:3.协议采用的是RTSP协议及其扩展字段来做的,协议对现在…
需求背景 EasyDarwin开发团队维护EasyDarwin开源流媒体服务器也已经很多年了,之前也陆陆续续尝试过很多种服务端录像的方案,有:在EasyDarwin中直接解析收到的RTP包,重新组包录像:也有:在EasyDarwin中新增一个RecordModule,再以RTSPClient的方式请求127.0.0.1自己的直播流录像,但这些始终都没有成气候: 我们的想法是能够让整套EasyDarwin的系统更加灵活起来,各个服务单元都非常内聚地做自己的本职工作,EasyDarwin是流媒体分发…
本文转自EasyDarwin开源团队成员Alex的博客:http://blog.csdn.net/cai6811376/article/details/51912692 近日,EasyDarwin云平台加入云台控制功能,完善了云平台的功能,提升了用户体验.具体设计以及实现如下. 流程设计 客户端通过RESTful接口向云平台发送控制命令: 云平台组织控制报文向设备发送: 设备执行后向云平台返回控制响应报文: 云平台接收响应报文后将控制结果返回给客户端. 接口设计 首先我们设计云台控制的接口,接口…
本文转自EasyDarwin开源团队成员Alex的博客:http://blog.csdn.net/cai6811376/article/details/52063666 近日,我们EasyDarwin团队在调试EasyDarwin的时候遇到有些C++源文件无法命中断点,提示"当前不会命中断点.还没有为该文档加载任何符号". 这里是因为,有些源文件的调试信息被禁用了,生成不了调试符号.只需要将源文件的"调试信息格式"设置一下就可以了. 调试信息格式说明 /Z7./Zi…
EasyCMS介绍 EasyCMS做为EasyDarwin开源流媒体云平台解决方案的一部分,主要进行的是设备的接入和Session(DeviceSession & ClientSession)管理,同时用户也可以复用做为其他类型项目设备接入与管理的框架,EasyCMS也源于EasyDarwin服务架构,具备一套完整的网络I/O框架以及Utility,开发者很容易在EasyDarwin的基础上开发跨平台服务程序,例如Windows.Linux.Mac.Solaris等系统平台,只要一次熟悉,将会受…
本文转自EasyDarwin CSDN官方博客:http://blog.csdn.net/easydarwin EasyDarwin是由国内开源流媒体团队维护和迭代的一整套开源流媒体视频平台框架,从2012年12月创建并发展至今,包含有单点服务的开源流媒体服务器,和扩展后的流媒体云平台架构的开源框架,开辟了诸多的优质开源项目,能更好地帮助广大流媒体开发者和创业型企业快速构建流媒体服务平台,更快.更简单地实现最新的移动互联网(安卓.iOS.H5.微信)流媒体直播与点播的需求,尤其是安防行业与互联网…