关闭

rtmp的实践

450人阅读 评论(0) 收藏 举报
分类:

1 开发意义

        使用RTMP技术的流媒体系统有一个非常明显的特点:使用 Flash Player 作为播放器客户端,而Flash Player 现在已经安装在了全世界将近99%的PC上,因此一般情况下收看RTMP流媒体系统的视音频是不需要安装插件的。用户只需要打开网页,就可以直接收看流媒体,十分方便。
目前使用RTMP技术的电视台有如下几个:
香港电视台直播(rtmp://live.hkstv.hk.lxdns.com/live/hks)

  RTMP直播协议,是Adobe公司推出的以flash播放器为客户端的实时直播流协议,是一种应用非常广泛的通信协议。而flash直播,也是到目前为止,web页面上最成熟的直播技术。不过,因为flash主要是嵌入到web页面中,因此,RTMP直播,通常也就局限在B/S形式的直播应用。

2 架构分析

使用adobe flash media live encoder类似程序将音视频流打包(类似于FLV格式),发给RTMP服务器(RTMP服务器有商用的,也有开源的),客户端使用flash player或其他工具,基于RTMP协议从RTMP服务器取流,如下图:

3 librtmp

rtmpdump 是一个用来处理 RTMP 流媒体的工具包,支持 rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps:// 等。

  下载rtmpdump的代码,你会发现,它是一个地道的linux项目,除了一个简单的Makefile,其他什么都没有。好像librtmp不依赖于系统。

  a) 将librtmp的代码导入工程,把openssl、zlib的头文件和librtmp放在一起,把编译好的openssl和zlib的静态库放在一起;

  b) 在工程设置中,添加之前编译好的openssl和zlib的库,编译即可。

4 crtmpserver

crtmpserver又称rtmpd是Evostream Media Server(www.evostream.com)的社区版本采用GPLV3授权
其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品。
支持RTMP的一堆协议( RTMP,RTMPE, RTMPS, RTMPT, RTMPTE )。

支持iPhone,Android。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:567049次
    • 积分:8161
    • 等级:
    • 排名:第2570名
    • 原创:203篇
    • 转载:375篇
    • 译文:0篇
    • 评论:37条
    最新评论