西安邮电学院
软件开发论文
基于RealSystem的远程教学系统
Remote Teaching System Based On RealSystem
工具选择部分
系别:计算机系
专业:计算机电子信息科学与技术
班级:电科0101
开发者姓名: 徐兆元
指导教师: 朱辉
起止时间:2003年10月至XX月
目录
一. Helix Server的配置
1、Helix Server的获取
2、安装Helix Server
3、管理Helix Server
4、Helix Server的启动参数
二. Helix Proceder的配置
1.简介及安装
2.基本使用
3 .关于rm文件的质量与其它
三. RealOne Player的使用
1.RealOne的安装
2.在本项目中的使用
一.Helix Server的使用
1、Helix Server的获取
Helix Server是RealNetworks公司最新的流媒体服务平台,这个系统和微软的Window Media System不同,它并不是免费的,但在RealNetworks的网站(http://www.real.com),还是提供有免费使用的Helix,不过有功能或时间上的限制。
首先,用浏览器登陆RealNetworks的主页,在页面最下方,有一个RealNetworks.com Free Products 的项目,单击“Download Today!”,就进入了Helix Producer和Helix Server的下载页面。我们选择Helix Server,进入Helix Universal Server的免费版本的下载页面,在这里有三个版本可供选择,分别为“Free 30 day Helix Universal Evaluation Server”、“Free 30 day Helix Universal Evaluation Gateway Server”和“Free 12 month Helix Universal Basic Server”,我们使用的一般是普通的Server版,所以可以根据您的需要选择Evaluation Server或者Basic Server,这两个的区别是:Basic版,使用期限12个月,只提供有限功能,支持 64000个流,但却有总带宽 1Mbps 的限制;Evaluation版,提供所有功能,但只能够使用三十天,并且只支持 10个流,不过带宽不受限制。我根据需要下载了Evaluation版的Helix Server,若是企业用户使用Real Media系统,建议购买其正式版本。
单击“Continue”后进入一个表单填写页面,根据要求填写简单的表单以后,就可以下载Helix Server了,同时,一个免费的试用授权文件(License)将发送到您填写的EMAIL信箱中。
2、安装Helix Server
当您下载Helix Server并从邮箱中取得授权文件(.lic文件)后,就可以开始安装Helix Server了。
安装过程非常简单,启动安装程序后,选取好授权文件,按照提示,依次设置好管理的用户名和密码,以及各个传输协议的端口号即可。这里特别提醒大家,Helix Server的端口设置容易跟系统起冲突,特别是http和mms协议端口,
若是您的系统中安装有IIS(默认端口80)和Windows Media Services(默认单播端口1755,Web管理端口8080),为避免冲突,请将这两个端口改成其它的数值。
您还可以在最后一步选择Helix Server作为NT Services,这样的话,Real Media服务器就成为系统的一项服务。
3、管理Helix Server
安装结束后,请点击“开始-程序-Helix Server-Helix Server”来启动服务器,若是安装时选择了作为一项NT Services,则进入“开始-程序-控制面板-管理工具-服务”,找到Helix Server,点击右键,选择启动,此时,我们的流媒体服务器就启动完毕,就可以让它承担广播与直播的重任。
然后再依次选取“开始-程序-Helix Server-Helix Server Administrator”,在弹出的IE窗口中输入验证的用于名和密码(安装时设置的)就进入管理页面。
您也可以直接在远程计算机中输入http://Helix Server IP地址:Helix Server Admin Port/admin/index.html进行远程管理。下面就让我们了解一下此管理页面中各项功能的设置。
1.3.1 Server Setup
首先设置的是Ports(端口),您可以在这里更改所有Helix Server的端口数值,以免系统端口出现冲突,大家都看到了,Helix Server中有一个mms端口,这意味着它开始支持Microsoft的格式,一个服务器可以用作两个了:)。
下一项设置比较重要,叫做IP Binding(IP绑定),它可以绑定具有多网卡或多IP的服务器,如果我们要通过互联网IP对外提供流媒体服务,请在IP Address中增加“0.0.0.0”的IP,否则别人无法通过Internet访问我们的服务器。
此处“0.0.0.0”的IP表示的是绑定当前所在计算机的所有IP地址。
以下的MIME Types、Connection Control、Redundant Servers对个人用户并不重要,并且比较简单,大家根据需要参照Help进行设置即可。倒是再往下的Mount Points对于内容的设置很重要,它直接决定内容存放的位置。在这个窗口中,您可以编辑:Edit Description(编辑加载点的描述)、Mount Point(加载点的路径)、Base Path(加载点所在的主目录)、Base Path Location(加载点是位于本地还时网络)以及是否Cacheable by Caching Subscribers(开始加载点的缓存)。
图中我的加载点路径为“/”,加载点所在目录为“F:/Program Files/Real/Helix Server/Content”,如果这是我将一个名字为“1.rm”的文件放入“F:/Program Files/Real/Helix Server/Content”,就可以直接的RealOne Player中输入“rtsp://IP地址:端口号/1.rm”进行网络访问了(端口号可以不输入,rtsp也可以使用pnm)。
再往下的URL Aliasing(别名指向)、HTTP Delivery(编辑通过http访问的虚拟目录)、Cache Directives(Cache管理)、Shared Licensing(共享Licensing,用于多个服务器间协同工作)对我们个人用户来说需求不是很大,所以还是请大家按照默认或参照Help进行设置。
Server Setup的最后一个是Media Sample,您可以在这里观看Helix Server支持的所有格式的流媒体演示,并用来测试服务器是否在正常工作。值得一提的是,最新版的Helix Server已经支持包括RM、FLASH、RP/RT、MPEG-1、MPEG-4、QT、ASF/WMV/WMA等在内的多种文件格式,大有一统流媒体服务器端的气概。
1.3.2. Security
这是Helix Server的安全设置。第一项是Access Control,你可以在左边的规则中添加,定义允许权限,IP地址、子网掩码、特定端口等各种选项,感觉比一般的防火墙功能还要强大,呵呵。
定义完Access Control还觉得不过瘾是不?那就跟我来到User Database和Authentication,这两个是有关用户认证以及用户认证所使用的数据库的。Helix Server 支持多种数据库类型的数据文件,包括Flat File/ ODBC/ mSQL/ RN5 DB Wrapper 类型的数据库,您可以选择自己所需要的。在Authentication页面中可以添加用户和组,分配用户名和密码,它们再配合Commerce中的传输选项,就可以实现对特定的用户提供特定的服务,您可以向用户收费了:)。
由于我们以后要进行网络直播的广播,所以请在Authentication窗口中选择“SecureRBSEncoder”,再点击下面的“Add a User to Realm”,在出现的弹出窗口中填上您给编码人员分配的用户名和密码。
1.3.3. Logging & Monitoring
这里都是Helix Server的监控功能,没什么好说的,不过您看我得Server Monitor是不是很酷?
但要看到这样的界面,你还要去http://java.sun.com/getjava/download.html下载一个java的虚拟机来。
1.3.4. Broadcasting
这是Helix Server有关广播的管理,第一项当然是Real自己的格式,支持Helix Producer 9.0和Real Producer 8.5以及更老的版本。
向下竟然是QT & RTP Encoding和Windows Media Encoding,ReanlNetworks公司真够厉害,经过简单设置后,就可以直接接收Apple和Microsoft的编码格式,这次一个服务器真是能够当作三个用了。
下面的Live Archiving非常实用,当设置了路径和名称,并启用此功能后,服务器会监测当前上传的直播流,如果有一致的,则启动录制功能,保存到服务器上的一个特定目录,供以后点播使用,在这里也可以规定录制的时间。
此项最后的Broadcast Redundancy能够在某个直播流出现故障时,切换到另外一个正常流上面,这点设计就比Windows Media Services 好上许多,因为在Windows Media Services中,如果有直播流出现问题,就等于服务器停机了。
1.3.5. 其它
再往下的设置项目对于个人来说就不是很常用了,都是冗余与广告的项目,请大家仔细阅读Help文件来解决。不过还有一个项目要提一下,那就是Content Management下面的Content Browsing,进入这个窗口后,您可以选择加载点,并点击下面的Browse Content来查看当前服务器的流媒体文件。
4.Helix Server 的启动参数
Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.
C:/>"D:/Helix Server/Bin/rmserver.exe" "d:/Helix Server/rmserver.cfg"
Helix Server (c) 1995-2002 RealNetworks, Inc. All rights reserved.
Version: Helix Server 9.0 (9.0.2.766)
Platform: win32
Using Config File: d:/Helix Server/rmserver.cfg //加载配置文件
Creating Server Space... //建立空间
Starting TID 1460, procnum 1 (timer) //开启1460 线程
Starting TID 1668, procnum 2 (rmcore) //开启1668线程
Starting Helix Server 9.0 Core... //启动Helix Server
Loading Helix Server License Files... //加载服务器证书
1 CPU Detected... //1个处理器被检测
Testing Mutex...(0.00 ops/usec) //测试..
Testing AtomicOps...(0.00 ops/usec) //测试..
I: Loading Plugins from d:/Helix Server/Plugins... //加载插件
I: admi3260.dll 02751000 RealNetworks Admin File System
I: adta3260.dll 027B1000 RealNetworks Ad Insertion Tag Replacement Plugin
I: allo3260.dll 027D1220 RealNetworks Basic Allowance Plugin
I: arch3260.dll 027E1230 RealNetworks Live Archiver Plugin
I: asfw3260.dll 02832C50 RealNetworks Active Stream Format Version 1 Plugin
I: asnc3260.dll 02841040 RealNetworks Network Optimized File System
I: asxp3260.dll 02851000 RealNetworks Asxgen File System
I: audp3260.dll 61651000 RealNetworks AU Renderer Plugin
I: audp3260.dll 61651000 RealNetworks PCM Renderer Plugin
I: audp3260.dll 61651000 RealNetworks AU File Format Plugin
I: audp3260.dll 61651000 RealNetworks WAVE File Format Plugin
I: audp3260.dll 61651000 RealNetworks AIFF File Format Plugin
I: audp3260.dll 61651000 RealNetworks DVI4 Renderer Plugin
I: audp3260.dll 61651000 RealNetworks ACM Renderer Plugin
I: auth3260.dll 60F11000 RealNetworks Authentication Manager
I: basc3260.dll 60F31000 RealNetworks Basic Authenticator
I: bdst3260.dll 02861000 RealNetworks Broadcast Distribution Plugin
I: brcv3260.dll 028811C0 RealNetworks Broadcast Reception Plugin
I: cdad3260.dll 028B1000 RealNetworks Content Distribution Advise Plugin
I: cdis3290.dll 028C1000 RealNetworks Content Distribution Plugin
I: cssp3260.dll 028D1000 RealNetworks License Subscriber Plugin
I: dbmg3260.dll 028E1000 RealNetworks Database Manager
I: dbwr3260.dll 028F13E0 RealNetworks 5.0 Database Wrapper
I: dlic3260.dll 02901290 RealNetworks License Publisher Plugin
I: encf3260.dll 02921000 Encoder Administration File System Plug-in
I: enco3260.dll 02934240 RealNetworks Encoder Broadcast Plugin
I: http3260.dll 60CF1000 RealNetworks HTTP File System with CHTTP Support
I: http3260.dll 60CF1000 RealNetworks RFC 2397 Data Scheme File System
I: imgf3260.dll 02981000 Progressive Networks JPEG File Format Plugin
I: imgf3260.dll 02981000 Progressive Networks GIF File Format Plugin
I: imgf3260.dll 02981000 Progressive Networks PNG File Format Plugin
I: imgf3260.dll 02981000 Progressive Networks RealPix Format Plugin
I: imgf3260.dll 02981000 Progressive Networks RealPix JPEG File Format Code
c Plugin
I: imgf3260.dll 02981000 Progressive Networks RealPix GIF File Format Codec
Plugin
I: imgf3260.dll 02981000 Progressive Networks RealPix PNG File Format Codec
Plugin
I: incl3260.dll 029C1000 RealNetworks Include TagHandler
I: isph3260.dll 029D1000 RealNetworks ISP hosting plugin
I: liv33260.dll 029E1060 RealNetworks Live Broadcast Plugin
I: logp3260.dll 02A01000 RealNetworks Logging Plugin
I: meif3260.dll 02A11000 RealNetworks Media Export File Format Plugin
I: meip3260.dll 02A26BB0 RealNetworks Media Export Interface Plugin
I: miip3260.dll 02A41000 RealNetworks Media Import Plugin
I: mp3f3260.dll 61A11000 RealNetworks MP3 File Format Plugin
I: mpgf3260.dll 63211000 RealNetworks MPEG File Format Plugin
I: ntau3260.dll 60EF1000 RealNetworks NTLM Authenticator
I: ntlo3260.dll 02A81000 RealNetworks NT Logger
I: perf3260.dll 100014C0 RealNetworks RMA Performance Monitor
I: plus3260.dll 60DB1590 RealNetworks PlusURL File Format Plugin
I: pply3260.dll 02A91070 RealNetworks Scalable Multicast Plugin
I: ppva3260.dll 02AB1200 RealNetworks Pay Per View Allowance Plugin
I: ppvb3260.dll 02AC1420 RealNetworks FlatFile Database Plugin
I: ppvo3260.dll 02AD1360 RealNetworks ODBC 3.0 PPV Database Plugin
I: pxad3260.dll 02AE1150 RealNetworks RealPix Adserving File Format Plugin
I: qtbc3260.dll 02B01000 QuickTime Live Broadcast Plugin
I: qtff3260.dll 02B1C2C0 RealNetworks QuickTime File Format Plugin
I: ramp3260.dll 02B31000 RealNetworks Ramgen File System
I: redb3260.dll 02B418A0 RealSystem Broadcast Redundancy Plugin
I: rmff3260.dll 60D41000 RealNetworks RealMedia File Format Plugin
I: rn5a3260.dll 60F51000 RealNetworks RN5 Authenticator
I: rnca3260.dll 02B51050 RealNetworks Cache Plugin
I: rtff3260.dll 61611000 RealNetworks RealText File Format Plugin
I: sdpp3260.dll 60DD1000 RealNetworks SDP Stream Description Plugin
I: shel3260.dll 02B711C0 RealNetworks Shell File System
I: smlf3260.dll 60E11000 RealNetworks SMIL File Format Plugin
I: smlg3260.dll 02B810A0 RealNetworks SMIL Generation File System
I: smon3260.dll 02BA31C0 RealNetworks System Monitor
I: smpl3260.dll 60CD1000 RealNetworks Local File System
I: swff3260.dll 612D37F0 RealNetworks File Format Plugin for Macromedia Fla
sh 4
I: tagf3260.dll 02BB1000 RealNetworks XMLTagFileSystem
I: tmpl3260.dll 02BC1000 RealNetworks Dynamic Logging Plugin
I: vidf3260.dll 02BD1000 RealNetworks AVI File Format Plugin
I: vivf3260.dll 02BE1430 VivoActive File Format Plugin
I: vsrc3260.dll 630610F0 RealNetworks View Source Tag Replacement Plugin
I: vsrc3260.dll 630610F0 RealNetworks View Source Allowance Plugin
I: vsrc3260.dll 630610F0 RealNetworks View Source File System
I: wmmc3260.dll 02BF1000 Windows Media Multicast Plug-in
I: wmsr3260.dll 02C01000 WindowsMedia Live Broadcast Source Plugin
I: xmlc3260.dll 02C12FB0 RealNetworks XML Configuration Plugin
Starting TID 1500, procnum 3 (rmplug)
Starting TID 1688, procnum 4 (rmplug)
Starting TID 1648, procnum 5 (rmplug)
Starting TID 1464, procnum 6 (rmplug)
Starting TID 768, procnum 7 (rmplug)
Starting TID 1588, procnum 8 (rmplug)
Starting TID 1448, procnum 9 (rmplug)
Starting TID 1428, procnum 10 (rmplug)
Starting TID 1488, procnum 11 (rmplug)
Starting TID 1424, procnum 12 (rmplug)
Starting TID 1632, procnum 13 (rmplug)
Starting TID 1176, procnum 14 (rmplug)
Starting TID 716, procnum 15 (rmplug)
Starting TID 1432, procnum 16 (rmplug)
Starting TID 1604, procnum 17 (rmplug)
Starting TID 272, procnum 18 (rmplug)
Starting TID 1640, procnum 19 (rmplug)
Starting TID 280, procnum 20 (rmplug)
Starting TID 1620, procnum 21 (rmplug)
Starting TID 1112, procnum 22 (rmplug)
Starting TID 1128, procnum 23 (rmplug)
Starting TID 500, procnum 24 (rmplug)
Starting TID 1400, procnum 25 (memreap)
Starting TID 1672, procnum 26 (streamer)
A: A configuration was found for broadcast distribution, but this server is not
licensed for broadcast distribution. //配置中有直播选项,但此服务器的证书不许广播
* Heartbeat Failure 1 (Step 3)
-------------------------------------------------------------------------------
*** Helix Server Heartbeat Failure Report
When: 19-Oct-02 16:05:55
Environment: win32, , 9.0.2.766
* Heartbeat Failure 2 (Step 3)
-------------------------------------------------------------------------------
*** Helix Server Heartbeat Failure Report
When: 19-Oct-02 16:06:18
Environment: win32, , 9.0.2.766 //报告服务器允许的状态及请求连接
二.Helix Proceder的配置
1.简介及安装
有了Helix Server,还要有给Server提供节目源的Helix Producer,这是RealNetworks最新的编码器。 安装过程很简单在此不赘述.
2.基本使用
3.2.1 创建新任务
选择菜单“File-New Job”来创建一个新任务。Helix Producer通过任务来组织所压缩的内容,您可以创建任务,打开已有任务和保存任务,当同时进行多个任务时,可以在下面的任务列表中查看切换任务.
3.2.2设置输入对象
不用说您都可以看出来,Helix Producer上面那两个窗口一个表示输入,一个表示输出。
左边的输入窗口中您可以选择输入的源是文件分为两类:
一类为(Input File),即是本地文件
另一类为(Devices),若是您有视频捕捉卡或电视卡,并且进行实况直播,就请选择设备。另外,若是选择设备方式,你还可以在下面的Duration中设置录制多长时间,做到无人值守的限时直播。
3.2.3 设置输出对象
Helix Producer生成的rm格式流媒体文件能够输出成文件或直接输出到流媒体服务器,并且可以同时输出成多个文件或同时向多台服务器输出。
(1)输出成文件
实际上,选择了输入文件后,Helix Producer会自动在输入文件的同一目录下建立一个同名的文件,只是更换扩展名为rm或者rmvb(最新的Real Video格式)。您可以双击“Destination”中的图标。
或者点击
来编辑此文件的存放目录。我建议将其放在您所定义Helix Server某一个加载点的目录中,这样观众可以直接播放,而不需要再将文件拷贝到加载点目录以及创建新的加载点。
(2)输出到服务器
在输出窗口中的“Destination”中单击 图标,就会弹出Server Destination(服务器目的地)设置对话框,在其中输入Helix Server的地址、端口以及我们刚才在Helix Server中Authentication窗口下设置的“SecureRBSEncoder”用户密码以及其它信息,就可以向服务器发布了。下面是具体的参数设置.
图中各个项目的意义如下:
- Destination name:目的地名字,起一个好听的就是了,爱谁谁;
- Stream name:流文件名字,用来直播的,大家一般都爱用live.rm,表示鲜活,哈哈;
- Broadcast method:广播方法。选择哪个选项和服务器有关,由于我们使用的是HelixServer,用默认的Push,Account-Based Login(Helix server)就行,如果您使用的是Real server 8及其以前的产品,那么就用Legacy Push(8.x,7.x,G2);
- Server Address:服务器地址,输入您服务器的地址就是,本地的可以输入如192.168.0.1的,若是远程的,输入远程服务器地址即可;
- Path:路径,看起来是可选的,一般不要填就是了;
- Port:端口,默认值是80,实际上就是我们Helix Server中的http端口,我安装时为避免冲突选用了1083,这里当然就填写1083了;
- Username/Password:用户名和密码,即是在helix Server中设置的。
完成这些操作后,我们可以点击最上面的Templates按钮,选择Add to List,将它保存程模板,免得以后用时再重新设置了。
单击“OK”后,再点击“Encode”,您的节目就开始同时压缩文件并进行直播了。这是,我们可以再RealOne Player中输入“rtsp://IP地址/broadcast/live.rm”进行访问,我的就是“rtsp://202.117.129.8 /broadcast/live.rm”
其中,“broadcast”是一个特定的装载点,专门用来进行直播。嘿嘿,截至目前,我们的Real Media 流媒体广播服务器在不经意间已经建设完成了。
3 .关于rm文件的质量与其它
在“Destination”的图中最上面有三个按钮,依次是“Audiences(观众设置)”、“Video Filters(视频过滤)”和“Clip Information(剪辑信息)”,它们都是非常有用的选项。
Audiences:单击Audiences按钮后,会弹出一个设置窗口,在这个窗口内,您可以调节多媒体流的各种编码信息。
最上面是编码设置,分别为Audio Mode(音频模式)、Video Mode(视频模式)、Video Codec(视频编码器),单选框中是“Use high quality resampler for audio(使用高质量声音取样)”、“2-pass video encoding”、“resize video”。这些都是涉及最后生成的rm流媒体文件质量和容量的参数。
如果是新闻、会议之类以谈话为主要内容的,在Audio Mode中请选择Voice,若是音乐之类的请用music;Video Mode按照默认的“Normal Motion Video”;Video Codec强烈建议使用默认的“RealVideo 9”,据官方说法,其视频质量比RealVideo 8提高30%,比RealVideo G2提高50%,在500kbps下就能获得相当于dvd品质的效果(通过实际使用,效果非常好);“Use high quality resampler for audio”按照默认是选择的,也能够提高一点声音的质量;Resize Video,顾名思义,就是改变编码后输出的文件的屏幕大小;2-pass video encoding,叫做双程视频编码,如果选了这个选项,Helix Producer会首先将文件分析一遍,然后再选择最合适的压缩方式,也就是说压缩一个文件需要两遍!不过质量是提高了,建议不直播并且有大量时间时使用:)。
此窗口的下半部分是Audiences Selection(观众选择),可以在里面选择压缩使用的速率,一般用256K的速率效果就比较不错了,当然,您还可以一次选择多个速率,当进行播放时,服务器和浏览器会根据网络的实际情况来确定到底用什么速度来传输,这就是鼎鼎大名的智能流(Surestream)技术,不过选取多个速率肯定会加大一点文件的容量。
您还可以选择这些预制的模板后点击下面的
图标,具体的调节一下这些模板的质量,找出适合自己的并保存。
Video Filters:这个功能可以截取影片中某一区域的内容进行编码,一般我们设置为Automatic即可,不需要多管;
Clip Information:大家看看图就明白了,这里是一些版权信息,并且还可以调节您的流媒体能够被哪个年龄段的网友观看,分级制度看起来和DVD差不多。
上面都是关于rm质量和信息的讨论,您可能会觉得压缩rm格式需要的时间可真长,那就改用命令行方式吧,只要在安装的过程中选择了添加安装目录到windows的path变量,我们就可以直接在命令行中输入“producer –i 被压缩文件路径和名称 –ad 256k(压缩选用的观众模板)”进行压缩,至于producer命令具体的信息,请在命令行中输入“producer /?”自己研究!当然,您还可以借助于其它的支持批处理的压缩软件进行rm文件的制作。
三. RealOne Player的使用
1.Realone 使用说明,操作技巧,安装方法
请看以下图例
第一步
请下载安装文件,下载解压后可看到三个文件,先运行主安装安装文件
第二步
运行中
第三步
选择默认安装方式Express install,安装简便.名后点:Next
第四步
点:Accept 接受协议,进入下一部.
第五步
安装正进行中
第六步
择该程序支持的文件类型,可以接受默认选项,也可以根据自已的需要选择.然后点:Finish.结束安装
第七步
安装结束后,RealOnePlayer 自动启动.OK了
安装完成后桌面上会有上图这样的图标了
注:如遇打开RealOne出现需要检查更新时,请先点击RealOne上的-工具-检查更新
2.在本项目中的使用
观看直播请在打开中输入IP ADRESS/broadcast/name.rm