您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于Linux的流媒体服务器的配置
基于Linux的流媒体服务器配置第1页共22页基于Linux的流媒体服务器的配置学生姓名:周鹏指导老师:周书仁摘要流媒体(StreamMedia)指在互联网或者局域网中使用流式传输技术的连续时基媒体,如:音频、视频或多媒体文件。流媒体指在网络中使用流式传输技术传送音频、视频和多媒体文件等。Linux作为网络应用的先锋,自然作为流媒体的最佳平台。LAMP(Linux+Apache+MySQL+PHP/Perl/Python)近几年来发展迅速,已经成为Web服务器的事实标准。本课程设计主要是完成在Linux操作系统下流媒体服务器的配置和应用,在课程设计中,系统的开发平台是RedhatLinux11.0。本文详细介绍了在Linux操作系统下实现流媒体服务器的配置过程。关键字:流媒体;Linux;LAMP;服务器;配置AbstractStreamingMedia(Media)referstoStreamintheInternetorLANusingstreamingtechnologycontinuoustimebaseMedia,suchas:audio,videoormultimediafiles.Streamingmediarefersinusedinnetworkstreamingaudio,videoandtechnologytransfermultimediafiles,etc.Linuxasnetworkapplications,naturalasstreamingmediapioneerthebestplatform.Technologies(Linux+IcanwithApache+MySQL+PHP/Perl/Python)inrecentyears,hasbecomearapiddevelopmentWebservercriterionoftruth.ThiscourseisdesignedcompletedinLinuxoperatingsystemmeanmediaserverconfigurationandapplication,inthecurriculumdesign,systemdevelopmentplatformisRedhatLinux11.0.ThispaperintroducesindetailtheLinuxoperatingsystemtorealizethestreamingmediaserverconfigurationprocess.KeyWords:StreamMedia;Linux;LAMP;serve;configuration基于Linux的流媒体服务器配置第2页共22页1引言1.1课程设计的目的随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频(Audio/Video,简称A/V)等多媒体文件时,基本上只有下载和流式传输两种选择。通常说来,A/V文件占据的存储空间都比较大,在带宽受限的网络环境中下载可能要耗费数分钟甚至数小时,所以这种处理方法的延迟很大。如果换用流式传输的话,声音、影像、动画等多媒体文件将由专门的流媒体服务器负责向用户连续、实时地发送,这样用户可以不必等到整个文件全部下载完毕,而只需要经过几秒钟的启动延时就可以了,当这些多媒体数据在客户机上播放时,文件的剩余部分将继续从流媒体服务器下载。由于受网络带宽、计算机处理能力和协议规范等方面的限制,要想从Internet上下载大量的音频和视频数据,无论从下载时间和存储空间上来讲都是不太现实的,而流媒体技术的出现则很好地解决了这一难题。要在Linux操作系统中使用音频、视频、数字图像和其他多媒体工具,必须先配置好流媒体服务器。因此学会配置流媒体服务器,有着非常重要的意义。1.2课程设计的内容本次课程设计主要是研究Linux下流媒体服务器的配置和应用,所以此次课程设计要完成的内容如下:(1)安装HelixServer;(2)配置HelixServer;(3)测试HelixServer。基于Linux的流媒体服务器配置第3页共22页2Linux和流媒体基本知识简介2.1Linux简要介绍简单地说,Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intelx86系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux最早由一位名叫LinusTorvalds的计算机爱好者开发,当时他是芬兰赫尔辛基大学的学生。他的目的是设计一个代替Minix(由一位名叫AndrewTannebaum的计算机教授编写的一个操作系统示范教学程序)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能。Linux以它的高效性和灵活性著称。它能够在个人计算机上实现全部的Unix特性,具有多任务、多用户的能力。Linux可在GNU(“不是UNIX”工程的缩写)公共许可权限下免费获得,是一个符合POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用WindowsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。Linux之所以受到广大计算机爱好者的喜爱,主要原因有两个,一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改和无约束地继续传播。另一个原因是,它具有Unix的全部功能,任何使用Unix操作系统或想要学习Unix操作系统的人都可以从Linux中获益。由于Linux是一套自由软件,用户可以无偿地得到它及其源代码,可以无偿地获得大量的应用程序,而且可以任意地修改和补充它们。这对用户学习、了解Unix操作系统的内核非常有益。学习和使用Linux,能为用户节省一笔可观的资金。Linux是目前惟一可免费获得的、为PC机平台上的多个用户提供多任务、多进程功能的操作系统,这是人们要使用它的主要原因。就PC机平台而言,Linux提供了比其他任何操作系统都要强大的功能,Linux还可以使用户远离各基于Linux的流媒体服务器配置第4页共22页种商品化软件提供者促销广告的诱惑,再也不用承受每过一段时间就升级的痛苦,因此,可以节省大量用于购买或升级应用程序的资金。Linux不仅为用户提供了强大的操作系统功能,而且还提供了丰富的应用软件。用户不但可以从Internet上下载Linux及其源代码,而且还可以从Internet上下载许多Linux的应用程序。可以说,Linux本身包含的应用程序以及移植到Linux上的应用程序包罗万象,任何一位用户都能从有关Linux的网站上找到适合自己特殊需要的应用程序及其源代码,这样,用户就可以根据自己的需要下载源代码,以便修改和扩充操作系统或应用程序的功能。这对WindowsNT、Windows98、MS-DOS或OS/2等商品化操作系统来说是无法做到的[1]。2.2流媒体基本知识简介流媒体将成为未来互联网应用的主流之一,并将推动互联网整体架构的革新。在网络上传输音频、视频等多媒体信息,目前主要有下载和流式传输两种方案。A/V文件一般都较大,所以需要的存储容量也较大;同时由于网络带宽的限制,下载常常要花数分钟甚至数小时,所以这种处理方法延迟也很大。近年来,为解决文件下载时间过长的问题,适应网络多媒体化的发展趋势,一种新兴技术应运而生,这就是遵守特定网络协议的流媒体技术。流式传输时,声音、影像或动画等时基媒体由音视频服务器向用户计算机的连续、实时传送。用户不必等到整个文件全部下载完毕,而只需经过几秒或十几秒的启动延时即可进行观看。当声音等实时媒体在客户机上播放时,文件的剩余部分将在后台从服务器内继续下载。流式不仅使启动延时成十倍、百倍地缩短,而且不需要太大的缓存容量。流式传输避免了用户必须等待整个文件全部从Internet上下载才能观看的缺点。以宽带为基础,流媒体不仅可以进行单向的视频点播,还能够提供真正互动的视频节目,如互动游戏、三维动画等。目前,流媒体技术在国内应用最多的行业是教育,其次是广电、政府和电信,而企业中应用得较少。目前,流媒体技术在企业里的主要应用包括职工培训、信息发布、产品介绍、远程监控、视频会议和客户服务等。美国“9·11”事件后,为了减少乘机风险,视频会议的应用越来越多。视频会议系统适用于那些有分支机基于Linux的流媒体服务器配置第5页共22页构的企业,或者需要经常和合作伙伴交流的企业。视频会议系统可以明显地提高工作效率。由于受网络带宽、计算机处理能力和协议规范等方面的限制,要想从Internet上下载大量的音频和视频数据,无论从下载时间和存储空间上来讲都是不太现实的,而流媒体技术的出现则很好地解决了这一难题。目前实现流媒体传输主要有两种方法:顺序流(progressivestreaming)传输和实时流(realtimestreaming)传输,它们分别适合于不同的应用场合[2]。(1)顺序流传输顺序流传输采用顺序下载的方式进行传输,在下载的同时用户可以在线回放多媒体数据,但给定时刻只能观看已经下载的部分,不能跳到尚未下载的部分,也不能在传输期间根据网络状况对下载速度进行调整。由于标准的HTTP服务器就可以发送这种形式的流媒体,而不需要其他特殊协议的支持,因此也常常被称作HTTP流式传输。顺序流式传输比较适合于高质量的多媒体片段,如片头、片尾或者广告等。(2)实时流传输实时流式传输保证媒体信号带宽能够与当前网络状况相匹配,从而使得流媒体数据总是被实时地传送,因此特别适合于现场事件。实时流传输支持随机访问,即用户可以通过快进或者后退操作来观看前面或者后面的内容。从理论上讲,实时流媒体一经播放就不会停顿,但事实上仍有可能发生周期性的暂停现象,尤其是在网络状况恶化时更是如此。与顺序流传输不同的是,实时流传输需要用到特定的流媒体服务器,而且还需要特定网络协议的支持[3]。2.3流媒体协议目前,支持流媒体传输的协议主要有:(1)实时传输协议RTP(Real-timeTransportProtocol)用于Internet上针对多媒体数据流的一种传输协议。RTP通常工作在点对点或点对多点的传输情况下,其目的是提供时间信息和实现流同步。RTP通常使用UDP传送数据,但也可工作在ATM或TCP等协议之上。(2)实时传输控制协议RTCP(Real-timeTransportControlProtocol)基于Linux的流媒体服务器配置第6页共22页RTCP和RTP一起提供流量控制和拥塞控制服务。通常RTP和RTCP配合使用,RTP依靠RTCP为传送的数据包提供可靠的传送机制、流量控制和拥塞控制,因而特别适合传送网上的实时数据。(3)实时流协议RTSP(Real-timeStreamingProtocol)它是由RealNetworks和Netscape共同提出的,该协议定义了点对多点应用程序如何有效地通过IP网络传送多媒体数据。(4)资源预留协议RSVP(ResourceReservationProtocol)它是网络控制协议,运行在传输层。由于音视频流对网络的时延比传统数据更敏感,因此在网络中除带宽要求外还需满足其它的条件。在Internet上开发的资源预留协议可以为流媒体的传输预留一部分网络资源,从而保证服务质量(Quos)。2.4流媒体技术目前市场上主流的流媒体技术有三种,分别是RealNetworks公司的RealMedia、Microsoft的WindowsMedia和Apple公司的QuickTime。这三家的技术都有自己的专利算法、专利文件格式甚至专利传输控制协议这三个关键要素在里面。图2-1是流媒体服务器构架。图2-1流
本文标题:基于Linux的流媒体服务器的配置
链接地址:https://www.777doc.com/doc-4920536 .html