EasyDarwin框架学习记录
Easy系列流媒体平台框架:
EasyDarwin开源流媒体服务器:www.EasyDarwin.org
EasyDSS商用流媒体解决方案:www.EasyDSS.com
EasyNVR无插件直播方案:www.EasyNVR.com
作者csdn博客:
https://blog.csdn.net/xiejiashu/
简介:
EasyDarwin是由国内开源流媒体团队维护和迭代的一整套开源流媒体视频平台框架,从2012年12月创建并发展至今,包含有单点服务的开源流媒体服务器,和扩展后的流媒体云平台架构的开源框架,开辟了诸多的优质开源项目,能更好地帮助广大流媒体开发者和创业型企业快速构建流媒体服务平台,更快、更简单地实现最新的移动互联网(安卓、iOS、H5、微信)流媒体直播与点播的需求,尤其是安防行业与互联网行业的衔接
工作流程
架构图
EasyDarwin开源项目(7Project)
1.EasyCMS 开源的设备接入与管理服务,支持多设备、多客户端接入,能非常快速地帮助大家实现稳定的设备接入服务,可以根据自己的需求进行服务功能拆分(例如用户接入服务与设备接入服务拆分等),具体见https://github.com/EasyDarwin/EasyDarwin/tree/master/EasyCMS;
2.EasyDarwin 核心流媒体服务!RTSP开源流媒体直播服务,高效、稳定、可靠、功能齐全,支持RTSP流媒体协议,支持安防行业需要的摄像机流媒体转发功能、支持互联网行业需要的多平台(PC、Android、IOS)RTSP直播(H264/MJPEG/MPEG4、AAC/PCMA/PCMU/G726)功能,底层(Select/Epoll网络模型、无锁队列调度)和上层(RESTful接口、WEB管理、多平台编译)、关键帧索引(秒开画面)、远程运维等方面优化,这些都是全代码完全开源的,具体接口调用方法和流程见:https://github.com/EasyDarwin/EasyDarwin;
3.EasyCamera 设备端(摄像机、移动设备、桌面程序)对接EasyDarwin平台的方案,跨平台,支持Windows、Linux、ARM,其中EasyDarwin摄像机是我们定制的一款摄像机硬件与EasyDarwin平台进行对接的方案,摄像机采用海思3518E方案,支持RTSP、Onvif、WEB管理、配套SDK工具,作为开发和演示硬件工具,我们提供了全套完备的程序和文档,既可以用于流媒体学习,又可以用于方案移植参考,更可以直接用于项目中,用户可以将摄像机定制的部分替换成自己摄像机的硬件SDK,具体接入方法见https://github.com/EasyDarwin/EasyCamera;
4.EasyClient 是EasyDarwin开源流媒体云平台的客户端实现,项目地址:https://github.com/EasyDarwin/EasyClient,功能包含:Windows、Android、iOS、H5(支持微信)四个部分,其主要功能包括:
云平台设备列表获取;
设备实时码流请求与播放;
设备云台控制;
设备语音对讲;
5.EasyAACEncoder 是一套简单、高效、稳定的开源音频编码库,支持将各种音频数据(G.711A/PCMA、G.711U/PCMU、G726、PCM)转码成AAC(with adts)格式,其中aac编码部分采用的是业界公认的faac库,EasyAACEncoder支持Windows、Linux、ARM等多种平台,能够广泛应用于各种移动终端设备、嵌入式设备和流媒体转码服务器!项目地址:https://github.com/EasyDarwin/EasyAACEncoder;
6.EasyAudioDecoder 是一套应用于移动端的简单、高效、稳定的开源音频解码库,能够将
G.711A/PCMA、G.711U/PCMU、G726、AAC等音频格式转码到LinearPCM,再提供给流媒体
播放器进行音频播放,EasyAudioDecoder支持跨平台,支持Android& iOS,目前已稳定应用于EasyPlayer、EasyClient等多个开源及商业项目!项目地址:https://github.com/EasyDarwin/EasyAudioDecoder;
7.EasyProtocol 是EasyDarwin开源流媒体服务器和开源平台使用的一套开源json协议,具有合理的结构设计、完善的层次逻辑以及简单精炼的调用接口,非常易于使用和扩展,不仅长期应用于EasyDarwin的服务器及平台中,而且能够快速扩展用户的自定义需求,非常好用!项目地址:https://github.com/EasyDarwin/EasyProtocol;
EasyDarwin商业项目(8Project)
(没有开源是指他的库没有开源,EasyDarwin提供了各个平台下库文件和使用示例,不影响正常使用)
1.EasyPlayer 是一款精炼、高效、稳定的流媒体播放器,分为RTSP版和Pro版本,EasyPlayer
RTSP版本支持Windows(支持多窗口、包含ActiveX,npAPI Web插件)、Android、iOS多个平台,EasyPlayerPro支持Android、iOS,支持各种各样的流媒体音视频直播/点播播放,项目地址:https://github.com/EasyDarwin/EasyPlayer;
2.EasyPusher 是一款简单、高效、稳定的一款标准RTSP/RTP协议直播推送库,支持将
H.264/G.711/G.726/AAC等音视频数据推送到RTSP流媒体服务器进行低延时直播或者视频通信,支持Windows、Linux、ARM、Android、iOS等平台,EasyPusher配套EasyDarwin流媒体服务器、EasyPlayer RTSP播放器适用于特殊行业的低延时应急指挥需求!项目地址:https://github.com/EasyDarwin/EasyPusher;
3.EasyNVR 摄像机(通用RTSP、Onvif摄像机)接入服务,EasyNVR能够通过简单的摄像机通道配置、存储配置、云平台对接配置、CDN配置等,将统监控行业里面的高清网络摄像机IP Camera、NVR、移动拍摄设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据采集到设备端,进行全平台终端直播、录像存储、录像检索和录像回放。并且EasyNVR能够将视频源的直播数据对接到第三方视频平台、CDN网络,实现互联网直播分发,具体接入方法见https://github.com/EasyDarwin/EasyNVR;
4.EasyIPCamera 是一套精炼、高效、稳定的RTSP服务器组件,调用简单灵活,轻松嵌入部署到IPCamera中,并发性能属于行业领先水平,广泛应用于IPCamera RTSP服务、Android/Windows投屏/同屏直播服务,例如课堂教学同屏、会议同屏、广告投放同屏等!项目地址:https://github.com/EasyDarwin/EasyIPCamera;
5.EasyRTMP 是一套调用简单、功能完善、运行高效稳定的RTMP功能组件,经过多年实战和线上运行打造,支持RTMP推送断线重连、环形缓冲、智能丢帧、网络事件回调,支持Windows、Linux、arm(hisiv100/hisiv200/hisiv300/hisiv400/etc..)、Android、iOS平台,支持市面上绝大部分的RTMP流媒体服务器,包括Red5、Ngnix_rtmp、crtmpserver等主流RTMP服务器,能够完美应用于各种行业的直播需求,手机直播、桌面直播、摄像机直播、课堂直播等等方面!项目地址:https://github.com/EasyDarwin/EasyRTMP;
6.EasyRTSPClient 是一套简单、稳定、高效、易用的RTSPClient工具库,支持Windows、Linux、
ARM、Android、iOS等几乎所有平台,支持RTPOver TCP/UDP,支持断线重连,能够接入市面上99%以上的IPC,调用简单且成熟稳定,能广泛应用于播放器、NVR、流媒体系统级联等产品中!项目地址:https://github.com/EasyDarwin/EasyRTSPClient;
7.EasyHLS 是一套简单、可靠、高效、稳定的HLS直播切片SDK,能够将实时的H.264视频和AAC音频流实时切片成可供WEB、Android、iOS、微信等全平台客户端观看的HLS(m3u8+ts)直播流,搭配EasyRTSPClient、EasyAACEncoder等项目,可将大部分的安防摄像机对外进行HLS直播发布,同时也可灵活集成在各种流媒体服务中!项目地址:https://github.com/EasyDarwin/EasyHLS;
8.EasyRMS 是一套基于HLS协议的录像与回放服务器,EasyRMS能够将RTSP源获取到本地进行本地存储或者存储到阿里云对象存储OSS云存储等第三方存储平台,同时EasyRMS提供录像的检索与查询接口,检索出录像的HLS地址进行录像回放!项目地址:https://github.com/EasyDarwin/EasyRMS;
地址有效,2018年发布(尚未)
平台端口
EasyCMS:接口服务端口,10000
EasyDarwin:接口服务端口,10008
EasyDarwin:RTSP服务端口,554
EasyDarwin:HTTP后台管理端口,10080
EasyNVR:接口服务端口,10010
EasyNVR:后台管理端口,10080
EasyDarwin框架学习记录相关推荐
- Scrapy框架学习记录
随着Python爬虫学习的深入,开始接触Scrapy框架 记录下两个参考教程: 官网教程:http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutor ...
- Flask框架学习记录
Flask项目简要 项目大致结构 flaskDemo1 ├─static ├─templates └─app.py app.py # 从flask这个包中导入Flask类 from flask imp ...
- Django框架学习记录(3)
简介:本章主要介绍基于Django模型使用数据库 一.配置数据库信息 以MySQL为例,需要在setting.py文件中找到DATABASES DATABASES = {'default': {'EN ...
- SSM框架学习记录-Spring_day01
1.核心概念 当前项目中的问题 下面代码的实现十分简单,但是业务层需要调用数据层的方法,就要在业务层new数据层的对象,如果数据层的实现类发生变化,业务层的代码也需要跟着改变,意味着要编译打包和重新部 ...
- Android camera2 框架学习记录
安卓相机架构概览 Android系统利用分层思想,将各层的接口定义与实现分离开来,以接口作为各层的脉络连接整体框架,将具体实现的主导权交由各自有具体实现需求的平台厂商或者Android 开发者,这样既 ...
- scrapy框架学习记录(2)
更新一下上次的内容: Scrapy Engine(引擎):Scrapy框架的核心部分.负责在Spider和ItemPipeline.Downloader.Scheduler中间通信.传递数据等. Sp ...
- Guns框架学习记录-5-全局异常拦截器+代码生成器
9.全局异常拦截器 全局异常拦截器可以拦截程序中出现的已知异常(主动声明的异常)和未知异常.关于异常拦截,建立一个全局异常拦截器,对程序中所有异常进行分类拦截,并友好的返回异常信息,有利于提高程序的健 ...
- Express框架学习记录一:Express框架基础使用
Express框架 一.什么是Express框架 二.安装Express 三.框架的使用 1.监听get/post请求 2.获取 URL 中携带的查询参数 四.中间件 1.use中间件 2.中间件的作 ...
- java并发集合框架学习记录
1. concurrentHashMap图解:https://mp.weixin.qq.com/s?__biz=MzI1MTIzMzI2MA==&mid=2650561829&idx= ...
最新文章
- 基础概念总结(spring security、Quartz、JUnit测试)
- Spring MVC 3模板和Apache Tiles
- Python实战从入门到精通第十七讲——将单方法的类转换为函数
- express的基本用法
- Eclipse中输入点号(.)不提示类成员(函数、字段)的解决办法
- 西门子 1200PLC全额补贴课程
- html如何上下滚动字幕,html页面实现滚动字幕
- 中小学教师计算机培训心得,小学教师信息技术培训心得体会2篇
- 移动硬盘计算机管理无法显示,移动硬盘不显示怎么办
- 《计算机世界》封面报道:互联网10年孤独[z]
- 2014年终总结回顾与2015年工作总结
- 四级词汇pdf_这或许是史上最全“雅思阅读高频词汇”,赶快拿走吧~~
- python-给登记照换底色(蓝底变红底)
- string.Format()之格式化数值类型数据
- DQN笔记:高估问题 target network Double DQN
- 客户关系管理系统 java_Java高级项目实战02:客户关系管理系统CRM系统模块分析与介绍...
- mysql查询名字中第2个字为丽,数据库技术课程复习5---MySQL语言(2)(单表查询)
- 按版面抓取饮水思源照片
- 大学计算机比赛保送,他是信息奥赛金牌得主,保送清华姚班!初中打游戏经常被老师抓...
- Coding Game - POWER OF THOR - EPISODE 1