RTMP被Adobe开发出来,就是用于在其Flash平台的流媒体系统之间传递数据的。因此想要了解RTMP,需要首先了解Flash流媒体系统。
最简单的Flash流媒体系统由两部分组成:
客户端:Flash Player(一般只有这一种)
注:支持RTMP的基于Flash的播放器除了可以自己开发之外,还有现成的,比如说jwplayer,flowplayer等等。
服务器端:
1.Flash Media Server(FMS):Adobe官方的流媒体服务器。毕竟是商业服务器,其性能应该是最强的,配置是最简单的,但是价格不菲,推荐作为入门学习使用。个人下载使用是不用花钱的。服务器端编程使用ActionScript语言。
官网:http://www.adobe.com/cn/products/adobe-media-server-family.html
可参考教程:
1.FMS开发者向导。这个教程讲的是FMS开发技术,是网友翻译的中文版,学习起来比较方便。这里有英文原版,内容更全:Flash Media Server Delevoper's Guide
注:FMS开发技术方面使用到了ActionScript,可以先找相关教程做一个初步的了解。主要使用Flash CSx进行开发。
2.FMS技术指南。这个教程主要是讲述FMS配置的,第2部分涉及到集群,负载均衡等内容,挺高端的。
2.Red5:开源流媒体服务器,基于Java的。曾经使用过,感觉也还算比较方便,如果商业应用,又买不起昂贵的FMS的话,使用也不错。服务器端编程使用Java语言。
3.wowza流媒体服务器
官网:https://www.wowza.com/pricing/installer
4.Helix流媒体服务器
曾经很牛的流媒体服务器,可惜已经暂停开发了。
以后此篇文章会加其他的开源RTMP项目介绍。