用Windows Media搭建流媒体系统

上传人:cl****1 文档编号:504570409 上传时间:2023-04-03 格式:DOC 页数:15 大小:47KB
返回 下载 相关 举报
用Windows Media搭建流媒体系统_第1页
第1页 / 共15页
用Windows Media搭建流媒体系统_第2页
第2页 / 共15页
用Windows Media搭建流媒体系统_第3页
第3页 / 共15页
用Windows Media搭建流媒体系统_第4页
第4页 / 共15页
用Windows Media搭建流媒体系统_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《用Windows Media搭建流媒体系统》由会员分享,可在线阅读,更多相关《用Windows Media搭建流媒体系统(15页珍藏版)》请在金锄头文库上搜索。

1、用 Windows Media 搭建流媒体系统宽带视频的发展使流媒体服务器的部署不再仅仅是 几大运营商的专利(如视频点播和广播业务),中小企业也 开始搭建企业网的内部多媒体通信环境或者商用流媒体系 统。Windows Media是一种通过Internet向客户端传输音频 和视频内容的平台,它的设计目的是为了协同工作,以提供 最佳的数字媒体体验,目前这一技术被广泛地应用于流媒体 系统。Windows Media 的设计目的是为了协同工作,以提供最 佳的数字媒体体验。目前这一技术被广泛地应用于电信运营 商及 ISP 宽带网络上的视频点播和广播业务以及企业网的内 部多媒体通信环境。Windows M

2、edia Services 是一种通过 Internet 或Intranet 向客户端传输音频和视频内容的平台。客户端可以 是使用播放器(例如Windows Media Player)播放内容的其 他计算机,也可以是用于代理、缓存或重新分发内容的运行 Windows Media Services 的设备(称为 Windows Media 服务 器),还可以是使用 Windows Media 软件开发工具包 (SDK) 开发出来的自定义应用程序。Windows Media 服务器流式传输给客户端的内容可以 是实时流,也可以是预先存在的内容,例如数字媒体文件。 如果计划传输实况内容,则服务器将连接

3、到能够以服务器支 持的格式广播实况流的编码软件(例如 Windows Media 编 码器)。在 Windows Media 平台中,包括了下列软件包 : Windows Media Services (媒体播放服务器)将流媒体发布到计算机网络上; Windows Media Player (媒体播放器)全功能的网络多媒体播放软件; Windows Media Encoder (编码器)将源音频和视频转换成可以下载或进行流传输的数字媒体; Windows Media Right Manager (数字版权管理服务 器)一一一个保障安全发布数字媒体文件的DRM系统; Windows Media

4、SDK (软件开发包)提供创建使 用Windows Media技术的自定义程序和Web页面的详细信 息; Windows Media Producer用于 PowerPoint 的多媒体演示创建工具。部署 Windows Media基于 Windows Media 技术的流媒体系统一般都包括运 行编码器(如 Windows Media 编码器)的计算机、运行 Windows Media Services 的服务器和大量运行播放器(如 Windows Media Player)的客户计算机。编码器可将实况的和 预先录制的音频、视频内容转换成 Windows Media 格式。 Windows M

5、edia 服务器通过网络来分发内容,然后播放器接 收内容。图 1 典型的播放流程 在典型方案中,用户单击网页上的链接来请求内容,然 后 Web 服务器将请求重定向到 Windows Media 服务器,并 启动用户计算机上的播放器(如图1)。此时,Web服务器 不再参与流式媒体传输过程,这是因为 Windows Media 服 务器与播放器建立了直接连接并已开始将内容传输给用户。Windows Media 服务器可从多种不同的源接收内容(如 图 2)。预先录制的内容可以存储在本地服务器上,也可以从 联网的文件服务器上提取。实况事件则可以使用数字录制设 备记录下来,经编码器处理后发送到 Wind

