使用red5和OBS搞出自己的直播平台来挑战bilibili(B站),为什么文章标题叫这个,其实我学习red5和fms方面的东西是很久了的,加上我最近借助flex,要开发一套医疗远程会诊的系统(web端的视频聊天)。所以我对流媒体使用和环境搭建,还有客户端开发都已经很熟悉了。笔者混迹于B站多年(我大概是是2012年使用哔哩哔哩的,那时候只有弹幕,没有游戏和直播之类的东西),我之前是打算去面试B站做视频直播这块带头人的。可惜我那时候打听的时候人家不做直播方面的考虑。后来我就自己去开发一套图片网站,图片网站毕竟带宽不是很大 不挣钱的情况我还可以承受。所以今天来写个博客就是教大家自己搭建一个自己的专属直播平台,这样子就不怕哔哩哔哩封你房间什么,前提你是会自己技术,服务器管理。会java flash等啊。不会的也可以问我。
一、准备工作
1 在你电脑上安装jdk1.8 。我提供的这个red5必须使用jdk1.8,要不然不能运行
2 下载red5-1.0.6,下载地址: http://download.csdn.net/detail/wk313753744/9374983
3 就是去下载OBS(open broadcast software),
4 你要能看见效果,你还需要准备一个flash播放器。
.二、安装说明
1 安装jdk
2 安装red5-server-1.0.6,首先确保你已经下载好了red5-server-1.0.6.zip,解压
(1 ) 进入到red5-server-1.0.6目录,看起是这样子的。因为新版的red5不在使用jetty作为内置服务器,而是使用tomcat(1.0.6使用的tomcat8容器的),所以看起来tomcat的目录结构很像,conf存放就是一些配置文件,我们主要修改是conf/red5.properties,根据自己需要修改端口号,log是日志目录,webapps下,就是你自己开发的red5的程序了,比如直播,点播,聊天等,共享对象的案例等。
( 2 ) 在启动red5,我们需要注意一点。如果你系统中的环境默认安装时jdk8,那么你不需要调整,直接进入下一步骤,但是如果你安装了其他版本的jdk,比如常见的jdk1.7.*。那么你就必须修改你red5使用的jdk是jdk1.8以上,找到red5.bat,用文本编辑工具打开,找到32行。
:launchRed5 echo Starting Red5 "%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%RED5_CLASSPATH%" %RED5_MAINCLASS% %RED5_OPTS% goto finally把上边%JAVA_HOME% 变量修改成C:\Program Files\Java\jdk1.8.0_05\bin\java 使用你jdk8的绝对路径。下面修改之后的配置文件。
:launchRed5 echo Starting Red5 "C:\Program Files\Java\jdk1.8.0_05\bin\java" %JAVA_OPTS% -cp "%RED5_CLASSPATH%" %RED5_MAINCLASS% %RED5_OPTS% goto finally
(3) 启动red5。在window中双击red5.bat 。即可启动。在linux上双击red5.sh,但是在linux中为了不是交互式模式运行,你启动的red5-highperf.sh。这个经过参数优化过的。也可以后台运行。以上服务器环境就准备好了,下面开始介绍obs怎么发送视频流到red5服务器上,
二、OBS发布流到Red5服务器,
(1)打开OBS客户端,安装什么的我就不讲了。主要有两个地方FMS URL和播放路径/串流码(如果存在)。
FMS URL: rtmp://127.0.0.1/live
播放路径/串流码(如果存在): test
注:播放路径/串流码(如果存在)在OBS意思就是playPath。 在red5你理解为一个流名字(streamname)。随便取一个就是了,然后在你播放该流地方制定你现在取得这个名字,我这里就是test了。
(2)OBS设定点击确定之后,回到OBS主界面,在来源区域右键,添加-》显示获取。这样就创建了一个捕捉源,当然也可以使用摄像头作为捕捉源。
(3) 为了保险起见,你如果是第一次使用OBS,那么你应该点击预览串流。看看效果
(4)点击开始串流,就会把你视频流发布到Red5服务器。这里顺便说一句,这里开始串流就跟flash或者flex中的NetStream中publish()方式是一样。
三、预览效果
就是使用rtmp协议来播放你发布的视频流. 我用red5自带的这个案例来播放流,之前那个用自己开发一个flex程序播放是一样的。
主要有两个地方需要需要修改,就是Location中路径要跟你OBS的FMS URL一直,而且你RED5服务器上要有live这个程序,我给你下载red5压缩包中是有的。
第二个就是修改Name 为test,然后点击Play就可以播放了。
最后大功告成欢迎访问我图片网站 http://lockbur.com/