搭建流媒体服务器.docx
《搭建流媒体服务器.docx》由会员分享,可在线阅读,更多相关《搭建流媒体服务器.docx(9页珍藏版)》请在冰点文库上搜索。
搭建流媒体服务器
Flash流媒体
最近视频的东西比较火,前些天我也稍微了解了一下使用开源软件建在线Flash流媒体播放平台的解决方案,还是有一些收获。
Red5是一款基于java的开源的Flash流媒体Server软件,可以作为取代Macromedia提供的商业版本FMS。
Red5使用RSTP作为流媒体传输协议,内置了一些示例,这些示例实现了在线录制,flash流媒体播放,在线聊天,视频会议等一些基本的功能。
由于系统本身是开源的,在碰到问题的时候也比较容易解决,大不了直接改代码,在成本方面也可以省下一笔不小的开销,为未来的功能扩展也提供了充分的空间。
如果仅仅是实现在线录制,在线播放,那么Red5也就差不多够了,但可能我们有时候还需要用户上传自己拍摄的视频文件,而要把这些视频文件转成可播放的flv文件就需要视频编码软件了。
FFMpeg提供了录制,播放,视频流处理的完整解决方案。
它自身也带了一个基于HTTP的流媒体广播程序以及其它几个实用的程序,但我们的重点还是它的视频转换程序,似乎GoogleVideo也是用的它的程序作为视频转换工具。
我用FFMpeg转了几个视频,效果还可以,在声音上碰到了一些问题,在不添加参数的情况下,有一部分视频的声音会有问题,有的视频无论怎么添加参数,都出不来声音,报错提示的是不支持所带的声音采样格式,只支持几种固定的格式,我看了一下代码,确实是这样子,但理论上应该是能够解决的。
FFMpeg自带的libavcodec是一套很牛的编码库,为了保证质量和性能,里面的很多codec都是从头开发的。
这两个加起来,实现一些简单的在线视频功能就差不多了。
RED5—从下载到HELLOWORLD!
D5PowerStudio原创,转载请注明出处~谢谢!
RED5的中文资料象牛毛一样稀少。
。
从下载到完全调试成功,大概花费了1天多的时间。
在这个把中间出现的问题罗列出来,希望给想研究RED5的朋友一点帮助。
需要用到的软件:
RED5RC2:
red5
Eclipse:
ant:
JDK:
如果想直接通过SVN获得最新的RED5,还需要安装Eclipse的SVN插件:
呵呵,装的东西够多吧?
简单说一下各个软件的用途。
如果是直接从SVN下载获得RED5,那么这里是不具备WIN下运行的文件的,所以就需要antserver来编译运行。
下载安装包的朋友就不需要再用ANT来编译了(不过做开发的话,建议还是拖下来比较好,又不大,10几M而已)。
Eclipse是开发RED5服务器端的必须工具,JDK是RED5运行的必要环境。
这里,我以SVN下载版为例来介绍配置。
首先在Eclipse中用SVN插件(右上角有一个小加号的图标->other->SVNxxx)从RED5官方网站获得最新的代码(我下了至少两个小时,美国到中国好远啊。
。
。
)SVN地址在RED5的官方网站,我下载的时候为,连接上以后,在最上面的那一级点右键,选择checkout,然后选择目标路径什么的就不再多说了。
。
下载完成后,需要为Eclipse指定RED5的Build文件,在左边的列表顶端文件上点右键,然后选择Externaltools(工具栏绿色的PLAY图标,有红色锁的那个。
。
),打开后选左侧择蚂蚁图标(ANT),右键->Creat,输入文件名server_all,然后点第一行的浏览按钮,在弹出的窗口中选择,确定。
然后选择target标签,在下面的选择中把all勾选,并选中该行,然后Apply.再操作一次,新建server_server,同样选择,然后在target中把all的勾选取消,选择server,同样选中该行,点Apply.
这个时候运行server_all,我在这里出现了错误(详细见上一篇日志),解决办法为修改中的JAVA版本号与本机实际JDK版本号一致。
另外也有人说报其他错误,要修改,但我没有遇到这个问题(参见)。
当你看到BUILDSUCCESS的时候,恭喜你,编译成功咯。
OK,接下来可以建立第一个应用程序了,为了省事,可以去RED5的webapps里面,把test直接复制一份,改名为demo,然后把里面除了WEB-INF以外的其他文件删除,再进WEB-INF中,把src和class两个文件夹清空,在把除了这两个文件夹以外的其他文件夹删除(如果有的话),现在终于清净了,在Eclipse中把工作区设置在RED5的webapps,然后新建一个项目,命名为demo,这个时候你会发现刚才弄好的文件夹demo中的内容已经显示在左边了:
)右键选择src,BuildPath->UseasSourceFolder,将其指定为代码文件夹,然后在项目名demo上右键选择Properties,选择JavaBulidPath,在选择Source标签,在下面的Browse中选择Class目录,将其指定为目标目录。
删除左边自动生成的BIN目录,OK!
为了编译RED5程序,我们要把RED5的包导入到现在的项目中来。
在项目名上点右键选择Properties,然后在JavaBuildPath中选择Libraries,点击AddExternalJERS将RED5中的包含入项目。
然后,就可以按照RED5自带的指导文件建立第一个RED5程序啦!
公司今天需要装一台RED5的服务器用来开发程序。
发现RED5的已经正式放出,以前我写过一篇关于用SVN进行抽取,然后建立RED5项目的文章。
而对于一般的开发者来说,不需要去修改RED5本身的程序,只需要建立自己的应用程序就可以了。
现在把建立过程记录下来,希望对各位有所帮助。
本文适合第一次接触RED5(WIN平台下),而不知道如何开始建立自己的应用程序的用户。
流程:
1.下载最新版本的RED5red5
2.安装RED5,注意在安装RED5前要先安装好JRE,安装RED5的时候会要求指定JRE的目录的。
3.到RED5的安装目录,找到doc/templates目录,该目录中存放了一个标准的RED5应用程序模版myapp,将其复制到RED5安装目录中的webapps目录下,并改名为你喜欢的文件夹名,比如你要开发一个聊天的程序,那么可以把myapp改为myChat,这个名字就是以后你要连接的服务名了。
4.在WEB-INF中新建一个文件夹src用来存放程序的源代码,新建一个classes文件夹用来存放编译后的文件。
5.打开Eclipse,将工作区指定为RED5安装目录下webapps,然后新建一个项目,项目名为myChat.这个时候你应该发现刚才myChat中的文件都被加载进来了,我们首先把src目录指定为源代码目录,右键选择src,在弹出的菜单中选择BuildPath->UseasSourceFolder,即将其指定为代码文件夹。
接下来要指定项目的目标目录,在项目名上右键选择Properties,选择JavaBulidPath,在选择Source标签,在下面的Browse中选择Class目录,将其指定为目标目录。
然后选择Libraries,点击AddExternalJARs,将RED5安装目录下的包含进来。
6.这个时候,在Eclipse的左边应该多了WEB-INF/src这样一个东东,我们将要在这里开始写入我们的第一个项目代码。
右键选择它,在弹出的菜单中选择New->Package,新建一个包,举例,包名可以为,然后再在生成的这个包上继续右键选择New->File,输入文件名。
并在建好的文件中输入以下代码:
package
importclassApplicationextendsApplicationAdapter{
publicStringlogin(){
return"WelcometoChatServers";
}
}
7.进行配置。
编辑WEB-INF下的,找到beanid=””一句,将class=”XXX”中的XXX位置修改为,这样本程序将以刚才写的Application来运行。
删除后面的beanid=”…整句,因为我们暂时用不到这个东东。
编辑,找到webAppRootKey,将其下面的param-value标签中的值修改为/myChat。
编辑,将第一句修改为=/myChat
8.编译项目
9.重新启动RED5服务器
10.在FLASH中新建一个文件,输入以下代码:
nc=newNetConnection();
("");
=function(obj){
trace(obj);
}
("login",nc);
?
运行程序,显示结果为WelcometoChatServers。
第一个RED5应用程序诞生了,呵呵:
)
Red5简单安装指南howto
Red5是个开源的flash服务器,相对fms4500$的一个lic的价格,能省好多钱哦,今天就测试安装一下Red5
1.配置java环境
去sun网站下载最新的jdk1.5.0_07,怎么安装不说了,直接解压安装到/usr/java/目录
然后在/etc/profile添加以下几句信息
exportPATH=$PATH:
/usr/java/jdk1.5.0_07/bin:
/usr/java/
exportJAVA_HOME=/usr/java/
exportCLASSPATH="./:
/usr/java/"
exportLD_LIBRARY_PATH=/usr/java/注意,默认的as4可能自带java,把自带的先删除了!
!
2.安装apche-ant
去apache网站下载最近的版本,安装方法跟jdk差不多,也是解压到/usr/local/ant目录
然后在/etc/profile添加以下几句信息
exportANT_HOME=/usr/local/ant
exportPATH=$PATH:
/usr/local/ant/bin
source/etc/profile让配置生效
3.安装Red5
可以用svn下载最新的版本
svncored5
cdred5
编译:
输入ant命令,自动编译
运行
./&
4.简单的配置,使用demo
配置端口:
conf/修改此文件就行
访问,记住如果你配了ip,自带的demo里的地址localhost都要换成你的真实地址
在线录制的例子:
在线播放的例子:
分享例子,类似远程演示:
开源的视频会议系统openmeetings——安装
OpenMeetings是一个开源的视频会议软件。
它是基于OpenLaszlo’s的新流媒体格式和开源的Flash服务器---Red5!
本文以安装openmeetings目前的最新版本openmeetings05Beta5为例,详细说一下我的安装过程。
这一版本的官方安装说明见,不过是英文的。
官方的安装给出了基于多种数据库和不同操作系统的安装方法。
下面仅以基于mysql数据库和windows2003server的安装为例,来说明整个安装过程。
1.到上下载openmeetings的最新版本(目前为止最新是openmeetings05Beta5)。
2.安装mysql数据库,我安装的是mysql-5.0.41-win32的版本,安装后创建一个空的数据库,名为xmlcrm。
3.安装Open-Office-Service,我安装的是。
a.安装完毕后,打开“开始”-〉“程序”->“2.2”-〉Base(若是第一次运行,需要注册并配置,填写注册信息,不要进行数据库配置)
b.软件运行后,点“开始”-〉“运行”-〉cmd,进入“命令提示符”;
c.进入openoffice的安装目录下的program目录,如:
C:
\ProgramFiles\\program
d.输入以下命令使openoffice在手动模式下运行在8100端口上:
-headless-nologo-norestore-accept=socket,host=localhost,port=8100;urp;
e.输入以下命令检查服务是否正常运行:
netstat-anptcp
f.点“回车”后会出现一个列表,当发现列表中有如下一行,说明配置成功:
TCP0.0.0.0:
0LISTENING
4.安装“ImageMagick”,我安装的是ImageMagick-6.3.6-1-Q16-windows-dll
5.安装Ghostscript,我装的是Ghostscript
6.安装SWFTools,我装的是swftools-0.8.1
7.安装jre,我装的是jre1.5.0
8.安装Red5Server,我装的是red5-0.6.3,下载地址 9.将openmeetings的压缩包解压,得到的xmlcrm文件夹放到$RED5-HOME/webapps/目录下。
那么,现在$RED5-HOME/webapps/xmlcrm/就是视频会议系统的主目录($RED5-HOME表示red5的安装目录,接下来我们用$OPENMEETINGS-HOME代表视频会议系统的主目录)
10.到$OPENMEETINGS-HOME/install文件夹下,找到文件,改名为,打开它,修改下列语句:
root
jdbc:
11.重新启动red5,打开浏览器,会出现图1的画面,点击“continuewithSTEP1”,出现图2的画面;
12.将图2的所有信息填写完整后,点击“senden”,等待几分钟的时间(因为此时要执行安装过程,主要是要向数据库中创建好多表,你可以到$RED5-HOME/log目录下找到文件查看安装记录,以确定安装过程是否正常),若最后出现图3的画面,则表示安装成功,点击“EntertheApplication”进入系统。
图1
图2
图3
转载请说明出处。
谢谢。
关于red5——开源的Flash流媒体服务器red5简介
在介绍RED5之前,有必要先介绍一下FlashMediaServer。
FlashMediaServer,简称FMS,以前也叫FlashCommunicationServer(FCS),是Flash大家庭里的一员,被称为是目前开发Web音视频应用程序(比如,视频聊天室、视频会议系统、播客系统、音视频留言等等)的最方便最快捷的解决方案。
也在web应用程序开发上有着越来越广泛的应用。
FMS如此的优良功能当然并不是免费提供给广大用户的,4000美金每个点的价格让很多开发人员望而却步。
于是,开源的Red5成为人们的新宠。
Red5是一个采用Java开发开源的Flash流媒体服务器,功能上与fms类似。
它支持:
把音频(MP3)和视频(FLV)转换成播放流;录制客户端播放流(只支持FLV);共享对象;现场直播流发布;远程调用。
Red5使用RSTP作为流媒体传输协议,在其自带的一些示例中演示了在线录制,flash流媒体播放,在线聊天,视频会议等一些基本功能。
Red5的官方网站是red5,它目前正处在研发阶段,现在发布的测试版本为0.6.3,它的最终正式版为,red5研发的进程已列在了官方网站上:
red5/roadmap。
下面介绍几个比较好的学习Red5的网站:
Openred5中文开源社区:
一个red5学习者的博客:
第五动力:
转载请说明出处。
谢谢。