欢迎各位兄弟 发布技术文章
这里的技术是共享的
此套网站使用red5提供的rtmp流媒体服务,用户前端使用FlowPlayer的Flash播放器实现的一个Demo,暂没有做其他开发,后期可以使用PHP或JSP做成动态网站,方便实际应用
服务平台基于CentOS 6.2
本文所需程序:
说明:每款程序第一个链接为官方下载页面,可以查到最新版本。第二个链接为最新版或最新正式版的直接下载地址
Red5
http://www.red5.org/red5-server/
http://trac.red5.org/downloads/0_9/red5-0.9.1.tar.gz
FlowPlayer
http://flowplayer.org/download/index.html
http://releases.flowplayer.org/flowplayer/flowplayer-3.2.7.zip
FlowPlayer-RTMP
http://flowplayer.org/plugins/streaming/rtmp.html
http://releases.flowplayer.org/flowplayer.rtmp/flowplayer.rtmp-3.2.3.swf
Red5中的oflaDemo例子
oflaDemo.zip
本文中提供的Red5中神奇的没有oflaDemo例子,没有这个例子就不能提供视频流应用,也就完成不了视频流媒体服务器的搭建,需要到csdn中下载,可惜要5积分P_P,如果你没有csdn账号,也可以使用我的博客提供的附件。
http://download.csdn.net/detail/guoquan_scu/3301726
http://qtjblog-wordpress.stor.sinaapp.com/uploads/2011/10/oflaDemo.zip
Linux懒人请Copy:
wget
wget
wget
本例中各种安装包文件都已放在/home/setup目录中,请留意
首先要有Apache或Nginx再或Tomcat等Web服务端程序
本文中Web目录位于/data0/web/
FlowPlayer安装:
其实FlowPlayer是一个基于Flash + Javascript的一个网页播放器,它支持rtmp流媒体播放
cd /home/setup
unzip x
mv flowplayer /data0/web/
解压到网站根目录下可以看到里面有两个swf文件及一个example文件夹等一些文件,我们可以先测试一下http://localhost/flowplayer/example/是否可以正常访问,正常情况是可以播放一段官方提供的视频的。
这个时候千万不要删除此example,后面会用到
Red5安装:
Red5是一款基于Java的rtmp流媒体服务器,所以需要JDK的支持,本文提供的最新Red5 0.9.1版需要JDK 6.0以上的支持,笔者安装的JDK 7.0,可以到http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html下载安装,笔者在此不作安装教程。
测试本机有没有安装JDK可以通过java -version和javac -version查看版本号看是否有正常版本号返回,注意java和javac最好都测试,不解释。
JDK测试安装无误后,解压Red5的tar包及oflaDemo包(Red5是JAVA程序,无需编译)
cd /home/setup
tar zxvf
unzip x
mv oflaDemo red5-0.9.1/webapps/
Red5的应用都在解压目录下的webapps当中,oflaDemo也是一个示例Demo,我们在此借用。
安装成功后,我们的视频媒体文件就存放于/home/setup/red5-0.9.1/webapps/oflaDemo/streams/文件夹中了,此段话在后文会再次提示
Copy必要文件:
FlowPlayer-RTMP Plugins是一个必备的插件,需要放在Red5的rtmp协议访问中才行,提醒注意,此处需要两个文件
flowplayer.rtmp-3.2.3.swf
前者为下载的文件,后者是flowplayer程序中自带
cp /home/setup/flowplayer.rtmp-3.2.3.swf /data0/web/flowplayer/flowplayer.controls-3.2.5.swf /home/setup/red5-0.9.1/webapps
复制到Red5的webapps目录下即可
至此程序的文件准备告一段落
修改FlowPlayer的example页,将播放指向到rtmp流媒体服务器提供的内容
*修改/data0/web/flowplayer/example/index.html文件
将
<script>
flowplayer(“player”, “../flowplayer-3.2.7.swf);
</script>
替换为
<script>
flowplayer(“player”, “../flowplayer-3.2.7.swf”,{
clip: {
provider: ‘rtmp’,
live: false,
autoBuffering: true, //是否自动缓冲视频,默认true
autoPlay: true,
<!--url:’test.flv’ //此处为播放文件名,可由网站参数指定,视频文件位于前文提到的Red5根目录下webapps/oflaDemo/streams -->
},
playlist: [
{
url: '1.flv' ,
},
{
url: '2.flv' ,
},
{
url: '3.flv' ,
}
],
plugins: {
rtmp: {
url: ‘flowplayer.rtmp-3.2.3.swf’,
playlist: true,
netConnectionUrl: ‘rtmp://192.168.1.1/oflaDemo/’ //此处IP地址为你的rtmp服务器IP地址
},
controls: {
url: ‘flowplayer.controls-3.2.5.swf’,
autoHide:’always’,
play: true,
scrubber: true,
playlist: false,
tooltips: {
buttons: true,
play:’播放’,
fullscreen: ‘全屏’ ,
fullscreenExit:’退出全屏’,
pause:’暂停’,
mute:’静音’,
unmute:’取消静音’
}
});
</script>
至此大功告成,跑起你的Web服务端
跑起Red5:
cd /home/setup/red5-0.9.1/
./red5.sh
此为Red5的启动程序,执行后稍等,显示到
[INFO] [Launcher:/installer] org.red5.server.service.Installer – Installer service created
oflaDemo appStart
即为运行成功
此时就可以到浏览器前端访问http://192.168.1.1/flowplayer/example/index.html进行测试。
如果有异常,可以将index.html移至Web根目录,但请注意index.html文件中与上一级目录的两个swf文件的相对位置。
再次提示:
视频流文件位于
./red5-0.9.1/webapps/oflaDemo/streams
修改流引用位置在刚提到的index.html文件中的修改部分,可以从前面查到,有相应注释
来自 http://blog.sina.com.cn/s/blog_a55699a60101c17a.html