6、ows Media 服务 器进行广播。 Windows Media Services 还可以重新广播从远 程 Windows Media 服务器上的发布点传输过来的内容。图2 不同的内容源 典型的内容发布通过以下的方式来实现: 在网页中内嵌一个播放列表文件或信息文件链接, 如 asx / wsx / nsc 格式的文件 ; 用户点击播放列表文件后将其下载,浏览器根据MIME 类型启动媒体播放器; 媒体播放器读取播放列表文件,根据播放列表文件 中的URL连接到媒体服务器进行播放。播放列表(Playlist)通常是带有.asx文件扩展名的Windows Media 元文件,该文件为播放器提供在连接

7、到Windows Media 服务器接收内容时需要的信息。播放列表文 件是基于扩展标记语言 (XML) 的,它使用不同的标记来控 制播放机的行为。 .asx 扩展名注册在 Windows Media Player 上,因此用户单击播放列表文件时播放器将自动启动。下列代码示例是最基本的播放列表文件类型,它仅将播 放器定向到内容的位置:这里的 URL 是mms:/servername/publishingpointname/filename.wmv,媒体播放器根据这个地址在媒体服务器上取得内容进行播放。nsc 文件是用于组播时的信息文件格式,组播播放列表 向导可创建播放列表文件和多播信息文件。组播

8、信息文件包 含播放器对流进行解码时需要使用的信息。在接收以组播流 方式传递的内容之前,媒体播放器必须访问组播信息文件以 提取下列信息: 组播 IP 地址; 组播端口; 生存时间值; 默认纠错跨度; 组播日志记录 URL ; 单播替代 URL ; 正在传递的内容使用的流格式。wsx文件也被称为Server-Side Playlists,不同于asx文件, wsx 文件提供的媒体播放控制是由媒体服务器来进行控制 的。这一功能的实现必须要基于RTSP协议来完成。wsx文 件基于 SMIL 语言写成,因此可以提供更多的图形同步演示、 用户交互、广告插入等功能。下面给出了一个实际的 wsx 文 件示例:

9、wsx 文件可以由动态网页如 ASP 和 CGI 程序动态的生 成,所以,媒体服务器可以根据用户的输入条件动态地响应 并生成 wsx 文件,通过这种方式动态地产生媒体播放内容。 目前 NetCache 无法对 wsx 文件和其中的媒体内容进行缓存, 而只能作为代理将用户的请求发送回源服务器处理。图 3 给出了 wsx 文件动态创建的一个流程示例。图 3 WSX 文件动态创建流程图中第 3 步中,客户端按照 html 网址中的内容向 Content Distributor(媒体服务器)请求得到playlist.wsx文件内容;然后 进行第4步,媒体服务器将用户信息传送给Ad provider(广

10、告 提供商),广告提供商根据用户的信息生成 wsx 文件,可能是 通过 ASP 动态生成的,然后传递给媒体服务器,最后媒体服 务器将 wsx 文件传送给客户端。代理和缓存Windows Media 9 服务器通过增加由 SDK 创建的代理和 缓存插件,可以作为WM (Windows Media)的代理或缓存设备来使用。因此也可以利用 WM9 来创建一个专门为Windows Media 使用的 CDN ( Content Delivery Network,即 内容分发网络)网络。当客户端请求点播内容时,WM9缓存/代理插件验证所 请求的内容是在本地缓存并且是当前的,要实现这个目的, 插件会首先检

11、查内容的缓存过期属性。如果将内容设置成经 过一段特定时间后过期,那么在这段时间过后,插件将请求 缓存/代理服务器打开一个到源服务器的连接,并验证缓存中 的内容与源服务器上的内容是否匹配。如果内容匹配,则缓 存命中; 如果内容不匹配,则缓存未命中。如果源服务器不 可用或不能提供请求的内容,则服务器会向客户端返回一个 错误信息,声明该内容找不到。如果缓存命中,则插件请求缓存/代理服务器将内容从其 缓存传输给客户端(如图 4)。如果缓存未命中,则内容将被从缓存中清除,然后缓存 /代理服务器再从源服务器下载更新的内容。缓存/代理服务 器会启动另一个到源服务器的连接,以便作为代理服务器来 将内容传递给客

