本文转自:http://www.cnblogs.com/babosa/p/6033039.html EasyHLS EasyHLS是EasyDarwin开源流媒体团队开发的一款HLS打包库,接口非常简单,只需要传入打包的文件名.切片存放的目录.单个切片时长以及切片数等参数,EasyHLS库就能轻松将H264+AAC的流媒体切片成m3u8+ts,提供给WEB服务器进行HLS流媒体发布: 调用流程 /* 打包H264视频 */ EasyHLS_API int Easy_APICALL EasyHLS…
EasyHLS EasyHLS是EasyDarwin开源流媒体团队开发的一款HLS打包库,接口非常简单,只需要传入打包的文件名.切片存放的目录.单个切片时长以及切片数等参数,EasyHLS库就能轻松将H264+AAC的流媒体切片成m3u8+ts,提供给WEB服务器进行HLS流媒体发布: 调用流程 /* 打包H264视频 */ EasyHLS_API int Easy_APICALL EasyHLS_VideoMux(Easy_HLS_Handle handle, unsigned int uiF…
一.FFmpeg下载:http://ffmpeg.zeranoe.com/builds/ 下载并解压FFmpeg文件夹,配置环境变量:在“Path”变量原有变量值内容上加上d:\ffmpeg\bin,验证:ffmpeg -version 出现版本号则成功.二.官网下载windows  Stable version版Nginx安装nginx服务器,配置:config和mime.types.1.在nginx\conf\nginx.conf中:  http {    include       mim…
[转]流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls) http://blog.csdn.net/tttyd/article/details/12032357 RTP           参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式.RTP 协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(P…
源: 流媒体协议(RTMP.RTSP.UDP.HTTP.MMS)转换小工具(RTSP转成RTMP案例展示)…
图片转成流 Bitmap b = new Bitmap(Server.MapPath(ppath)); Stream ms = new MemoryStream(); b.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); 流转成图片 MemoryStream ms = new MemoryStream(Bytes); return Bitmap.FromStream(ms,true); 字节转图片 /// <summary> /// 字节数组…
背景分析 接触到EasyNVR产品的开发者都知道,EasyNVR是一套功能齐全.简洁易用的流媒体解决方案,可作为能力曾前端接入摄像头,后端接入业务系统使用,也可以作为应用层,直接修改为属于企业用户自己的视频管理平台,其技术特点主要是以下几个方面: 兼容性:通过 RTSP 协议接入传统网络摄像机.NVR.编码器等,使用RTSP协议接入能兼容市面上绝大多数网络摄像机等源设备,最大程度的提高整体方案的硬件设备的兼容性,有效的避免采用各个硬件厂家SDK 定制的繁琐以及不通用问题: 丰富性:存储方面提供传…
一.背景需求 传统监控行业里不管是设备端.服务器端亦或是客户端都在一个内网里面.而且现在的大部分监控方案都是这样的格局,小到一个公司范围内的监控,再到一个园区.一个仓库监控.一个农业园林监控.一个养殖场监控.一个小区的监控,大到电力.交通行业的大局域网监控,这种监控场景下,客户终端出不了监控的内网,无法做到公网监控与录像回放. 虽然现在也有一些个别大的监控项目,会搞一个网关机器,将视频服务映射到公网,但始终都是小规模使用,上不了量,成不了监控云平台. 对于有着监控需求,却无法投入巨额资金的中小企…
EasyNVR摄像机无插件直播方案 随着互联网的发展,尤其是移动互联网的普及,基于H5.微信的应用越来越多,企业也更多地想基于H5.微信公众号来快速开发和运营自己的视频及视频相关性产品,那么传统的安防IPC摄像机所输出的各种RTSP.GB28181.SDK.私有协议视频流,都无法直接在Web网页或者微信公众号上进行直播播放,那么,就产生了一种安防设备互联网化转型的需求,基本要求就是:无插件.纯web.全平台PC/Android/iOS.支持H5.支持微信.支持社交分享! 于是, EasyNVR就…
EasyNVR中有对录像进行检索回放的功能,且先抛开录像的回放,为了更好的用户体验过.让用户方便快捷的找到对应通道对应日期的录像视频,是必须的功能. 基于上述的需求,为前端添加一个日历插件,在日历上展示出所有的录像信息,用来告知用户那些日期有回放录像,那些日期不没有回放录像是很有要的. 如何实现日历插件展示出对应日期信息: 1.需要引入的控件 <script src="@@docroot/adminlte-2.3.6/plugins/moment/moment-with-locales.j…
背景描述 HLS (HTTP Live Streaming)是Apple的动态码率自适应技术,主要用于PC和Apple终端的音视频服务,包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件.HTML5直接支持这个流地址,因此只要是支持H5的设备都可以解码播放. 问题概述 EasyNVR团队在进行多屏开发时,由于多屏功能不需要在手机端展示(pc端多播放为RTMP,手机端播放为HLS),因此只注意到了引用video.js来进行rtmp的播放.但实际使用中,由于项目需求不同,hls流的播…
RTP           参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式.RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础.RTP协议和RTP控制协议RTCP一起使用,而且它是建立在UDP协议上的. RTP 本身并没有提…
之前有博客专门介绍了EasyPlayer的本地录像的功能,简单来说,EasyPlayer是一款RTSP播放器,它将RTSP流里的音视频媒体帧解析出来,并用安卓系统提供的MediaMuxer类进行录像.那EasyPlayerPro可以这样实现吗?答案是不太现实,因为Pro支持绝大多数的流媒体协议,并不单单是RTSP协议,包括hTTP\RTSP\RTMP\HLS\FILE等格式都支持.要将这些数据分别解析出来并抛给上层,并不合适.EasyPlayerPro最终是基于FFMPEG来做的媒体流的解析(d…
EasyPlayerPro简介 EasyPlayerPro是一款全功能的流媒体播放器,支持RTSP.RTMP.HTTP.HLS.UDP.RTP.File等多种流媒体协议播放.支持本地文件播放,支持本地抓拍.本地录像.播放旋转.多屏播放等多种功能特性,核心基于ffmpeg,稳定.高效.可靠,支持Windows.Android.iOS三个平台,EasyPlayerPro播放器可广泛应用于流媒体客户端.互联网直播.在线教育.IPTV.赛事直播.本地视频文件播放等项目中.目前在多家教育.安防.行业型公司…
http://blog.csdn.net/tttyd/article/details/12032357 RTP           参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式.RTP 协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的…
常用的流媒体协议主要有HTTP渐进下载和基于RTSP/RTP的实时流媒体协议两类.在流式传输的实现方案中,一般采用HTTP/TCP来传输控制信息,而用RTP/UDP来传输实时多媒体数据. 1 实时传输协议RTP与RTCP RTP(Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输协议.RTP由两个紧密链接部分组成:RTP----传送具有实时属性的数据:RTP控制协议(RTCP)----监控服务质量并传送正在进行的会话参与者的相关信息. R…
RTP           参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式.RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础.RTP协议和RTP控制协议RTCP一起使用,而且它是建立在UDP协议上的. RTP 本身并没有提…
//字节流--->字符流 1. public class TestIO { public static void main(String[] args) throws IOException { FileInputStream fis = new FileInputStream("c:/abc.txt");// 字节流 InputStreamReader isr = new InputStreamReader(fis);// 字符流 BufferedReader br = new…
作为RTMP流媒体服务器,接受RTMP推流.进行实时的直播流分发是EasyDSS流媒体服务自身一大核心功能.写本篇博文的一个目的是向大家介绍EasyDSS新版的直播间.匿名直播.和虚拟直播的功能, 另一主要原因是有部分用户是基于之前版本的EasyDSS来进行集成二次开发的,新版本的EasyDSS在之前的内核基础上进行了更多功能的开发,这导致了之前的部分集成方式有变动.希望看完这篇博文对您过渡到新版EasyDSS有所帮助. EasyDSS新旧版本集成方法差别(匿名直播的使用): 1.调用接口方式…
BYTE* m_pBmpData = NULL; BITMAPINFO* m_pBmpInfo = new BITMAPINFO[sizeof(BITMAPINFOHEADER)+sizeof(RGBQUAD)]; m_pBmpInfo->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); m_pBmpInfo->bmiHeader.biBitCount = 24; m_pBmpInfo->bmiHeader.biWidth = m_nWidth;…
简要描述 今天突然接到国内某上市公司同事打来的技术咨询电话,经过简单的沟通,大概所描述的需求是: 1.目前现场有非常多的摄像机资源需要接入: 2.需要将摄像机的RTSP流转成RTMP流接入到微信小程序: 3.微信小程序已经确认是能直接播放RTMP流的: 4.希望功能就像微信支付一样,随用随拿,用完就走: 后来经过简单的总结,大概的意思就是,需要能有这么一个流媒体服务,通过接口调用,传入一个RTSP地址的参数,流媒体服务能直接返回经过转换之后的RTMP播放地址,不需要在需要播放之前做任何的通道配置…
本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/73253044 前言 安防互联网化的需求已经越来越强烈了,传统的安防摄像机都想进行一些互联网化的直播(网页或者微信直播),也就是RTMP和HLS直播,那么在技术实现上就是各种SDK/RTSP流拉取,再转成RTMP推流到RTMP服务器进行RTMP直播和HLS切片了,今天我们要讲的就是比较通用的RTSP拉流,然后再转推流RTMP的功能实现,在Git…
前言 在维护EasyDarwin开源项目的几年内,几乎市面上大大小小的技术需求都给接触了一遍,大团队.大背景有大需求,草根团队有草根团队的需求,然而这些需求近些年都有一个发展的趋势,那就是"互联网"化,小到RTSP转RTMP进行互联网化直播,大到现在很多做公安/平安城市类的项目,都已经直接用上了萤石的方案,不过现在慢慢由于流量成本.硬件成本.未来空间的假想.不想被单个厂家绑架等很多方面,现在各大集团都在构建自己的视频云方案,但不可能整个从视频硬件设备.到视频平台.到业务平台都由自己来建…
EasyClient是EasyDarwin开源流媒体团队开发的一款功能丰富的开源PC客户端项目,目前支持Windows.Android版本,后续将支持ios版本,其中Windows版本的EasyClient支持多种源接入,包括Windows摄像头.麦克风.RTSP摄像机.屏幕桌面等,采集后经过x264编码.EasyPusher推送到EasyDarwin流媒体服务器进行转发,同时EasyClient还支持通过EasyRTSPClient拉取EasyDarwin直播流,进行显示.播放,非常稳定.易用…
最近有一个项目, 进行步态识别的时候,同时需要显示摄像的实时画面.对于 Winform 显示画面,之前针对 rtmp 流的时候,是先写一个HTML 网页加载视频流,然后在IIS上发布,将地址直接赋值给winform中 WebBrowser 控件的Url值即可. this.webBrowser1.Url = new Uri("http://192.168.0.217:8063/player.html"); 针对HTML部分,网上有很多开源的Demo,已封装好,没啥值得研究的事情.本来顺顺…
一. lal 简介 lal是开源直播流媒体网络传输项目,主要由三部分组成: lalserver:流媒体转发服务器.类似于nginx-rtmp-module等服务,但支持更多的协议,提供更丰富的功能. demo:一些小应用,比如推.拉流客户端,压测工具,流分析工具,调度示例程序等.类似于ffmpeg.ffprobe等应用. pkg:流媒体协议库.类似于ffmpeg的libavformat等库. lal github地址: https://github.com/q191201771/lal 以下是l…
本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/74161115 引言 最近在测试EasyNVR时遇到了部分手机上无法正常播放HLS直播流的问题.EasyNVR的介绍参考http://blog.csdn.net/jinlong0603/article/details/73456831,主要功能是能同时接入区域或公网中多路RTSP摄像头,拉取RTSP流转RTMP推送,同时输出RTMP流和HLS流…
下载ffmpeg的Windows静态版: https://ffmpeg.zeranoe.com/builds/win64/static/下载nginx-rtmp-windows版:https://github.com/illuspas/nginx-rtmp-win32 解压 启动nginx 启动ffmpeg,打开ff-prompt.bat 这里通过将摄像头的rtsp流转成rtmp流和hls流来实时播放 通过rtsp生成rtmp流: ffmpeg -i "rtsp://admin:12345@19…
在之前的一篇博客<EasyNVR和EasyDSS云平台联手都不能解决的事情,只有国标GB28181能解决了>我们介绍了很多应用场景里面,RTSP和RTMP直播协议都无法满足应用需求时,国标GB/T28181是一个非常好的选择,但通常意义上,我们的国标GB/T28181协议实际是一种按需直播的协议,有人观看的时候才会通知设备推流到云端流媒体服务器,而且推送的是实时的RTP数据包,RTP需要经过协议转换成为RTMP.HLS.HTTP-FLV才能成为互联网直播流,所以,如果需要将海康.大华.宇视等安…
1. 类定义 1.1 SrsConfig 类 /** * the config service provider. * for the config supports reload, so never keep the reference cross st-thread, * that is, never save the SrsConfDirective* get by any api of config, * for it maybe free in the reload st-thread…