rtmp的实践

原创 2015年07月09日 15:43:12

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。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

RTMP协议规范中文翻译

  • 2017年11月14日 17:14
  • 621KB
  • 下载

QT+VLC实时流播放rtsp/rtmp

  • 2017年10月26日 17:25
  • 84.79MB
  • 下载

C++实现RTMP协议发送H.264编码及AAC编码的音视频

C++实现RTMP协议发送H.264编码及AAC编码的音视频   RTMP(Real Time Messaging Protocol)是专门用来传输音视频数据的流媒体协议,最初由Macromedia...
  • coloriy
  • coloriy
  • 2015年07月28日 15:33
  • 1719

nginx-rtmp

  • 2017年11月08日 17:49
  • 4.37MB
  • 下载

opencv_rtsp_to_rtmp_class

  • 2017年11月06日 17:45
  • 12KB
  • 下载

FFmpeg发送流媒体的命令(UDP,RTP,RTMP) - ozlargoco

这两天研究了FFmpeg发送流媒体的命令,在此简单记录一下以作备忘。 1.      UDP 1.1. 发送H.264裸流至组播地址 注:组播地址指的范围是224.0.0.0—239...
  • langsim
  • langsim
  • 2015年01月20日 12:57
  • 532

RTMP协议详解

  • 2016年11月18日 11:07
  • 1.37MB
  • 下载

Adobe 官方公布的 RTMP 规范

本文是为截至发稿时止最新 Adobe 官方公布的 RTMP 规范的中文翻译。包含 RTMP 规范的全部内容。是第一个比较全的 RTMP 规范的中译本。本中译本已做成 PDF 格式,下载地址:http:...
  • defonds
  • defonds
  • 2013年12月24日 20:49
  • 23264
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:rtmp的实践
举报原因:
原因补充:

(最多只允许输入30个字)