一个分享个人学习、开发经验的Blog,http://www.joyphper.net

如何架设流媒体服务器二

posted @ 2010-11-05 23:05 | 阅读:4568 | 评论:0 | 分类: PHP

  三、流媒体服务器硬件准备

  流媒体服务器和网站(Web)服务器一样,要经受许多人的同时访问,相比Web服务器来说,由于多媒体文件需要更强处理能力,其硬件设备应超越一般用于Web的服务器。所以,流媒体服务器最好满足以下硬件条件。

  一颗强劲的“芯”。如果计算机CPU频率太低,处理能力过慢,电脑在被多用户访问时将我们无法进行其他任何操作(相信大家对那些网上视频点播的网站经常当机身有体会,我们和他们建立的是一样的服务器,只是规模小些罢了)。

  大容量内存和硬盘。流媒体的制作和发送是系统资源的黑洞,拥有大容量内存是系统稳定运行的前提;而流媒体文件体积较大,大量的媒体文件需要更多的存储空间。建议内存至少256MB,硬盘80G以上。

  占用系统资源少的声卡。好的声卡有助于CPU占用率的降低,并且对录音的质量有很大影响(用于网上直播),建议使用Creative的SBLive!或SBAudigy、Audigy2系列,由于笔者自己的机器不做服务器(只用来做文章,没钱升级啊),所以只拿普通的集成来演示。

  良好的视频捕捉设备。我们的直播节目源就来源于这块设备,推荐使用Leadtek(丽台)的WinFastTV2000XP豪华版,它接收信号的能力和硬件压缩的能力都是比较出众的(因为笔者没有条件,所以采集设备用了屏幕捕捉,不过使用采集设备的方法是相同的,所以请大家不要见怪)。

  尽量高的带宽。当然是上网速度越快越好,不过我们可以在流媒体服务器中对连接数做一个限制,以免当机。

  当然,上面是建设一个属于自己的流媒体服务网站必须的硬件设备,如果只是和笔者一样,只是想在架设流媒体服务器过程中学习一把,大可在现有机器的基础上大胆测试。

  四、架设流媒体服务器之旅

  准备好了硬件,下面就开始一步步教大家架设自己的流媒体服务器。我将其分为Microsoft公司的WindowsMedia和RealNetworks的RealMedia两大部分,都包括直播与点播服务器的建立,并在最后向大家介绍一下Apple的QuickTime和Nullsoft的流媒体服务器。

  由于Microsoft公司的WindowsMedia点播服务必须建立在Server版的操作系统上,所以笔者选取Windows.NetEnterpriseServer3647作为此次流媒体服务器建立的系统平台。为了比较RealNetworks和Microsoft最新一代流媒体服务器的优劣,笔者采用了它们最新的流媒体系统,以下是笔者使用的具体软件:

  操作系统:Windows.NetEnterpriseServer3647、WindowsXPServicePack1

  流媒体软件:WindowsMediaServices9.0(Windows.NetServer自带)、WindowsMediaEncoder9SeriesReleaseCandidate(由于此软件在.NetServer下运行不正常,故安装在XP中,并且只有此软件安装在XP中)、WindowsMediaEncoder7.1、WindowsMediaPlayer9.0Buildz903、HelixUniversalServer9.01FORWin2k(9.0.2.794)、HelixProducerPlus9.0.1、RealOnePlayer2.0Build6.0.11.853。

  下面,就让我们开始吧!不要走开哦!!!

  WinMedia网上广播服务

  单纯的使用WindowsMediaEncoder这个软件即可实现网上广播服务,不过,借助于WindowsMediaServices,利用WindowsMediaEncoder制作的流媒体文件,我们的网络广播站功能将更为强大。下面,我们将利用WindowsMediaEncoder单独建立广播站,并将其纳入WindowsMediaServices,实现更强大的功能。

  1.安装WindowsMediaServices。

  首先安装Windows2000Server或者Windows.NetServer,然后打开“开始-控制面板-管理工具-管理您的服务器”或“开始-控制面板-添加或删除程序-添加/删除Windows组件”(建议使用第二种),在其中勾取“Web应用程序服务器”,也就是2000Server中的IIS服务器,单击“下一步”进行添加;

  添加IIS完毕后,再次启动添加/删除Windows组件程序,并勾取WindowsMediaService项,单击详细信息,在其中选择“用于Web的WindowsMediaServicesAdministrator”以启动WindowsMediaServices的Web管理功能(2000中可能没有这些选项,只需要安装WindowsMediaServices即可);

  2.安装WindowsMediaEncoder。

  从微软网站下载WindowsMediaEncoder7.1(由于WindowsMediaEncoder9.0无法在.NetServer下工作)进行安装,至此,WindowsMedia服务的服务器和编码器都已经具备;

  3.从“开始-程序-WindowsMedia”启动WindowsMediaEncoder,在出现的向导界面中根据自己的需要选择合适的选项,建议新手“使用新建会话向导广播、捕获或转换文件”,选择后单击确定;

  4.由于进行的是广播,所以在下一个弹出的画面中请选择“在附属设备或计算机屏幕广播实况事件”,这样的选择能够让WindowsMediaEncoder直接进行广播或者将其加入WindowsMediaService服务;

  5.在下一个画面中选择您进行视频或音频捕获的设备,笔者没有视频卡,所以只能选择“屏幕捕获”,有视频卡的朋友请选择您的视频卡;

  6.广播信号必须通过一个有效的端口进行传输,因此必须对它进行设置。WindowsMediaEncoder默认的端口为8080,但由于这个端口经常被其它软件占用,所以建议朋友们单击“查找可用端口”以换成其它随机端口或者直接输入没有被占用的端口。我选择了“3170”端口;

  7.然后就开始选择我们进行广播的流媒体质量,有一个公式您可以参考:流媒体配置文件带宽×最大连接用户数=您的上行带宽(不是下载,是上传)。您如果有2Mbps的上行带宽,选择了100Kbps的配置文件,则允许同时20个观众看到您的广播,由此可见,流媒体服务对带宽的需求是巨大的;

  8.在这个窗口您可以选择将进行广播的流媒体存档,以便于以后观看或者进行点播,若只是作为实况广播服务,并且硬盘空间不大,您可以不选取;

  9.“下一步”后,您可以选择是不是添加微软内置的欢迎、休息和再见文件,我就没要这些东西,谁给微软免费作广告,呵呵;

  10.然后,我们可以给我们的广播节目添加上版权信息,这些信息在播放时,会出现在WindowsMediaPlayer中;

  11.弹出最后一个确认窗口后,我们最终的广播界面就出现了,若是有视频捕捉设备,只要单击“开始”,我们的广播站就运行起来,只要在客户机IE中输入“mms://服务器的:端口值”就会弹出mediaplayer播放电视。如我建立的广播站地址就是“mms://192.168.0.1:3170,这些信息您也可以直接在此界面的连接标签中查看;

  12.若是您和我一样没有视频捕捉设置,或者想向用户播放一段录制好的视频,请点击“会话-属性”(此面板能够对所有设置过的数据进行调整),单击“更改”按钮,在弹出窗口中选择视频右边的下拉框,单击“查找文件”,找到您预先录制好的视频文件(支持asf、wmv、avi、mpg等格式);

  13.再回到广播界面,点击开始,您的文件就可以被网络上的兄弟姐妹看到了,

  若是想添加更多的文件或设备,请在以上窗口单击“更改”旁的“新建”进行添加即可;

  14.您可能觉得到这里我们就大功告成了,实际上远远没有,这只是最基本的直播广播,我们还需要将其加入WindowsMediaServices的广播服务中,以实现更强大的功能。请将你的鼠标指向“开始-控制面板-管理工具-WindowsMediaServices”,打开WindowsMedia管理器(2000Server应该是一个Web界面)。选择左边的服务器后,单击操作菜单中的“添加发布点(向导)”,经历欢迎页面后,会出现发布点命名窗口,在其中输入您愿意使用的名字,我输入的是“SOFTICP.COM_Broadcast”;

  15.在下一个窗口中,将让您选择所要发布的内容类型,如果只是单纯的进行流媒体直播,就选择“编码器(实况流)”,若是想在实况流中加入其它制作好的文件,请选择“播放列表”,若是想建立视频点播服务器,请选择“目录中的文件”。由于我有现成的制作好的文件,所以选择了“播放列表”;

  16.选择完了发布内容的类型,就要选择发布的方案,我们进行的是网络广播的服务,当然要选择“广播发布点”。在接下来的窗口中,我们要选择内容的传递方式,看到了吧,这次我们前面介绍的单播和组播的基本概念起了作用,我们的网络一般不支持组播,所以要选择“单播”;

  17.若是您以前有创建好的播放列表文件(wsx或htm文件),直接在下一个窗口中选择“现有播放列表”,若是没有,请跟我一样,“新建播放列表后进行添加”。在添加窗口中,可以添加文件、编码器的实况流、远程发布点的流媒体、ASP、CGI的动态源等多种媒体,并且还可以添加广告信息以及调整媒体的播放顺序;

  18.完成播放列表的编辑后,点击“下一步”将播放列表保存成文件,并且在下一个窗口中可以选择是否“循环播放”或“无序播放”这些流媒体。再经历几个确认框,您就完成了WindowsMedia流媒体广播服务器的建立,为了快捷,我们就将“完成此向导后启动其它向导”前面的对勾去掉吧!

  19.服务器启动后,您就可以在WindowsMediaPlayer中输入“mms://服务器IP/发布点名称”观看网络广播了。而在WindowsMediaServices的管理器中,我们可以随时监视流媒体的播放情况、添加/删除与调整播放列表、插入广告、发布公告(可以直接生成htm页面)、调整该广播站的属性等操作,并可以随时通过下面的按钮启动与停止广播站以及测试当前流媒体是否正常;

  此图是使用公告向导建立的发布点公告网页,是不是非常方便?

  20.我们还可以通过在浏览器中输入管理器的网址或者直接启动管理工具中的“WindowsMediaServices(Web)”来对整个流媒体服务器进行Web管理以及远程管理,其管理界面与本地管理除了少几个功能外,几乎没有差别。

  远程管理还可以对一个服务器组多台服务器进行管理。

  至此,我们的WindowsMedia网络广播服务器已经完全建设完毕,您已经拥有了一个具有强大功能的网络广播站,是不是觉得不过瘾?因为还有许多优秀的影片想和朋友们共享,并且想让他们能够自由的观赏自己喜欢的节目,不受你广播时间表的限制?那么,跟我来,我们在此基础上再搭建一个WindowsMedia视频点播服务器。

  

 

TAG: php学习 , 流媒体 , 流媒体服务器 , 在线直播服务器

共有0条评论 发表评论>>

点击换一张验证码