EasyDarwin
文章平均质量分 59
xiejiashu
视频能力平台与视频算法中台
展开
-
EasyDarwin计划新增将各种流协议(RTSP、RTMP、HTTP、TCP、UDP)、文件转推RTMP到其他视频直播平台,支持转码H.264、文件直播推送
的基础上,我们在EasyDarwin中支持上多路的EasyAVFilter调用,这样就能很好地管理多路的取流与推流,而且核心的工作全部是由ffmpeg去完成了,我们属于完全的站在巨人的肩膀上!上面的两种服务,他们的推流用的都是EasyRTMP推流,在调用EasyRTMP推流之前,我们需要确保视频编码格式是H.264或者H.265,音频格式是AAC,EasyRTMP才能推送出去;我们在EasyDarwin上设计了一套支持 多路、拉流转推流、支持强制转码的转推直播的功能,先看设计,功能预计在1月底发布!原创 2024-01-18 13:27:58 · 978 阅读 · 0 评论 -
用EasyStreamingServer将MP4模拟成RTSP流无声音的问题,可以改用EasyDarwin做文件模拟RTSP实时流,有声音!
但最近有人反馈MP4有声音,但是模拟器出来的RTSP流没有声音,所以,需要解释一下,这个是EasyStreamingServer的一个缺点,后面有机会会加上去;之前有一篇博客介绍用EasyStreamingServer将文件模拟成RTSP实时流,提供给类似于智能分析服务、NVR等做实时录像《那么,应该怎么解决这个问题呢?答:用EasyDarwin!原创 2023-12-15 16:06:15 · 574 阅读 · 0 评论 -
简单0成本构建一个企业内部的视频点播、培训直播、安防监控、录像管理于一体的数字视频管理体系
以前,企业要构建一套数字化的视频管理体系,把企业内部的各种视频文件、直播培训、安防监控视频都整合到一套流媒体音视频服务里面,实现统一的对外供货、对外赋能的方案,是很困难的!那么,用EasyDarwin如何将上面3个功能集成于一体,极大地降低企业的视频数字化成本!原创 2023-11-30 19:28:55 · 597 阅读 · 1 评论 -
视频文件+EasyDarwin做摄像机模拟器模拟RTSP流很方便,还能做成系统服务,方法与流程
再说一下这种方式的几个弱点:一、 要跑两个程序,一个是EasyDarwin系统服务,另一个是这个ffmpeg调用的exe;二、 ffmpeg调用的程序没有做成系统服务,不能在系统重启的时候随系统自启动;三、 没办法灵活指定要模拟转换的视频文件的名称,或者没办法多路模拟RTSP;原创 2023-11-27 10:19:28 · 1298 阅读 · 1 评论 -
为社会做贡献的EasyDarwin 8.2发布了,支持视频点播、文件直播、摄像机直播、直播录像、直播回放、录像MP4合成下载
当然,EasyDarwin的功能远不止于此,很多应用场景是可以用到的,比如RTSP转FLV、RTSP转RTMP、视频文件转RTSP模拟摄像机、互联网视频源转内外直播分发,等等,很多很多变化的需求,都可以用EasyDarwin做到!详细的直接到www.easydarwin.org下载最新版本!原创 2023-11-25 21:56:36 · 1706 阅读 · 2 评论 -
用EasyAVFilter将网络文件或者本地文件推送RTMP出去的时候发现CPU占用好高,用的也是vcodec copy呀,什么原因?
最近同事在用EasyAVFilter集成在EasyDarwin中做视频拉流转推RTMP流的功能的时候,发现怎么做CPU占用都会很高,但是视频没有调用转码,vcodec用的就是copy,这是什么原因呢?我们用在线的RTSP流就不会出现这种情况!所以-re要放到最前面!原创 2023-11-24 11:04:56 · 529 阅读 · 0 评论 -
EasyDarwin开源流媒体社区视频教程
EasyDarwin开源社区出视频教程了,经过几个深夜的努力,终于将第一次课程的5个课时的视频教程录好《EasyDarwin开源流媒体服务器:编译、配置、部署》,EasyDarwin后面会继续在CSDN学院提供更多、更前沿的流媒体音视频技术,希望能够对大家有所帮助,EasyDarwin视频教程:http://edu.csdn.net/agency/index/213获取更多信息邮件:support@原创 2016-05-27 18:27:17 · 4684 阅读 · 3 评论 -
DirectShow音频采集pcm,实时编码AAC,附源码
定期送福利,今天给大家送上Windows中利用DirectShow采集microphone音频,并将采集到的pcm数据,利用FAAC库编码成AAC,进行本地存储或者网络传输。直接贴代码,解析看注释:/* 功能描述: 简单实现用DirectShow采集Windows麦克风音频PCM数据 经过FAAC编码成AAC存储文件,可根据项目修改成直播,对讲 等实时传输类应原创 2014-07-30 08:56:47 · 12187 阅读 · 11 评论 -
Darwin在转发流过程中对推送端断开的处理问题
最近在做项目的过程中遇到一个问题,在用Darwin Streaming Server中的QTSSReflectorModule模块做为流转发和分发服务,用live555的DarwinInjector类做为模拟设备进行流推送时,如果按照正常RTSP推送流程:Announce、Setup、Play…、Teardown,Darwin能较好地完成流的转发,但是假如设备在不正常工作,例如网络异常断开,设原创 2012-10-12 19:21:23 · 7135 阅读 · 0 评论 -
在EasyDarwin进行实时视频转发的两种模式
一、首先引用Darwin开发文档里面的一段来介绍一下流转发的拉模式和推模式:Darwin支持两种自动播送的场景:先拉后推。为了发起自动播送,RTSP客户会发送标准的RTSP请求来向服务器请求一个流,然后服务器将该流中继到一个或者多个流媒体服务器。这种场景在"先拉后推"部分中加以描述。先侦听后推送。在这个场景中,自动播送在流媒体服务器接收到ANNOUNCE请求时被发起。这个场景在原创 2012-12-06 12:17:38 · 29549 阅读 · 5 评论 -
基于DSS的先侦听后推送式流媒体转发
前面文章中说到的,DSS转发可以划分为先拉后推和先侦听后推送两种模式,今天我们解析的是DSS进行的先侦听后推送的流程,具体流程可以大致描述为:源端或者中继端(我们称之为推送端)先通过主动的连接,告知推送端信息(ID,IP等等),服务器维护与源端的会话Session,建立一定的保活与超时机制,并通过此路Session相互交换控制或者上送信息,其中就包含流媒体推送的命令。可按照具体的需求,服务器可通过原创 2012-12-15 15:40:41 · 12844 阅读 · 7 评论 -
redis启动错误-- Creating Server TCP listening socket *:6379: listen: UnKnown error
前提:windows server 2008、redis 3.x今天给服务器部署redis环境,文件配置、服务安装都很顺利,可就在启动服务的时候提示百度老半天也没找到个说到点子上的。这里记录下解决方案:在redis.windows.conf配置文件里面有这么一行代码:#bind 127.0.0.1,我的压缩包默认是带#号的。在#未去掉的情况下启动服务会抛出上面的异常,但是去掉则不会。那么,如果外网转载 2017-08-21 10:06:25 · 22101 阅读 · 9 评论 -
EasyDarwin 8.2流媒体视频服务器即将发布,集十年之大成,为社会做贡献
EasyDarwin项目从最早的Based On Darwin Streaming Server改造出来的1.0时代,到后来基于node.js开发的2.0时代,再到Golang开发的3.0时代,经历了整整十年的时间,这个过程给我的一个感觉就是,做一个好的开源项目很难,要保持一颗初心也很难,开源的持续输出是一个很需要毅力和决心的过程,从整个这个过程也在不断学习和适应。我计划在今年内对行业的大部分的需求做一个集中的共性整理,让视频部分对于大部分企业都是亲测可用、放心无忧的,当然,最重要的就是免费使用!原创 2023-10-06 09:53:48 · 328 阅读 · 0 评论 -
EasyDarwin流媒体服务器高性能优化方向
我们在EasyDarwin开源流媒体服务器上做了很多的优化,包括前面说到的《EasyDarwin开源流媒体服务器将select改为epoll的方法》、《EasyDarwin开源流媒体服务器高性能设计之无锁队列》,加入我们将EasyDarwin的处理流程分为2层,那么select/epoll、TaskThread任务队列就是第一层,这属于架构的较低层,以上的两个改造,大大提升了底层的效率,据测试,至少原创 2016-03-14 00:18:44 · 2207 阅读 · 1 评论 -
EasyDarwin开源流媒体服务器将select改为epoll的方法
本文来自EasyDarwin团队Fantasy(fantasy(at)easydarwin.org)一. EasyDarwin网络模型介绍EventContext负责监听所有网络读写事件,EventContext::RequestEvent每次插入一个监听事件到 监听列表(select 文件描述符集合),EventThread::Entry()死循环监听添加到该FD_SET的所有文件描述符的 事原创 2016-02-21 12:21:14 · 2224 阅读 · 0 评论 -
用live555做流媒体转发服务器?
当我们看到这里,说明大家都有这样的一个想法:那就是如何用live555实现一个直播代理转发的流媒体服务器?我们先不着急去讨论用live555实现流媒体转发的技术方法123,先从live555的整个架构来看,live555做转发服务器,个人认为就是一个不稳定的命题,因为我亲身经历过从live555实现流媒体实时直播服务器,到不断不稳定,不断修复,最终在并发量怎么也上不去,稳定性始终达不到的情原创 2014-12-15 16:23:52 · 18231 阅读 · 7 评论 -
vs2015编译EasyDarwin开源流媒体服务器Linux版本调研
本文转自EasyDarwin团队成员Alex的博客:http://blog.csdn.net/cai6811376/article/details/51843196之前InfoQ的一篇文章提到用vs2015可以将C++项目直接编译成Linux的可执行文件。Writing C++ for Linux on Visual Studio。于是我使用vs2015安装最新Visual C++ for Linu转载 2016-07-07 23:27:33 · 3270 阅读 · 0 评论 -
嵌入式流媒体音视频服务器EasyIPCamera中live555发送性能优化点
EasyIPCamera流媒体服务器今年EasyDarwin团队在给国内某最大的金融安防公司做技术咨询的时候,开发了一款适用于嵌入式IPCamera、NVR的RTSP流媒体服务器:EasyIPCamera,EasyIPCamera的核心是基于live555进行封装的,外围增加对live555 RTSPServer的调用接口,更加方便海思等安防芯片进行RTSPServer服务的建立,EasyIPCam原创 2016-09-02 14:33:17 · 2998 阅读 · 0 评论 -
EasyPusher安卓Android手机直播推送之RTSP流媒体协议流程
EasyPusher移动端推送同我们平时用的RTSP直播推送流程一样,都是采用标准RTSP/RTP推送流程:ANNOUNCE->SETUP->PLAY->RTP/RTCP->TEARDOWN(或者直接直接断开推送连接),流程图如下: 我们贴一段EasyPusher 安卓与EasyDarwin流媒体服务器之间的交互报文:#C->S:#time: ms=475350259 date=Sat, 16原创 2016-04-16 09:12:06 · 6984 阅读 · 0 评论 -
EasyDarwin开源流媒体云平台之EasyRMS录播服务器功能设计
需求背景EasyDarwin开发团队维护EasyDarwin开源流媒体服务器也已经很多年了,之前也陆陆续续尝试过很多种服务端录像的方案,有:在EasyDarwin中直接解析收到的RTP包,重新组包录像;也有:在EasyDarwin中新增一个RecordModule,再以RTSPClient的方式请求127.0.0.1自己的直播流录像,但这些始终都没有成气候;我们的想法是能够让整套EasyDarwin原创 2017-04-18 16:10:45 · 3663 阅读 · 0 评论 -
EasyIPCamera高性能摄像机RTSP服务器RTSPServer解决方案
EasyIPCameraEasyIPCamera是由EasyDarwin团队开发的一套非常稳定、易用、支持多种平台(包括Windows/Linux 32&64,Android,ARM hisiv100/hisiv200/hisiv400等平台)的RTSPServer组件,接口调用非常简单成熟,无需关注RTSPServer中关于客户端监听接入、音视频多路复用、RTSP具体流程、RTP打包与发送等相关问原创 2016-07-15 19:43:25 · 13835 阅读 · 0 评论 -
如何快速、低成本构建一套稳定、高效、可靠的互联网主播直播/商业直播(推流/分发/播放)方案
前言做EasyDarwin开源流媒体服务器、维护EasyDarwin社区快5年了,期间收到过无数的直播需求,尤其是在跨越“直播元年”的一段时间中,几乎每天都会有直播的需求通过电话或者邮件咨询过来,总结起来,找方案的大多数做直播的公司都会有一个共性:规划设计中未来的直播业务会做的很大,用户会很多(也有可能确实会很大量 的用户群体),所以,现在要自建流媒体服务集群,核心掌握在自己手里!规划设计中未来原创 2017-08-10 19:59:01 · 4219 阅读 · 1 评论 -
live555中fDurationInMicroseconds的计算
live555中fDurationInMicroseconds表示单个视频或者音频帧所占用的时间间隔,也表示在fDurationInMicroseconds微秒时间后再次向Source进行getNextFrame操作,以视频为例,可以这样计算:视频帧率fFrameRate=25,那么我们每一次在doGetNextFrame中赋值fDurationInMicroseconds = 100原创 2014-12-10 16:31:06 · 5042 阅读 · 2 评论 -
EasyDarwin开源流媒体服务器低延时直播之转发缓存跟进算法
前言前一段时间,我们为EasyDarwin实现了客户端快速显示画面/听到同步声音的缓存关键帧检索方案,具体的实现方法分别在《EasyDarwin手机直播是如何实现的快速显示视频的方法》和《EasyDarwin手机直播转发快速显示问题之音频处理过程》两篇博客中可以了解到具体的实现原理,实现的方法代码也可以在EasyDarwin的ReflectorStream类中找到: 问题需求经过了一段时间的测试和原创 2016-06-21 00:19:44 · 7389 阅读 · 0 评论 -
EasyDarwin开源手机直播方案:EasyPusher手机直播推送,EasyDarwin流媒体服务器,EasyPlayer手机播放器
在不断进行EasyDarwin开源流媒体服务器的功能和性能完善的同时,我们也配套实现了目前在安防和移动互联网行业比较火热的移动端手机直播方案,主要就是我们的 EasyPusher直播推送项目 和 EasyPlayer播放器项目;先大概对EasyPusher和EasyPlayer项目做一下介绍,EasyPusher是一个推送流媒体音/视频流给开源流媒体服务器EasyDarwin的标准RTSP/RTP协原创 2016-04-08 14:44:22 · 2761 阅读 · 0 评论 -
EasyDarwin手机直播转发快速显示问题之音频处理过程
前言在我们前面一篇《EasyDarwin手机直播是如何实现的快速显示视频的方法》中,我们描述到了EasyDarwin流媒体服务器端是如何对视频H.264进行缓冲,再以最快的方式将最新的视频关键帧推送给客户端,以做到快速显示视频的效果,当时,我们遗留了一个音频缓冲发送滞后的问题:http://blog.csdn.net/xiejiashu/article/details/51247239#t4,那么我原创 2016-04-30 16:27:08 · 2839 阅读 · 0 评论 -
基于EasyDarwin实现幼儿园监控类项目
移动互联网越来越普及,幼儿园监控类的项目也越来越多,如何能够以最低的成本、最快的速度搭建一套幼儿园监控类的平台成了许多开发者的需求,那么我们今天就来简单探讨一下如何基于EasyDarwin实现一套幼儿园监控、宝贝在线视频类的流媒体系统平台。 1、流媒体分发:幼儿园监控不同于我们传统意义上的家居监控,家居监控因为同时观看的终端数量有限,多采用p2p的形式,但幼儿园监控里面,同一个摄像机可能会被很多家原创 2015-08-05 23:56:11 · 6531 阅读 · 3 评论 -
EasyDarwin流媒体服务器实现关键帧推送功能
功能背景随着社会进步,人们对产品体验要求越来越高。EasyDarwin也不例外。为了能满足用户对链接服 后看到画面时间(也就是我们经常看到的起播时间)短的要求,我们特地实现了关键帧缓存推送的功能。技术知识介绍H264帧有多重模式,主流的有IPPPPPPPPPIPPPPPPPPPIPPPPPPPPPIPPPPPPPPPIPPPPPPPPP、IPPPBPPPBPPPIPPPBPPPBPPPI…模式,原创 2016-04-09 17:40:10 · 2631 阅读 · 0 评论 -
网络直播流媒体协议的选择讨论,RTSP,RTMP,HTTP,私有协议?
最近有不少人在EasyDarwin的交流群里面问关于花椒、映客手机直播技术的问题,还有RTSP、RTMP协议选择的问题,这里个人谈一下自己的愚见。 1、不管是RTSP/RTP、RTMP、HTTP,亦或是私有协议,都是可以进行流媒体传输的流媒体协议,而且效果都能做到差不多的程度,这里会有同学问到HTTP流媒体协议是不是HLS,会有很大延时,巴拉巴拉,之类之类的,这里说明一下,HLS是HTTP中的一种原创 2016-04-15 20:03:57 · 17490 阅读 · 3 评论 -
用EasyRTSPServer模拟摄像机RTSP流实现RTSP摄像机模拟器
在很早之前的一篇博客《基于EasyIPCamera实现的数字网络摄像机IPCamera的模拟器IPC RTSP Simulator》,我们描述了如何模拟一个摄像机的RTSP流,但当时的RTSP流模拟器还只能读取固定的.264文件,而这种文件是很难找到的,或者说要技术参与才能拿到这样的文件。最近,我们改进了一下EasyRTSPServer的配套用例,读取mp4文件等视频文件源也没问题了,而且经过众多项目的历练,EasyRTSPServer在RTSP流输出上,性能更强了、稳定性更高了!EasyRTSPSer原创 2021-09-02 15:48:59 · 3241 阅读 · 3 评论 -
EasyDarwin开源流媒体服务器提供的TS切片/HLS直播打包库
EasyHLSEasyHLS是什么?EasyHLS是EasyDarwin开源流媒体社区开发的一款HLS打包库,接口非常简单,只需要传入打包的文件名、切片存放的目录、打包间隔以及切片数,EasyHLS库就能轻松将H264+AAC的流媒体切片,提供给WEB服务器进行HLS流媒体发布,我们提供了两套操作示例:EasyHLS_RTSP:以RTSPClient的形式,从RTSP原创 2015-08-11 22:18:27 · 7796 阅读 · 0 评论 -
EasyIPCamera通过RTSP协议接入海康、大华等摄像机,摒弃私有SDK接入弊端
本文转自博客:http://blog.csdn.net/xinlanbobo/article/details/53156742 近期工作中需要开发一套视频监控系统,实现WEB端、手机APP端预览局域网内的道路监控摄像机,我负责一些后台服务的开发工作。 由于之前项目中的程序都是采用私有协议、各摄像机厂商的SDK进行视频监控系统开发,这种技术方案更适合C/S架构的系统,应用于此次转载 2016-11-14 11:34:30 · 17615 阅读 · 5 评论 -
Darwin Streaming Server性能测试报告
为了验证Darwin Streaming Server在流媒体点播上的性能,EasyDarwin开源项目官方特地与国内某大型视频网站进行了一次性能测试(千兆网络环境下),针对本次RTSP直播流媒体测试范围,对码率为300K的视频进行压力测试,具体场景如下表所示:场景说明预期结果一、正常情况100个并发1, 验证原创 2014-11-08 12:17:04 · 6936 阅读 · 1 评论 -
流媒体服务器开发资源列表
Darwin Streaming Server 5.5源码:http://download.csdn.net/detail/xiejiashu/4798197Darwin Streaming Server解析文档:http://download.csdn.net/detail/xiejiashu/4964552DarwinInjector: 用live555模拟设备,读取本地视频文件,推送原创 2013-01-06 11:23:17 · 4478 阅读 · 3 评论 -
EasyDarwin做转发延时太大?
很多人反映,在用EasyDarwin做流媒体转发服务时,延时太大,实际Darwin在转发模块中,有一个控制转发Buffer时间的配置reflector_buffer_size_sec,我们将这个配置改成0,也就是在服务器端不做缓存,直接转发,这样在网络条件充足的情况下对比转发和实时流,转发带来的延时也几乎可以忽略了: -----------------原创 2014-12-03 19:54:57 · 10174 阅读 · 6 评论 -
开源流媒体服务器--EasyDarwin
EasyDarwin是在Apple开源流媒体服务器Darwin Streaming Server(v6.0.3)基础上进行开发和维护的免费开源、高效、易扩展的面向企业级的流媒体平台框架,开始于2013年,遵循 Apple开源License,为了敏捷流媒体服务器开发和简化企业流媒体应用开发而诞生的。 EasyDarwin一直以来保持Darwin原有体系结构和设计思想,在保持出色的性能和简洁的代码同时,也在不断优化其底层效率和上层通用性。在广大开源爱好者的积极参与和努力下, 易用性、扩展性和稳定性等方面不断优化原创 2014-11-07 17:18:29 · 11933 阅读 · 6 评论 -
EasyDarwin返回401 Unauthorized解决方法
在向Darwin推送实时流媒体的时候,ANNOUNCE会向推送端返回原创 2014-09-24 15:35:29 · 3128 阅读 · 1 评论 -
关于Darwin接入私有协议、私有SDK码流的讨论
最近做到云视频/云监控的项目,跟团队伙伴讨论到一个架构问题,就是将私有协议的码流数据接入到Darwin,再通过Darwin对外提供高效的RTSP/RTP服务。说到私有协议接入Darwin,我们大部分情况下会想到如何修改Darwin,如何新增Module来接入各个厂家的SDK,可能这种做法对传统的监控需求可以满足,但对于云视频/云监控、接入移动互联网,或者对于多现场、跨网络、设备地域分散的情况,这种原创 2014-10-02 16:31:07 · 3641 阅读 · 0 评论 -
live555 RTSP推送到Darwin出现404错误的解决
我们将Darwin部署到公网,接收live555 RTSP/RTP推送的时候,经常会出现在SETUP步骤Darwin返回404错误,经过查找原因,主要是Darwin对live555推送的sdp信息中的IP地址不能识别,服务器并不知道自己已经置身于公网的地址:我们通过命令:ip addr add dev eth0 [公网IP],向eth0添加一个公网地址就解决问题了原创 2014-07-02 15:50:23 · 5978 阅读 · 1 评论 -
Open Source Streaming Server--EasyDarwin
Welcome to EasyDarwin Streaming Server, which is an open source Streaming Server Based On Appple's Darwin Sreaming Server, EasyDarwin allows you to send streaming media to clients across the Internet原创 2014-11-07 17:10:59 · 3041 阅读 · 0 评论