流媒体服务器的安装与配置
流媒体服务器主要是用于在网路中传送音频、视频以及其他多媒体文件。流媒体的典型特征是把音频和视频信息压缩后放到网络服务器上,用户可以一边下载一边观看。流媒体技术现在已经应用在很多领域,如视频会议、远程医疗、在线直播等。本章将介绍一系列的流媒体知识。
本章要点
□ 流媒体服务器的介绍
□ 流媒体服务器的特点
□ 配置服务器
□ 流媒体管理器
流媒体服务器的介绍
随着网络技术的发展,流媒体技术现今已经被应用到很多领域,尤其是最近几年发展非常迅速。而流媒体服务器又是整个流媒体应用的核心系统,是运营商向用户提供视频服务的关键平台,它的主要功能是对媒体内容进行采集、缓存、调度和传输播放。流媒体应用系统的主要性能体现都取决于流媒体服务器的性能和服务质量。因此,流媒体服务器是流媒体应用系统的基础,也是其最主要的组成部分。本章主要向读者介绍流媒体服务器的特点、支持流媒体服务器的传输协议以及服务器的配置。
流媒体服务器的特点
现如今流媒体对于人们不在陌生,几乎每天都在接触它,比如每天都会准时播放的新闻联播,网络上的电影、音乐等,它在人们的生活中已经是不可或缺的一部分。
现在人们所采用的流式媒体技术主要由最具代表性的 Real Media 技术以及微软公司推出的Windows Media技术两大系列构成,与传统的多媒体技术比较而言,它们在技术上有以下几个共同特点。
1. 采用高压缩率、高品质的音视频编码器浏览过视频的人都知道,一般在网上传输音视频信号需要消耗很大的流量,这就要求编解码器对音视频内容进行高压缩率的编解码,并且还应在带宽允许的范围内充分保证音视频品质不受影响。显然传统的多媒体技术已不能胜任,而较新的流媒体编解码技术便能解决这个问题。在视频方面,新技术采用了较MPEG4更为先进的编码技术,同时具备了动态位速率编码、二次编码和关键帧控制等高级功能,使得编码内容的压缩率远高于MPEGl文档而品质却能接近MPEG2的视频效果;音频方面,高级的音频编码器同样能提供高压缩率以及高品质、高保真的音频流。
2. 具备多重比特率的编码方式除了高压缩率、高品质的音视频编码器技术外,流媒体的另一核心技术在于如何根据不同的网络连接来确定音视频信号的编解码,具体来讲就是需要编解码器根据不同的连接对象确定生成影音文件的输出质量和可用带宽。在流媒体技术中,其编码器允许在一个流文件中对视频流进行多重编码的创建和传输,通常应用的带宽范围可从28.8kbit/s到500kbit/s不等,可使客户端播放器能根据实际的连接带宽选择一个最适合的视频流进行播放。除此之外,音频流所占用的网络带宽相对较小,因此其音频编码器被设计为仅支持单一的编码方式。
3. 具备智能流的控制技术由于不同的网络连接实际能达到的传输量和连接速度存在较大的差异,而这种差异不利于接收流式媒体,于是就产生了智能流控制技术,该技术能根据客户和服务器间彼此的通信状况来建立实际的网络吞吐量,能自动检测网络状况并将视频流的属性调整到最佳品质;同时根据提示自动进行一系列的调整以使流的整体质量达到最佳,使用户最终收到与其连接速度相符的连续的内容流。
4. 支持脚本命令传送模式流媒体编码器除了可以选择一个最合适的视频流进行播放之外,还允许向编码内容插入脚本命令,脚本将作为流的一部分进行保存和传送。常见的脚本命令包括字幕显示、URL跳转以及自定义脚本命令,使用脚本可用于事件通知、自动地址链接和插入广告等功能。
5. 有别于Web的服务器方式
Web服务器主要用于发送包含静态图像、文本和Web页面脚本的数据包,因此被设计为尽快、尽可能多地发送数据。流媒体应该被实时传送,而不是以大量的字符组来传送,播放器应该在播放它们之前收到数据包。
Web服务器不支持多比特率视频,这意味着将不能对客户端进行智能流控制,也就不能监视传送质量和调整比特率。更为重要的是,Web服务器不支持用户数据报传送协议(UDP)也不具备对传送协议进行转换,因此,在客户端播放器受到网络状况的影响时,可能会出现既无音频也无视频而最终导致数据流传送中断的现象。
由于流媒体服务器是专门为传输基于流的内容所设计的,刚好弥补了Web服务器功能上的不足,它能根据向某个客户端播放器发送流时收到的反馈信息来衡量数据包的发送,并确定合适的客户端传输协议及连接宽,所以当播放器以这种方式收到数据包时,图像将更平滑和流畅。此外,当网络带宽受限时,流媒体服务器可以将流进行多重广播,让更多的用户同时连接并持续地接收流;而当进行网上实况转播时,也只有流媒体服务器才能配置实况流的传送,因为Web服务器是不支持多播和实况流传送的。
支持流媒体传输的网络协议
支持流媒体传输的网络协议总共有四种:实时传输协议RTP、实时传输控制协议RTCP、实时流协议RTSP、RSVP。本小节将逐一介绍每种协议的概念以及特点。
1. 实时传输协议RTP
实时传输协议 RTP(Real-time Transport Protocol)是用于在因特网上针对多媒体数据流的一种传输协议。RTP是在一对一或一对多的传输情况下工作的,它主要提供时间信息和实现流同步。RTP通常使用网络层协议 UDP 来传送数据。当应用程序开始一个 RTP 会话时将使用两个端口:一个给RTCP,一个给RTP。RTP只保证实时数据的传输,并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制的服务。通常RTP算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。
2 .实时传输控制协议RTCP
实时传输控制协议RTCP(Real-time Transport Control Protocol)和RTP一起提供流量控制服务和拥塞控制服务。在RTP会话期间,各参与者周期性地传送RTCP包,RTCP包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,服务器可以利用这些统计资料来动态地改变传输速率,甚至可以改变有效载荷类型。一般RTP和RTCP都会配合使用,这样它们就能够以有效的反馈和最小的开销使传输效率最佳化,特别适合传送网上的实时数据。
3. 实时流协议RTSP
实时流协议 RTSP(Real Time Streaming Protocol)是一种实时流协议,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTP和RTCP在体系结构上在RTSP之下,这是因为RTSP使用TCP或RTP完成数据传输。HTTP传送HTML,而RTSP传送的是多媒体数据。由客户机发出的HTTP请求,只有服务器作出响应,而使用RTSP时,客户机和服务器都可以发出请求,即RTSP可以是双向的,HTTP只是单向的。
4. RSVP
RSVP(Resource Reserve Protocol)是一种最新的在因特网上预定资源的协议,使用RSVP 能在一定程度上为流媒体的传输提供QoS。在某些试验性的系统如网络视频会议工具vic中就集成了RSVP。
流媒体播放方式
流媒体的播放方式包括四种:单播、组播、点播和广播。本小节主要介绍这四种播放方式的概念以及特点。
1. 单播
单播方式就是在客户端与媒体服务器之间需要建立一个单独的数据通道,从一台服务器送出的每个数据包只能传送给一台客户机。每个用户必须分别对媒体服务器发送单独的查询,而媒体服务器必须向每个用户发送所申请的数据包拷贝。这种巨大冗余首先造成服务器沉重的负担,响应需要很长时间,甚至停止播放。这种问题是非常头疼的,以至于管理人员也被迫购买硬件和带宽来保证一定的服务质量。
2. 组播单播方式是在客户端和媒体服务器之间建立一个独立的数据通道,而如果采用组播方式的话,单台服务器就能够对几十万台客户机同时发送连续数据流而无延时,这样媒体服务器只需要发送一个信息包,而不是多个,而且所有发出请求的客户端共享同一信息包。信息可以发送到任意地址的客户机,减少网络上传输的信息包的总量,网络利用效率大大提高,成本大为下降。
3. 点播相对于单播和组播方式而言,点播连接是客户端与服务器之间的主动连接。在点播连接中,用户可以通过选择内容项目来初始化客户端连接。用户可以开始、停止、后退、快进或暂停流等操作。点播连接提供了对流的最大控制,但这种方式由于每个客户端各自连接服务器,会迅速用完网络带宽。
4. 广播以上三种方式都是用户主动接收流,而广播则是用户被动接收据流,所以ASF既可以传送人们事先录制好的节目,也可以传送实时产生的节目。
ASF主要的功能是排列、组织、同步多媒体数据。它也可用于指定实况演示。ASF最适于通过网络发送多媒体流,也同样适于在本地播放。任何压缩/解压缩运算法则(编解码器)都可用来编码ASF流。
Windows Media Service 的核心是 ASF。音频、视频、图像以及控制命令脚本等多媒体信息通过ASF格式,以网络数据包的形式传输,实现流式多媒体内容发布。其中,在网络上传输的内容就称为ASF Stream。ASF 支持任意的压缩/解压缩编码方式,并可以使用任何一种底层网络传输协议,具有很大的灵活性。
2. 应用
ASF流文件的数据速率在28.8kbit/s~3Mbit/s之间,用户可以根据自己的应用环境和网络条件选择一个合适的速率,实现VOD(Video On Demand)点播和直播。下面介绍它的几个主要功能。
⑴ 点播功能
ASF技术支持任意的压缩/解压缩编码,可以使用任何一种底层网络传输协议,就是这一特点使得它既能在高速的局域网内使用,也可以在拨号方式连接的低带宽Internet环境下使用。在点播服务方式下,用户之间互不干扰,可以对点播内容的播放进行控制。这种方式最为灵活,但是占用服务器、网络资源多。
ASF的点播内容均存放在VOD服务器上,建立VOD站点进行网页发布,多台计算机可在不同的地点、不同的时刻,实时、交互式地点播同一个或者不同的ASF流文件,用户可以通过上网查看和选择内容进行点播。播放过程中可实现播放、停止、暂停、快进、后退等功能,播放速率达到25帧/s, 1h的视频信息按照300kbit/s采集,只占108MB的空间,1张640MB的光盘可存放将近6h的ASF文件。
⑵ 直播功能在直播服务下,用户只能观看播放的内容,与点播功能不同,直播功能下不能对媒体进行控制。可以使用ASF文件作为媒体内容的来源,实时的多媒体内容最适合使用直播服务方式。通过视频捕捉卡把摄像机、麦克风记录的内容输入到计算机,进行编码生成ASF流,然后通过该机把信号传送到网络上,用户通过网页收看直播内容。
计算机可同时接收相同或不同的节目频道,直播计算机可作为一个小电视台,连在网上的每一台计算机都可实时接收9个不同的节目频道。
⑶ 远程教育远程教育系统由制作计算机、VOD服务器、用户机组成。制作计算机安装视频采集卡、声卡及摄像机,用于制作流媒体文件;
VOD服务器用于存储和发布流媒体信息;用户机是连在网上的普通多媒体计算机,用户可以在网上观看视频、音频等资源进行学习。现在的网络资源非常丰富,有教员授课的视频文件、多媒体课件、学习内容提要、参考资料、复习/练习题、作业等信息,人们需要的东西应有尽有。
ASX 文件
ASX 是一种视频文件格式,一般可以用最新的Media Player做音乐。当使用用户计算机上的 Real Player 和 Windows Media 播放器进行在线 " 流 " 播放时,应进行 *.rm-->*.ram , *.asf-->*.asx 的文件生成转换,而且在生成的文件中还要包含指定的URL *.rm 和URL *.asf 或
URL *.smil 的内容。如果单个地创建文件,再录入URL, 既费时又辛苦,而且易出错。对于大批量的文件处理,那就更苦不堪言了。
现在有了ASX,只要将批量的rm或asf文件放入同一文件夹,然后录入该文件夹名,再填上ram或 asx 文件内包含的 URL 目录名 , 单击转换生成 , 就一切 OK 了。 批处理转换就这么简单 , 真是网站人员一大福音。ASX文件是一个文本文件,它主要的目的是对流信息进行重定向,类似RPM(RM的中转文件)文件。
当在HTML中让一个HYPERLINK与ASX联系时,浏览器会直接将ASX中包含了媒体内容对应的 URL 送给 Media Player,Media Player
会根据 ASX 文件的信息用相应的协议去打开指定位置上的多媒体信息流或多媒体文件。利用ASX文件来重定向流信息的原因主要是,目前通用的浏览器通常均不能直接支持用于播放流信息的协议MMS。
采用 ASX 文件以后,当浏览器发现一个连接与 ASX 有关时,它知道需要用 Media Player 来播放流信息,于是就会启动Media Player,
Media Player就可以用MMS协议来播放流信息了。
配置服务器
本节视频教学录像:1分钟流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间。另外,通过网络播放流媒体文件时,文件本身不会在本地磁盘中存储,这样就节省了大量的磁盘空间开销。正是这些优点,使得流媒体文件被广泛应用于网络播放。
Windows Server 2003系统内置的流媒体服务组件Windows Media Services(Windows媒体服务,简称WMS)就是一款通过
Internet或Intranet向客户端传输音频和视频内容的服务平台。WMS支持.asf、.wma、.wmv、.mp3等格式的媒体文件,能够像Web服务器发布HTML文件一样发布流媒体文件和从摄像机、视频采集卡等设备传来的实况流,而用户可以使用Windows Media Player 9及以上版本的播放器收看这些媒体文件。本节以Windows Server 2003(SP1)系统为例,介绍如何使用WMS打造网络媒体中心。
默认情况下,Windows Server 2003(SP1)没有安装 Windows Media Services 组件,用户可以通过使用“Windows组件向导”和“配置您的服务器向导”两种方式来安装该组件。下面以使用“配置您的服务器向导”安装为例,介绍操作步骤。
1 在【开始】菜单中依次单击【管理工具】▶【配置您的服务器向导】命令,打开【配置您的服务器向导】对话框,在【欢迎】界面
中直接单击【下一步】按钮。
2 配置向导开始检测网络设备和网络设置是否正确,若未发现错误则打开【配置选项】对话框,选中【自定义配置】单选钮,并单击【下一步】按钮。
3 打开【服务器角色】对话框,在【服务器角色】列表中显示出所有可以安装的服务器组件,选中【流式媒体服务器】选项,并单击【下一步】按钮,如下图所示。
4 在打开的【选择总结】对话框中直接单击【下一步】按钮,配
注意用户可以重复上述步骤测试“Sample_Broadcast”广播发布点是否正常。另外,在 Windows Server 2003(SP1)系统中,即使安装了声卡驱动程序,系统依然没有启动音频设备。用户需要在【控制面板】窗口中打开【声音和音频设备】对话框,并选中【启用Windows 音频】复选框。
就像Web站点向网络上发布网页一样,流媒体服务器是通过建立发布点来发布流媒体内容和管理用户连接的。流媒体服务器能够发布从视频采集卡或摄像机等设备中传来的实况流,也可以发布事先存储的流媒体文件,并且可发布实况流和流媒体文件的结合体。一个媒体流可以由一个媒体文件构成,也可以由多个媒体文件组合而成,还可以由一个媒体文件目录组成。
流媒体服务器能够通过点播和广播两种方式发布流媒体。其中,点播方式允许用户控制媒体流的播放,具备交互性;广播方式将媒体流发送给每个连接请求,用户只能被动接收而不具备交互性。每种发布方式又包括单播和多播两种播放方式。其中,单播方式是为每个连接请求建立一个享有独立带宽的点对点连接;而多播方式则将媒体流发送到一个D类多播地址,允许多个连接请求同时连接到该多播地址共享一个媒体流,属于一对多连接。发布方式和播放方式可以组合成四种发布点类型,即“广播——单播”、“广播——多播”、“点播——单播”和“点播——多播”。
1. 创建发布点
创建“点播——单播”类型发布点的步骤如下所述。
1 打开【Windows Media Services】窗口,在左窗格中展开服务器目录,并选中【发布点】选项,然后在右窗格空白处单击鼠标右键,选择【添加发布点(向导)】命令,如下图(左)所示。
2 打开【添加发布点向导】对话框,在【欢迎】对话框中直接单击【下一步】按钮。打开【发布点名称】对话框,在【名称】文本框中输入能够代表发布点用途的名称(如Movie),并单击【下一步】按钮,如下图(右)所示。
3 在打开的【内容类型】对话框中,用户可以选择要发布的流媒体类型。这里选中【目录中的文件】单选钮,并单击【下一步】按钮,如下图所示。
【编码器(实况流)】选项将流媒体服务器连接到安装有
Windows Media 编码器的计算机上。Windows Media 编码器可以将来自视频采集卡、电视卡、摄像机等设备的媒体源转换为实况流,然后通过发布点广播。该选项仅适用于广播发布点。
【播放列表】选项创建能够添加一个或多个流媒体文件的发布点,以便发布一组已经在播放列表中指定的媒体流。
【一个文件】选项创建发布单个文件的发布点。默认情况下,Windows Media Services 支持发布.wma、.wmv、.asf、.wsx和.mp3格式的流媒体文件。
【目录中的文件】选项创建能够实现点播播放多个文件的发布点,使用户能够将流媒体文件名包含在网址中来播放单个文件,或者按既定顺序播放多个文件。
4 在打开的【发布点类型】对话框中,选中【点播发布点】单选钮,并单击【下一步】按钮,如下图所示。
选中【广播发布点】单选按钮,流媒体服务器主动向客户端发送媒体流数据,而客户端被动接收媒体流,不能对媒体流进行控制。广播发布点的优点是对所有的客户端只发布一条媒体流,从而节省网络带宽。
选中【点播发布点】单选按钮,客户端主动向流媒体服务器发出连接请求,流媒体服务器响应客户端的请求并将媒体流发布出去。用户能够像在本机播放媒体文件一样控制媒体流的开始、停止、后退、快进或暂停操作。点播发布点的特点是给每个客户端发布一条单独的媒体流,且每个客户端独享一条网络带宽。
5 在创建的点播发布点中按照顺序发布主目录中的所有文件,则可以选中【允许使用通配符对目录内容进行访问】复选框,设置完毕单击【下一步】按钮,如下图(左)所示。
6 在打开的【内容播放】对话框中,用户可以选择流媒体文件的播放顺序。选中【循环播放】和【无序播放】复选框,从而实现无序循环播放流媒体文件,单击【下一步】按钮,如下图(右)所示。
在【欢迎】对话框中直接单击【下一步】按钮。
2 打开【点播目录】对话框。因为在前面步骤 5图中所示的【目录位置】对话框中选中了【允许使用通配符对目录内容进行访问】复选框,所以可以选中【目录中的所有文件】单选按钮,并单击【下一步】按钮,如下图(左)所示。
3 在打开的【访问该内容】对话框中显示出连接到发布点的网址,用户可以单击【修改】按钮将原本复杂的流媒体服务器修改为简单好记的名称,并依次单击【确定】▶【下一步】按钮,如下图(右)所示。
4 打开【保存公告选项】对话框,用户可以指定保存公告和网页文件的名称和位置。选中【创建一个带有嵌入的播放机和指向该内容的链接的网页】复选框,然后单击【浏览】按钮选择Web服务器的主目录作为公告和网页文件的保存位置,设置完毕单击【下一步】按钮,如下图(左)所示。
5 在打开的【编辑公告元数据】对话框中,单击每一项名称所对应的值并对其进行编辑。在用户使用 Windows Media Player 播放流媒体中的文件时,这些信息将出现在标题区域。设置完毕单击【下一步】按钮,如下图(右)所示。
6 打开【正在完成“单播公告向导”】对话框,提示用户已经为发布点成功创建了一个公告。选中【完成此向导后测试文件】复选框,并单击【完成】按钮。打开【测试单播公告】对话框,分别单击【测试】按钮测试公告和网页,如下图(左)所示。
7 通过测试公告和带有嵌入的播放机的网页,如果都能正常播放媒体目录中的流媒体文件,则说明流媒体服务器已经搭建成功,如下图(右)所示。
注意在测试网页文件时可能会打开【信息栏】对话框,提示用户
Internet Explorer 阻止了可能不安全的弹出窗口。用户只需单击【确定】按钮关闭该对话框,然后右键单击靠近浏览器顶端的信息栏,选择【允许组织的内容】命令即可。
15.4 流媒体管理器
本节视频教学录像:8分钟随着科技的发展,现在的流媒体管理器有很多种,本节就以流媒体转发管理服务器为例来简单说明其功能。
下图是流媒体转发服务器的结构图,主要包括流媒体服务器和客户端以及流媒体数据接收器。
一般在大型的网络监控系统里,流媒体服务器都包括三个部分:
流媒体转发器、流媒体网关、流媒体路由。
流媒体服务器的主要功能包括以下几个方面。
⑴ 在 1MB 的单路码流,单播转发 3000 路的情况下,CPU 占用在 20% 以下,音视频都很流畅,拥有很高的效率。
⑵ 流媒体服务器能够根据交换机的性能、网络结构,自动启动单播或者组播转发,不需要人工干预,拥有很强大的网络功能。
⑶ 流媒体服务器支持主流的 PC 系列监控设备的接入,还支持主流嵌入式监控设备的接入,能够支持很多的异构设备。
技巧:安装流媒体服务器注意的问题
在安装流媒体服务器时,选择文件目录的时候,如果选择不正确的话,会出现【下一步】按钮处于不能点击的状态。在创建网站发布点时,有一些选择的设置是必须的,如15.3节中“2.创建发布点单播公告”下步骤 3和步骤 4,最好按照图中的选项设置,否则在测试的时候会出现错误。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