免费构建高效的校园流媒体点播系统
2005-04-29贺涛余苗董俊华朱文昌
贺 涛 余 苗 董俊华 朱文昌
校园网建成以后,不少学校积累了大量的音频和视频资源,通过网上邻居共用,没有一套自己的校园流媒体点播系统,师生使用极为不便,而购买校园流媒体点播系统的价格又是学校无法接受的。我参考网上很多介绍,并多次在实践中构建了适合自己的校园流媒体点播系统(后台流媒体服务器核心系统使用Helix server 9.01,内网发布前台系统使用美萍VOD点播系统标准版,外网发布前台系统使用一套ASP影院系统,如笔者的http://www.ycwsx.com/vod/),实现了完全免费和高效。本系统运行两年以来,实现校园同时点播和播放,运行稳定。
构建流媒体服务器硬件环境
首先,我们要明白什么是流媒体,笔者在文章中多次说流媒体,而没有说多媒体,是因为它们是两个不同的概念。流媒体简单来说就是应用流技术在网络上传输的多媒体文件,而流技术就是把连续的影像和声音信息经过压缩处理后放到网站服务器,让用户一边下载一边观看、收听,而不需要等整个压缩文件下载完成的网络传输技术。而传统的校园VOD点播服务器端不仅需要大量的存储系统,同时还要负荷大量的数据传输,导致服务器根本无法进行大规模的点播。我们构建的校园流媒体点播系统,客户端采用浏览器方式进行点播,基本无需维护。由于采用了先进的机群技术,可对大规模的并发点播请求进行分布式处理,使其能适应大规模的点播环境。
其次,我们的100M校园网内部,如果要实现100人同时在线点播,需要什么样的服务器硬件配置呢?目前我的流媒体服务器兼容机配置为:P42.4G/512DDR内存/7200转8M缓存200G×2个IDE硬盘,双电源,多风扇机箱。机房环境要求低温室,因为硬盘发热量很大,要及时散热。
同时,在选择好的服务器上安装Windows 2000服务器版,安装两个以上的网卡,作用在下面会谈到。
一步一步安装流媒体服务器
配置好硬件后,我们要用到Helix server 9.01这款软件。本文以英文版在Windows系统的安装和配置为例,进行详细讲解说明。读者可以在网上查找和下载Helix server 9.01软件。
1.运行Helix流媒体服务软件,以英文版为例进行说明。
2.运行后点击下一步(Next)按钮,会出现需要指定授权文件位置的界面,只要按浏览(Browse)键找到相应位置即可,也可以忽略这一步,安装完成后再把授权文件*.lic复制到安装目录的License子目录下。
3.继续下一步,指定安装的位置,建议仅仅把默认值的C:盘改为D:盘,同时将C:Program Files
RealHelixServer改成D:HelixServer(注意HelixServer中间不能有空格,这个作用下面将会提到)(图1)。
4.设定管理员账号和密码,安装后你要凭此账号进行管理。
5.配置默认的端口,这些端口也可以安装后再进行修改。由于微软加强了流媒体服务方面的关注程度,同时做法也极为霸道,在新的Win 2003系统中,把默认的554、1755等端口强行占据。为了在安装后顺利启动,同时也为能克隆安装好的Helix服务,建议将所有默认端口都加1,其中管理员端口可以选择一个好记的,如笔者选择的是25000。
6.最后按完成(Finish)按钮,完成安装,这样我们的流媒体服务器前期就完成了。
进阶配置流媒体服务器
Helix服务启动后,当连接人数达到一定程度时,往往会发生缓冲现象,严重影响服务质量。但是你会发现发生这类现象时,服务器的CPU使用率、网络带宽消耗和内存占用率都处于极低的水平上,也就是说远远没有发挥服务器的硬件性能。为了能够充分发挥硬件资源的能力,推荐在单服务器上安装多服务,让多个Helix并行服务,这样就能大大地提高服务性能。我的经验是先对整个服务进行全面的配置,如加载点、IP限制等,然后再复制这个配置文件,这样不仅能快速配置其他服务,而且也能保证配置的同步性。具体方法如下:
对首个服务进行全面的配置
进入Win 2000管理工具中的服务中,将Helix Server服务启动。Helix服务启动后,点击桌面上的管理链接,或者在地址栏中按规则输入地址,即可启动管理。进入管理配置,首先加入服务器2个网卡的IP地址,进行IP绑定并重启服务器使之生效。如笔者的IP设置为:对内的192.168.42.251和对外的192.168.42.250,一个对外发布服务,另一个对内发布服务。同时设置电影目录,配置加载点,我把E和F盘对应为电影的2个发布点mov1和mov2,然后保存并重启服务器使之生效。最后你也可设置在线人数和点播流量,保证其他网络服务的工作,如果只对内发布,则没有必要设置。在并发控制中,如果每个允许25人,启动5个服务,那么每台服务器为 25×5=125人(图2和图3)。
我们主要进行校园流媒体点播系统,其他的如用户认证我们就不必配置了,这样经过配置后,如果存在媒体e:mov1电影 01.rm,则播放的连接为rtsp://你的服务器IP:555/mov1/tv/001.rm。如笔者对内的为rtsp://192.168.42.251:555/mov1/tv/001.rm。在实践中我发现,Helix对于asf视频支持不如RM(其中RMVB文件后缀名要改为RM)。到此,全部的配置工作结束。我们要以这个配置好的cfg文件作为模板,克隆其他服务。
安装多个服务,高速克隆Helix Server
⑴进入Win 2000管理工具中的服务中,将Helix
Server服务停止,如果说出现错误,也不要管它,只要显示停止即可。
⑵进入Helix Server安装目录,首先复制上述的配置文件,用文本编辑器(记事本)修改各个端口设置。如果你想让Helix并行服务,那么另存为多个名称不同的配置文件,但服务不是越多越好,2~4个为好。这时CPU占用率为50%~60%,负荷已经很重了,能保持在40%~50%是最好的。
⑶然后运用CMD命令进入Win 2000的DOS下,并转到D:HelixServerin目录下,再运行:rmserver -install:rm1 "D:HelixServer m1.cfg"(这个路径不包含空格,这一点一定要注意,否则后面启动服务不会成功),其中rm1是你命名的服务名称,可以按你的意愿取名。返回消息应该为Successfully installed the rm1 Service。如果想再安装rm2 service、rm3 service和rm4 service,按照同样的方法完成。(同时各个rmx.cfg中的端口不能相同,否则会发生端口冲突,造成无法启动服务)
⑷进入Win 2000管理工具中的服务中,将rm1、rm2、rm3和rm4服务启动,建议启动的顺序为rm1 rm2 rm3 rm4,最后再启动Helix Server,同时将rm1、rm2、rm3和rm4服务的属性修改为自动启动,这样每次重新启动机器,服务都会自动运行。
⑸在这里有人会说他采用http相当不错,笔者一度也曾采用这个办法,结果开始不错,当人数上来后就不行了。且使用者能高速下载,而且一旦稍有缓冲,使用者都开始下载,http不好限制线程,结果更拥挤,加重机器负担,最终还不如流播放。
到这里,我们的校园流媒体点播系统的核心建设已完成了。下面我们就要进行前台的访问的安装和配置了,这样就可以让客户端通过IE访问校园内的流媒体。
安装配置校园流媒体点播系统的访问界面
在这里我们要分两种情况进行配置:让内网用户方便的点播,不要求输入用户名,笔者选用美萍VOD点播系统7.9标准版,下载地址为http://www.mpsoft.net/download.htm,也可在网上找有关它的版本;让外网用户有限制地点播学校发布的视频,访问要输入用户名,你可选用金梅或蚂蚁影院的程序或其他影院系统,这两款软件的下载地址为:
http://www.xia8.com/SoftView/SoftView_1647.html
http://www.xia8.com/SoftView/SoftView_4155.html
http://www.xia8.com/SoftView/SoftView_4352.html
⑴在D盘目录安装美萍VOD点播系统7.9标准版,配置软件中Helix Server的电影目录,将e:mov1加入进去(即在Helix Server中加入的目录)。同时将IP固定为192.168.42.250,这样流媒体服务器网卡便实现数据分流,内外网点播不受影响。
⑵分类加入音视频文件,客户端实现点播。
这样我们的校园流媒体点播系统就建立起来了,如果要向外发布,则利用自己的宽带路由器将端口发布出去,如对外发布为http://192.168.42.250:555,利用ASP影院系统,实现用户点播,这样即安全又高速。
制作流媒体,优化学校音视频资源
学校原有的音视频资源大多为VCD格式,我们可以用RM、RMVB制作软件,将其制成流媒体文件格式。笔者推荐Easy RealMedia这个免费软件,下载地址:http://www.ycwsx.com/web/Soft_Show.asp?SoftID=479,当然,网上有很多这样的软件。总之,我们要将VCD这样大的文件转成小的流媒体文件格式,只有这样,才能节省硬盘空间,高效点播。