流媒体
文章平均质量分 90
xiejiashu
视频能力平台与视频算法中台
展开
-
软硬一体的流媒体边缘计算设备在视频“云、边、端”解决方案中的重要作用
软硬一体的EasyNVR边缘计算设备在视频“云、边、端”解决方案中的重要作用:很多的应用场景需要边缘设备,主要原因是:1.带宽问题;2.算力问题;视频应用场景中,有很多的需要边缘计算网关,例如:高速公路、智慧园区、智慧校园;边缘网关设备必须具备边缘处理能力,流媒体能力、感知能力、分析能力;边缘设备的作用应用的场景典型应用边缘网关的能力边缘网关推荐EasyNVREasyRTMPLiveEasyNTS...原创 2020-07-02 17:29:59 · 3000 阅读 · 2 评论 -
公网RTSP地址(持续更新)
H264+AAC:rtsp://a2047.v1412b.c1412.g.vq.akamaistream.net/5/2047/1412/1_h264_350/1a1a1ae555c531960166df4dbc3095c327960d7be756b71b49aa1576e344addb3ead1a497aaedf11/8848125_1_350.mov原创 2014-06-30 19:35:32 · 24177 阅读 · 7 评论 -
分布式流媒体直播服务器系统 For Linux
在之前的一篇《基于Darwin实现的分布式流媒体直播服务器系统》中,我们配置了在Win32下面的流媒体直播系统,今天我们分享一下在Linux下面EasyDSS分布式直播服务器系统的配置。系统功能、服务模块、设计架构这些就不再赘述了。系统演示下载:EasyDSS For Linux(32)版本下载地址:http://pan.baidu.com/s/1uylif (原创 2013-11-23 10:27:12 · 10066 阅读 · 2 评论 -
基于Darwin实现的分布式流媒体直播服务器系统
系统功能介绍:系统基于RTSP协议和Darwin Streaming Server(以下简称DSS)实现,具有设备接入和控制、分布式流媒体服务器部署、流媒体转发与负载均衡、实时音视频控制等功能,同时支持视频直播与点播功能,整套系统可跨平台运行(Windows/Linux)。系统功能模块:1、CMS:中心管理服务器,全局唯一运行。中心管理服务器接入来自设备端的注册连接、其他服务节原创 2013-11-04 21:52:54 · 40877 阅读 · 15 评论 -
手机Android音视频采集与直播推送,实现单兵、移动监控类应用
恰逢2014 Google I/O大会,不难看出安卓在Google的推进以及本身的开放性作用下,已经快延生到生活的各个方面了,从安卓智能手机、平板,到可穿戴的Android ware、眼镜、手表、再到Android汽车、智能家居、电视,甚至最近看新闻,日本出的几款机器人都是Android系统的,再把目光放回监控行业,传统监控中的移动终端设备,例如,单兵设备、手持设备、车载终端设备,包括家庭监控中用原创 2014-06-27 07:14:48 · 39912 阅读 · 27 评论 -
vs中如何统计整个项目的代码行数
在一个大工程中有很多的源文件和头文件,如何快速统计总行数?------解决方案--------------------b*[^:b#/]+.*$^b*[^:b#/]+.*$ctrl + shift + F 查找选项选 正则表达式转载 2016-05-01 15:12:17 · 31043 阅读 · 0 评论 -
RTSPClient工具EasyRTSPClient支持H.265,支持海思等各种芯片平台
EasyRTSPClient是EasyDarwin开源流媒体团队开发、提供的一套非常稳定、易用、支持重连的RTSPClient工具,接口调用非常简单,再也不用像调用live555那样处理整个RTSP OPTIONS/DESCRIBE/SETUP/PLAY的复杂流程,担心内存释放的问题了,全平台支持(包括Windows/Linux 32&64,ARM各平台,Android,IOS),接口简单且成熟稳原创 2016-04-28 00:51:11 · 11647 阅读 · 0 评论 -
海康DS NVR播放URL规则
URL规定:rtsp://username:password@:/Streaming/Channels/(?parm1=value1&parm2-=value2…)注:VLC可以支持解析URL里的用户名密码,实际发给设备的RTSP请求不支持带用户名密码。详细描述:举例说明:DS-9632N-ST的IP通道01主码流:rtsp://admin:12345@172.6.22.234:554/Strea原创 2016-03-01 10:17:35 · 11817 阅读 · 4 评论 -
2015年度新增开源软件排名TOP 100,EasyDarwin开源流媒体服务器排名第17
本榜单包含 2015 年开源中国新收录的 5977 款开源软件中,根据软件本身的关注度、活跃程度进行排名前 100 名的软件。从这份榜单中或许可以了解到最新业界的趋势。榜单详情:http://www.oschina.net/news/69808/2015-annual-ranking-top-100-new-open-source-software关注EasyDarwin开原创 2016-02-20 01:23:24 · 3005 阅读 · 0 评论 -
开源流媒体服务器EasyDarwin支持epoll网络模型,大大提升流媒体服务器网络并发性能
经过春节前后将近2个月的开发和稳定调试、测试,EasyDarwin开源流媒体服务器终于成功将底层select网络模型修改优化成epoll网络模型,将EasyDarwin流媒体服务器在网络处理的效率上提升到了另一个档次。众所周知,select模型在处理大并发量的网络请求上具有一些瓶颈,默认在Linux上同时能够处理的网络连接数FD_SETSIZE为1024,虽然可以通过修改FD_SETSIZE的原创 2016-02-19 00:35:46 · 3653 阅读 · 0 评论 -
AAC包增加ADTS头Without MediaCodec
AAC原始码流无法直接播放,一般需要封装为ADTS格式才能再次使用,本博主在android中用MediaCodec编码得到的AAC就是raw格式,为了保存为.aac格式,需要增加adts头,这样就可以通过vlc或者windows Media player直接播放了。现在把网上搜集的资料和代码总结一下,以备自己以后参考,也分享给有需要的同仁。源码来自:http://stackoverflow.com转载 2016-09-03 14:01:46 · 3995 阅读 · 0 评论 -
EasyPlayer iOS开源流媒体播放器中AAC解码PCM问题
本文转自EasyDarwin开源团队成员Penggy的博客:http://www.jianshu.com/p/feeb107b6657 最近遇到在 iOS 平台上实时播放 AAC 音频数据流, 一开始尝试用 AudioQueue 直接解 AAC 未果, 转而将 AAC 解码为 PCM, 最终实现了 AAC 实时流在 iOS 平台下的播放问题.AAC 转 PCM 需要借助解码库来实现, 目前了解转载 2016-09-04 18:52:46 · 3417 阅读 · 0 评论 -
Easy系列的安卓Android ndk编译EasyRTSPClient、EasyRTMPClient、EasyPusher、EasyRTMP、EasyIPCamera底层ndk so的流程记录
这是一篇开发的日常记录,现在发现做备忘越来越很重要了,一件事情几个月前做的,再次重新做一遍,尤其是这类的环境搭建,整个过程的坑又得重新跳一遍,太耗时了,这次先大概记录下来,方便后续回溯:一、NDK选择Windows采用的是:android-ndk-r13b-windows-x86_64;Linux采用的是:android-ndk-r13-linux-x86_64二、静态库交叉编...原创 2019-07-12 23:23:03 · 704 阅读 · 0 评论 -
海思arm平台AAC音频转码cpu占用高、效率低的问题解决
问题背景目前市面上的大部分IPC摄像机音频输出基本都是G711、G726编码格式,而在类似于《基于EasyNVR实现RTSP/Onvif监控摄像头Web无插件化直播监控》这种业务中,都是在类似于EasyNVR这样的适配服务中进行音频的转码,也有在类似于《EasyDarwin开源流媒体云平台支持EasyCamera摄像机、EasyCamera手机直播监控、EasyNVR等多终端接入》这种arm设备中需原创 2017-07-22 16:47:03 · 4605 阅读 · 1 评论 -
海康、大华IpCamera RTSP地址和格式
大家注意,我下面文章描述的都是海康老款摄像机的RTSP规则,现在新的DS-系列(摄像机型号为DS-开头的)的摄像机RTSP规则为:http://blog.csdn.net/xiejiashu/article/details/71786187海康:rtsp://[username]:[password]@[ip]:[port]/[codec]/[channel]/[subtype]/av_s...原创 2014-08-12 23:01:18 · 195250 阅读 · 6 评论 -
在嵌入式、海思、ARM中进行统一的音频AAC编码的必要性
前言最近来到深圳,跟许多做硬件的小伙伴聊安防、聊互联网、聊技术,受益颇多,其中聊到一点,大家一直都在想,互联网发展如此迅猛,为啥大部分的摄像机还是采用的传统G.726/G.711的音频编码格式呢,如果能直接输出AAC格式的音频,再配合H.264+AAC,基本上编码数据就不用再做处理,就可以直接做协议转换的输出了,输出:RTSP、RTMP、HLS、MP4、FLV各种协议和封装格式,而如果还是传统安防的原创 2017-10-21 14:11:31 · 2981 阅读 · 0 评论 -
那些千奇百怪的视频直播延时测试方法,论正确姿势是什么?
说到视频直播延时测试,我们就不得不先探讨一下产生延时的几个环节:part1. 视频采集与编码 part2. 视频设备到服务器的传输 part3. 服务器分发到客户端的传输 part4. 客户端的播放其中,这个过程延时消耗最大的是part1和part4,也就是编/解码部分,而且通常情况下part1延时>part4延时,那么part2和part3如果消耗比较大的延时,要么是网络实在太差,要买就是程序写原创 2017-08-26 14:31:49 · 8856 阅读 · 1 评论 -
对H.264帧类型判断方法
背景描述我们经常在网络直播推流或者客户端拉流的时候,需要对获取到的H.264视频帧进行判断后处理,我们经常获取到各种不同的视频数据0x67 0x68 0x65 0x61,0x27 0x28 0x25 0x21,0x47 0x48 0x45 0x41,各种不同的编码芯片有时间出来的NAL Header规则不大一样,那么我们怎么来以统一的方式判断帧的类型呢:sps、pps、IDR、P如下转自EasyDa转载 2017-04-17 16:37:30 · 7130 阅读 · 0 评论 -
基于EasyIPCamera实现的数字网络摄像机IPCamera的模拟器IPC RTSP Simulator
还记得去年在北京安博会上,看到一些厂家的展示台上,各种船舶、公路、车辆的高清视频直播,好奇这些数据是怎么接到现场的,现场成百上千家展台,不可能有那么大的带宽供应,细想数据肯定不是实时的,果然,盯着看了好久,果然是文件反复回放; 现在想来,这个功能IPC模拟器算不得上是一个非常牛x的技术,但是能解决好多问题啊,比如,我要在公网服务器上部署一套演示系统,系统呢需要接入很多很多的IPC摄像机资源,公网跟原创 2017-03-22 19:38:36 · 20525 阅读 · 0 评论 -
ffmpeg ffplay播放延时大问题:播放延时参数设置
使用ffplay播放视频源时,rtsp/rtmp等,会有一定的延时,这里我们可以通过设置ffplay播放参数将延时控制到最小。 ffplay.exe -i rtmp://xxxxxxx -fflags nobuffer 减少缓冲也可以减少分析码流的时间 ffplay.exe -i rtmp://xxxxxxx -analyzeduration 1000000 码流分析时间设置,原创 2016-09-23 13:32:09 · 32370 阅读 · 5 评论 -
用Darwin和live555实现的直播框架
我们在开发视频直播或者监控类项目的时候,如场馆监控、学校监控、车载监控等等,往往首先希望的是形成一个项目的雏形,然后再在这个框架的基础上进行不断的完善和扩展工作,那么我们今天要给大家介绍的就是,如何形成一个这样的框架:采集本地音视频数据(Win) -->视频分发服务器-->客户端随意接入大致流程:我们首先通过DShow采集Windows(XP、Win7经过测试)主机的视频设备(Camera原创 2013-06-23 14:46:05 · 25916 阅读 · 17 评论 -
解决用EasyDarwin开源流媒体服务器做HLS直播时Flash Player卡住的问题
最近在开发EasyDarwin开源流媒体服务器HLS直播的时候发现一个现象:在PC上用flash player播放HLS和在ios上面播放HLS时,效果明显不同,在ios上播放非常稳定,而在flash player上播放会经常性卡住,需要重新刷新网页才能够正常播放。经过不断跟踪调试,发现问题主要出在浏览器上,浏览器在请求、更新m3u8文件的过程中,有缓存,导致请求到的m3u8列表是过期的,里面的t原创 2015-12-04 11:47:08 · 5354 阅读 · 5 评论 -
开源G711A/PCMA、G711U/PCMU、G726、PCM转码AAC项目EasyAACEncoder
项目及源码地址:https://github.com/EasyDarwin/EasyAACEncoderEasyAACEncoder 是EasyDarwin开源流媒体服务团队整理、开发的一款音频转码到AAC的工具库,目前支持G711a/G711u/G726/PCM等音频格式的转码,跨平台,支持Windows/Linux/arm.调用示例testEasyAACEncoder:通过EasyAACEnc原创 2016-01-03 20:23:05 · 10493 阅读 · 7 评论 -
用live555做本地视频采集转发,附源码
在分别做了基于live555与Darwin两种开源服务器的转发服务器后,不得不说Darwin确实在架构以及性能方面较live555略胜一筹,不过没关系,以live555的更新速度,作者的负责,相信在客户端开发以及ipC等方面会给大家带来不少帮助,不罗嗦,今天要给大家带来的是基于live555的本地视频实时采集与转发的介绍(有代码噢~).。 在对live555做二次开发时,最好的方原创 2012-12-07 17:05:18 · 23556 阅读 · 23 评论 -
基于live555的流媒体代理转发服务器
对于并发量并不大而且对性能要求不是很高的流媒体传输模块,live555还是很好的选择,下面说一下我所实现的流媒体代理服务器(目前只能实现对H264单视频的转发)代理转发主要分为对RTSP的转发与对RTP的转发(没有实现对rtcp的转发),尽量做到不破坏原有程序框架,所以还是要将整个代理过程融合于ServerMediaSubsession、Source、Sink的循环中,按照流程,RTSP OP原创 2012-03-22 10:51:01 · 18303 阅读 · 22 评论 -
Darwin Streaming Server中RTSP会话流程解析(Darwin流媒体服务器解析1)
一、首先是本地监听的建立:StartServer() -> -->QTSServer::Initialize() --->QTSServer::CreateListeners(原创 2012-07-10 13:25:15 · 6177 阅读 · 3 评论 -
EasyDarwin做转发延时太大?
很多人反映,在用EasyDarwin做流媒体转发服务时,延时太大,实际Darwin在转发模块中,有一个控制转发Buffer时间的配置reflector_buffer_size_sec,我们将这个配置改成0,也就是在服务器端不做缓存,直接转发,这样在网络条件充足的情况下对比转发和实时流,转发带来的延时也几乎可以忽略了: -----------------原创 2014-12-03 19:54:57 · 10175 阅读 · 6 评论 -
RTSP流媒体转发服务器源码
最新EasyDarwin已经支持海康、大华等标准RTSP/RTP协议的转发,代码及使用方法参看:http://blog.csdn.net/xiejiashu/article/details/29580543,具体代码下载:https://github.com/EasyDarwin/EasyDarwin,详细细节可以查看Github Commit记录:https://github.com/Eas原创 2014-11-22 12:31:11 · 21476 阅读 · 5 评论 -
流媒体服务器开发资源列表
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 评论 -
Darwin在转发流过程中对推送端断开的处理问题
最近在做项目的过程中遇到一个问题,在用Darwin Streaming Server中的QTSSReflectorModule模块做为流转发和分发服务,用live555的DarwinInjector类做为模拟设备进行流推送时,如果按照正常RTSP推送流程:Announce、Setup、Play…、Teardown,Darwin能较好地完成流的转发,但是假如设备在不正常工作,例如网络异常断开,设原创 2012-10-12 19:21:23 · 7135 阅读 · 0 评论 -
mongoose在Windows Server 2003上不能访问问题的解决
这两天在部署EasyDarwin开源流媒体服务器到Windows Server 2003的时候,奇怪地发现,在Windows 2003上面,mongoose的web管理端口居然无法访问,但通过netstat等命令查看,端口已经在Listening状态的; 于是经过各种代码跟踪调试,终于发现了问题的原因: 在mongoose.c中:static void ns_add_to_set(sock_t原创 2015-11-23 17:48:45 · 1517 阅读 · 0 评论 -
开源G711(PCMA、PCMU)/G726转AAC项目EasyAACEncoder
EasyDarwin开源社区整理了一份G711转AAC的转码库,支持Windows/Linux跨平台使用,将安防标准的G711转成移动互联网常用的AAC格式,希望能给大家带来方便!https://github.com/EasyDarwin/libg7112aac转码库的大体流程是:先将G711进行Decode,转化为PCM数据;再用libfaac库将PCM编码成AAC(与原创 2015-06-15 17:24:11 · 7966 阅读 · 5 评论 -
Darwin Streaming Server编译
EasyDarwin是我们在Darwin Streaming Server的基础上进行开发和扩展的,Windows/Linux编译,包括64位编译补丁,我们都进行了整理和测试,后续还会不断进行迭代和扩展,包括整体架构;EasyDarwin网站:www.easydarwin.org Github:https://github.com/easydarwin本文转自www.easydarwin.org,原创 2015-07-24 14:52:16 · 2275 阅读 · 0 评论 -
EasyDarwin+ffmpeg进行PC(摄像头+麦克风)流媒体直播服务
上一回我们描述了用EasyDarwin+ffmpeg进行摄像机直播的过程:ffmpeg推送,EasyDarwin转发,vlc播放 实现整个RTSP直播我们再进行一个方面的描述,那就是pc摄像头+麦克风进行主播过程:第一步》列出我们本机的设备:ffmpeg -list_devices true -f dshow -i dummy第二步》ffmpeg编码推送到EasyD原创 2015-07-17 16:23:34 · 19599 阅读 · 18 评论 -
用Darwin开发RTSP级联服务器(拉模式转发)(附源码)
在博客 在Darwin进行实时视频转发的两种模式 中,我们描述了流媒体服务器对源端音视频转发的两种模式,其中一种#拉模式# 转发,在我们通常的项目中经常会用到,比如在传统视频监控行业,IP摄像机部署在监控内网的各个地点,我们需要将他们进行集中式的管理,并且对外发布,这时候我们就需要用到一台流媒体服务器,能够拉取所需的摄像机的音视频流,并做转化(如RTMP、HTTP等),作为监控内网与公网的中转,提原创 2014-06-09 15:13:02 · 32249 阅读 · 35 评论 -
用live555将内网摄像机视频推送到外网服务器,附源码
最近很多人问,如何将内网的摄像机流媒体数据发布到公网,如果用公网与局域网间的端口映射方式太过麻烦,一个摄像机要做一组映射,而且不是每一个局域网都是有固定ip地址,即使外网主机配置好了每一个摄像机的映射地址,也有可能会因为宽带公网ip地址变动而导致配置无效。再换一个应用场景,当我们的所有IP摄像机都部署在一个没有有线网络的环境里面,所有的流媒体数据都要通过3G/4G网络发布出去。那么就必须有原创 2014-06-25 14:27:18 · 45126 阅读 · 8 评论 -
用Darwin开发分布式流媒体服务器
我介绍的是如何在DSS的基础上进行改造,分别开发成为分布式流媒体系统中的设备接入服务(设备主动注册上线)与流媒体分发服务。大家肯定会奇怪,DSS怎么改造成设备接入服务呢,其实,以DSS的架构,完全可以改造成大部分类型的服务器系统,而且流媒体服务只是DSS的几个功能模块,其强大之处在于其整体框架与架构设计上,闲话少说,让我们直入主题: 设备接入服务:在大部分的分布式服务器中,接入服务器原创 2013-03-30 11:47:54 · 12042 阅读 · 3 评论 -
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 评论 -
在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 评论