12、户端。这里需要注意的是缓存/代理服务器实 际上打开了 2 个到源服务器的连接,同样一份内容要被 2 个 不同连接下载,一个用于代理,一个用于存储到本地缓存(如 图 5 )。除了上面的处理方式以外,缓存/代理服务器还可以执行 如下的动作: 拒绝用户对此内容的访问 ; 重定向用户的请求到另外一个 URL(http 302 )或Proxy(http 305); 从源服务器下载这个内容到本地缓存 ; 只对用户的请求进行代理。如果在缓存/代理服务器试图传输多比特率 (MBR) 内 容时发生了缓存未命中,则缓存/代理服务器将立即从源服务 器下载所有不同比特率的流。如果对源服务器或缓存/代理服 务器上的带宽

13、设置了带宽限制,则多比特率流需要的总带宽 可能超过这一限制。如果这样,缓存/代理服务器将无法将内 容下载到其缓存中,并且只能以客户端请求的带宽来传输内 容。Windows Media 服务器上安装了缓存/代理插件后,可以 使 WM9 服务器能够通过其他 Windows Media 服务器来代 理源服务器中的实况流。客户端请求一个实况流时,缓存/ 代理插件将检查缓存/代理服务器是否已代理了这个流。如果 服务器没有代理该流,则插件将请求缓存/代理服务器打开到 源服务器的连接。建立了源服务器的连接后,缓存/代理服务 器会将内容从源服务器传输给客户端。如果缓存/代理服务器 代理了该流,那么插件将请求服

14、务器拆分该流,以便所有发 出请求的客户端都能接收到内容。这样,缓存/代理服务器和 源服务器之间只需建立一个连接。由于实况流没有与之关联 的文件,因此内容不缓存。Windows Media 缓存/代理服务器能够缓存 Sever side playlist (wsx)。wsx文件中可能包含多个内容项,但是服务 器在做新鲜性检查时无法对其中的每个内容对象进行检查, 而只是针对 wsx 文件作新鲜性检查,如果发现过期,则会将 整个文件中的内容更新。另外需要指出的是, Windows Media 缓存/代理服务器下 载内容到本地缓存时,必须将内容下载完毕后才能够播出, 而不能像NetCache 样下载一

15、部分也可以播出。因为WM9 使用的下载 Plug-in On DownloadContent Progress 不支持部分 下载功能。WM9 源服务器和缓存/代理服务器之间会有事件的通 知,可以被源服务器用于日志记录等应用。可以记录的事件 有如下三种:WMS_EVENT_REMOTE_CACHE_OPEN :表示一个客户机在缓存/代理服务器上打开了连 接; WMS_EVENT_REMOTE_CACHE_CLOSE:表示一个客户机在缓存/代理服务器上关闭了连接; WMS_EVENT_REMOTE_CACHE_LOG:提供客户机和缓存/代理服务器上的日志信息,在 客户端播放完后将播放的日志信息再送

16、回源服务器,LOG信 息会详细记录客户机的播放情况。负载均衡策略配置了缓存/代理插件的 WM9 服务器可以作为反向代理 服务器来使用,也可以进行简单的负载均衡功能。但是它没 有提供GSLB (整体负载均衡)功能,因此如果构建电信级 的 CDN 时还需要额外的硬件来实施 GSLB。微软的 WM9 的负载均衡策略有下面两种: 基于硬件的负载均衡: 也称为反向代理,此方法依赖 于网络中位于服务器群集和客户端之间的代理服务器。反向 代理服务器接收客户端的流请求,然后将客户端重定向到适 当的服务器(L7 Redirection),或者为客户端代理该服务器中 的内容。为避免创建单个的故障点,可以同时使用两个或多 个反向代理计算机。 基于软

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号