在做完一个基于RTMP的音视频通话软件后,想深入了解下RTMP协议的实现。
项目的服务器环境是FMS,这里,对另一种开源的服务端 Red5做个了解。
需要Jre环境。
下载最新版1.0 RC1 http://trac.red5.org/downloads/1_0/setup-Red5-1.0.0-RC1.exe
安装,在过程中会需要输入服务器IP和HTTP访问的端口号。
安装完毕,运行安装目录下的 red5.bat 一闪而过。OK,用cmd运行。发现报一下错误:
google一番后知道,需要删除lib目录下
com.springsource.slf4j.juli-1.6.1.jar
com.springsource.slf4j.log4j-1.6.1.jar
两个文件 ,删除之后,服务成功启动
打开web管理页,地址是刚才安装时填入的IP和端口号,出现这个页面说明,web管理已经成功运行
好 我们点左下角,运行demo
就试这个Publisher好了
red5-publisher是一个非常强大的调试工具,用flex开发,支持基于RTMP的音视频采集编码上传,下载解码显示,有很多参数可以设置,并且旁边的打印输出也非常有帮助。
OK,在Server栏的Location内填入流地址,比如我这里安装时配置的
rtmp://192.168.137.1/live
由于已经使用了rtmp协议头,所以这里可以不输入1935这个rtmp端口号,点Connect
01:42:06:371 - Using Google Windows Flash Player 11,1,102,62 01:44:22:958 - Connecting to rtmp://192.168.137.1/live 01:44:23:240 - NetConnection.Connect.Success
然后配置Video,Audio,设置好流名称,Publish!
这时切换回View,就可以play实时上传的音视频了
red5基本配置完毕, 可是我想像fms那样检测服务器状态,流连接,上传下载信息。
请看下部分,Red5 管理控制台的配置。
http://bashell.sinaapp.com/archives/install-and-config-red5-server-1.html