快捷搜索:   nginx

Linux流媒体服务器安装配置图解

一、Helix流媒体简介 随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频 (Audio/Video,简称A/V)等多媒体文件时,基本上只有下载和流式传输两种选择。通常说来,A/V文件占据的存储空间都比较大,在带宽受限的 网络环境中下载可能要耗费数分钟甚至数小时,所以这种处理方法的延迟很大。如果换用流式传输的话,声音、影像、动画等多媒体文件将由专门的流媒体负 责向用户连续、实时地发送,这样用户可以不必等到整个文件全部下载完毕,而只需要经过几秒钟的启动延时就可以了,当这些多媒体数据在客户机上播放时,文件 的剩余部分将继续从流媒体下载。 由于受网络带宽、计算机处理能力和协议规范等方面的限制,要想从Internet上下载大量的音频和视频数据,无论从下载时间和存储空间上来讲都是不太现 实的,而流媒体技术的出现则很好地解决了这一难题。目前实现流媒体传输主要有两种方法:顺序流(progressive streaming)传输和实时流(realtime streaming)传输,它们分别适合于不同的应用场合。l         顺序流传输顺序流传输采用顺序下载的方式进行传输,在下载的同时用户可以在线回放多媒体数 据,但给定时刻只能观看已经下载的部分,不能跳到尚未下载的部分,也不能在传输期间根据网络状况对下载速度进行调整。由于标准的HTTP服务器就可以发送 这种形式的流媒体,而不需要其他特殊协议的支持,因此也常常被称作HTTP流式传输。顺序流式传输比较适合于高质量的多媒体片段,如片头、片尾或者广告 等。l         实时流传输实时流式传输保证媒体信号带宽能够与当前网络状况相匹配,从而使得流媒体数据总 是被实时地传送,因此特别适合于现场事件。实时流传输支持随机访问,即用户可以通过快进或者后退操作来观看前面或者后面的内容。从理论上讲,实时流媒体一 经播放就不会停顿,但事实上仍有可能发生周期性的暂停现象,尤其是在网络状况恶化时更是如此。与顺序流传输不同的是,实时流传输需要用到特定的流媒体服务 器,而且还需要特定网络协议的支持。l         流媒体协议实时传输协议(Real-time Transport Protocol,PRT)是在Internet上处理多媒体数据流的一种网络协议,利用它能够在一对一(unicast,单播)或者一对多 (multicast,多播)的网络环境中实现传流媒体数据的实时传输。RTP通常使用UDP来进行多媒体数据的传输,但如果需要的话可以使用TCP或者 ATM等其它协议,整个RTP协议由两个密切相关的部分组成:RTP数据协议和RTP控制协议。实时流协议(Real Time Streaming Protocol,RTSP)最早由Real Networks和Netscape公司共同提出,它位于RTP和RTCP之上,其目的是希望通过IP网络有效地传输多媒体数据。  目前市场上主流的流媒体技术有三种,分别是RealNetworks公司的RealMedia、Microsoft的Windows Media和Apple公司的QuickTime。这三家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议这三个关键要素在里面。本文就以 Helix Universal Server 11为例介绍如何在Linux下构建流媒体服务器。图-1 是流媒体服务器构架。 图-1 流媒体服务器构架二、理解单播和多播 1 单播 单播是客户端与服务器之间的点到点连接。“点到点”指每个客户端都从服务器接收远程流。只有当客户端发出请求时,才发送单播流。可通过点播或广播向客户端发布单播流。图2是单播示意图。图2 单播示意图 2多播 多播是通过“启用多播网络”传递的内容流;网络中的所有客户端共享同一流。以这种方式将流媒体内容转化为流的最大好处是可以节省网络带宽。通过将流媒体服 务器到网络的每一部分,将多播扩展到网络中没有启动多播的区域,这称为服务器分发。作为来自服务器的多播的一部分,可以分发该多播的单一的流给网络上 其他部分上别的流媒体服务器。服务器随即通过单播或多播提供流给那些网络部分,这称为“再分发”。通过将服务器连接起来,可以克服路由器不允许使用多播的 问题。图3是多播示意图图3多播示意图 三、安装、启动和停止Helix服务器 1 软件的获取Helix Server是RealNetworks公司最新的流媒体服务平台,这个系统和微软的Window Media System不同,它并不是免费的,但在RealNetworks的网站(http://www.real.com ),还是提供有免费使用的Helix,不过有功能或时间上的限制。 这里笔者选用的是Helix Server Unlimited v11.0.1.1884 For Linux 。2 软件安装 chmod +x helix-server-retail-11.01-rhel4-setup.bin./ helix-server-retail-11.01-rhel4-setup.binExtracting files for Helix installation........................Welcome to the Helix Server 11.0 (11.0.1.1884) Setup for UNIXSetup will help you get Helix Server running on your computer.[ Press [Enter] to continue... ]#这里按回车继续#If a Helix Server license key file has been sent to you,please enter its directory path below. If you have notreceived a Helix Server license key file, then this serverWILL NOT OPERATE until a license key file is placed inthe server's License directory. Please obtain a freeBasic Helix Server license or purchase a commercial licensefrom our website at http://www.real.com/. If you needfurther assistance, please visit our on-line support areaat http://service.real.com/.License Key File: []: 这是要许可证,可以先放下,等安装完再将许可证文件放入Installation and use of Helix Server requiresacceptance of the following terms and conditions:Press [Enter] to display the license text...按回车继续显示协议文本,此处略过……Choose "Accept" to accept the terms of thislicense agreement and continue with Helix Server setup.If you do not accept these terms, enter "No"and installation of Helix Server will be cancelled.I accept the above license: [Accept]:#此处回车默认即可Enter the complete path to the directory where you wantHelix Server to be installed. You must specify the fullpathname of the directory and have write privileges tothe chosen directory.Directory: [/root/helixserver]: /usr/helixserver# 更改安装路径Please enter a username and password that you will useto access the web-based Helix Server Administrator and monitor.Username []:# 设置远程管理用户名Username []:Password []:# 设置密码 Confirm Password []:#重新确认密码Please enter a port on which Helix Server will listen forRTSP connections. These connections have URLs that beginwith "rtsp://"Port [554]:#此处回车默认即可  Please enter a port on which Helix Server will listen forHTTP connections. These connections have URLs that beginwith "http://"Port [80]:8080#设置http传输端口,为避免和apache冲突,建议更改 Please enter a port on which Helix Server will listen forMMS connections. These connections have URLs that beginwith "mms://"Port [1755]:# 此处回车默认即可Helix Server will listen for Administrator requests on theport shown. This port has been initialized to a random valuefor security. Please verify now that this pre-assigned portwill not interfere with ports already in use on your system;you can change it if necessary.Port [11012]:11111#更改远程管理访问的端口,系统默认的 You have selected the following Helix Server configuration:Admin User/Password: traveller2/****Encoder User/Password: traveller2/****Monitor Password: ****RTSP Port: 554HTTP Port: 8080MMS Port: 1755Admin Port: 11111Destination: /usr/helixserverEnter [F]inish to begin copying files, or [P]revious to goback to the previous prompts: [F]:#如果以上设置你没意见,此处回车默认即可,否则按P重新设置 Copying Helix Server files....Helix Server installation is complete.If at any time you should require technicalassistance, please visit our on-line support areaat http://service.real.com/.Cleaning up installation files...Done.# 安装完成3 启动Helix流媒体服务器(1)启动服务器首先进入安装目录。使用命令在后台启动:Bin/rmserver rmserver.cfg &启动过程可以看到服务器版本和系统平台的信息,如下:./Bin/rmserver rmserver.cfgHelix Server (c) 1995-2005 RealNetworks, Inc. All rights reserved.Version:   Helix Server 11.0 (11.0.1.1884) (Build 74277/5688)Platform: linux-rhel4-i686Using Config File: rmserver.cfgLinux kernel version 2.6.18-8.el5 detected [glibc 2.5/NPTL 2.5]Starting PID 2727 TID 3086657232/2727, procnum 0 (controller)Creating Server Space...Server has allocated 256 megabytes of memoryStarting TID 3084909440/2729, procnum 1 (timer)Calibrating timers...Interval timer enabled (10ms resolution).Starting TID 3082812288/2730, procnum 2 (core)Starting Helix Server 11.0 Core...1 CPU Detected...Testing File Descriptors...Setting per-process descriptor capacity to 672(1003), 21...Testing Mutex...(401.61 ops/usec)Testing AtomicOps...(33.81 ops/usec)I: Loading Plugins from /root/vw/Plugins...I: slicensepln.so   0xcb1ec0 RealNetworks Licensing Plugin…… (2)监控服务器的进程可以使用ps命令监控流媒体服务器的运行进程#ps -ef|grep rmserverroot      3765 3655 0 15:13 pts/3    00:00:00 ./Bin/rmserver rmserver.cfgroot      3766 3765 1 15:13 ?        00:00:02 ./Bin/rmserver rmserver.cfgroot      3767 3765 0 15:13 ?        00:00:00 ./Bin/rmserver rmserver.cfgroot      3859 3818 0 15:15 pts/4    00:00:00 grep rmserver说明:说明其中PID为3765是主进程,其他两个3766和3767是子进程。(3)监控端口可以使用命令监控流媒体服务器端口运行情况:# netstat -ntulp | grep rmservertcp0 0 :::9090 :::*LISTEN 3766/rmservertcp0 0 :::7077 :::*LISTEN 3766/rmservertcp0 0 :::7878 :::*LISTEN 3766/rmservertcp0 0 :::4040 :::*LISTEN 3766/rmservertcp0 0 :::554 :::*LISTEN 3766/rmservertcp0 0 :::14170:::*LISTEN 3766/rmservertcp0 0 :::82   :::*LISTEN 3766/rmservertcp0 0 :::1755 :::*LISTEN 3766/rmserverudp0 0 0.0.0.0:98750.0.0.0:*   3766/rmserverudp0 0 0.0.0.0:32820   0.0.0.0:*   3766/rmserverudp0 0 0.0.0.0:17550.0.0.0:*说明:14170 即远程服务器管理端口。(4)测试Helix服务器 推荐使用realone for Linux,实际上是RealPlayer在Linux上的克隆,甚至从性能上超过了RealPlayer。它支持相当多的视频、音频和图象格式,例 如:SMIL 2.0, Ogg Vorbis, H.263 video, JPEG, GIF, PNG, MP3, AMR narrow band, AMR wide band, RA8, sipro, RV7, RV8, RV9, RV10, H263+, 3GPP rel5 SMIL 2.0等等。使用起来和熟悉的RealPlayer没有什么不同。官方主页:http://www.real.com/ ,用RealOne Player可欣赏网上在线音频和视频资料。主要功能包括:带有目标按纽,只需单击鼠标就可收听新闻和娱乐资讯;近乎CD一样的音频效果(只在 28.8kbps或更快的连接速度情况下)全屏播放图象功能(只适用于高带宽连接情况)。其他功能包括:内容频道,自动升级功能,SmartStream 技术消除了再次缓冲,查找媒介链接,支持MP3格式等。RealPlayer 8.0能精确地指向你所要的A/V程序,而且功能有所更新,包括内置Real.com媒体向导,新加入了“调台器”,能从2500个互联网在线电台中轻松 找到你最喜欢的节目,给你全新的3D音效和视觉感受等。 安装后在播放器的地址栏输入Helix服务器的URL例如:rtsp://192.168.1.2/real9vedio.rm 。其中rtsp表示连接Helix服务器使用RTSP应用级协议,192.168.1.2是Helix服务器IP地址,当然也可以使用主机名称。如图-4 。图-4 打开位置图-6 测试文件在播放 使用方法:RealONE for Linux有一个主播放窗口,在文件选单中,分别有Open Location...和Open File...项,用这两项可打开要欣赏的文件。工具选单是RealONE最为庞大的选单,包含有很多功能如图-7。图-7 Realone 工具选项 注意事项:使用Realone全屏播放不过效果要差一些。建议传输率小于200Kbps的RM视频文件,就不要使用全屏模式播放。使用快捷键 “Ctrl+B”可以快速在原始大小和全屏之间自如切换。如果配合其他Linux流媒体工具使用,可将视频文件或VCD转换为RM格式文件保存。这样不但 可以减小文件的容量,而且还可以自由编排、剪辑、制作DV。(5)停止Helix服务器工作 由于Helix服务器没有提供服务器停止命令,所以只能通过使用传统的“Kill”来“杀掉服务器的进程”,使用命令:#kill ‘cat ./Logs/rmserver.pid’(6)系统启动时自动加载Helix服务器 如果想在启动Linux服务器时自动加载Helix服务。方法如下:开始菜单-首选项-更多首选项-会话-启动程序-增加-启动命令,右边的浏览指定确定。
顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论