Windows Media 元文件简介

发布日期: 12/14/2004 | 更新日期: 12/14/2004

David Wrede
Microsoft Corporation

适用于:

Microsoft® Windows Media® Player 9 Series

反馈

如果您对本文有什么评论和反馈,则请给我们发送电子邮件

摘要

Windows Media 元文件为数字媒体文件提供了元数据和播放说明。元文件有两种类型:客户端和服务器端。客户端元文件为 Windows Media® Player 提供说明,而服务器端元文件则为 Windows Media 服务器提供说明。本文讲述了如何在 Windows Media Player 9 Series 中使用客户端元文件。

*

简介

Windows Media 元文件通常称为播放列表,是将网页与某个 Windows Media 服务器或者 Web 服务器上基于 Windows Media 的内容进行链接的文本文件。元文件的作用是将流式媒体内容从浏览器重定向到其他位置,大多数情况下无法向 Microsoft® Windows Media Player 呈现该内容。Windows Media 元文件的扩展名为 .wvx、.wax 或 .asx。当浏览器从网站下载具有上述某个扩展名的文件时,该浏览器就会打开 Windows Media Player。然后 Windows Media Player 会找到该文件中指定的内容,并进行播放。

Windows Media 元文件包括一种可扩展标记语言 (XML) 脚本,这种脚本只能由 Windows Media Player 进行转换。元文件脚本可以简单也可以复杂,具体取决于您的需要。最基本的元文件只包含服务器上某些数字媒体内容的统一资源定位符 (URL)。复杂的元文件则可能包含组织到播放列表中的多个文件或流、有关如何播放文件或流的说明、文本和图形元素,以及与 Windows Media Player 用户界面元素相关的超链接。

在本文的最后,您会发现一个示例元文件代码,该元文件演示了本文后面部分讲述的功能。

本文包括以下主题:

本页内容
简介简介
创建简单的元文件创建简单的元文件
文件或剪辑属性文件或剪辑属性
广告插入广告插入
播放列表播放列表
服务器或协议翻转服务器或协议翻转
将所有功能组合在一起将所有功能组合在一起
更多信息更多信息
法律声明法律声明
返回页首返回页首

创建简单的元文件

要开始创建一个简单的元文件,请打开您喜欢用的文本编辑器,如 Microsoft 记事本,然后键入下列项目:

<ASX version="3.0">
   <Entry>
      <ref HREF="Path"/>
   </Entry>
</ASX>
 

使用下表所示的语法,将第三行中的 Path 替换为基于 Windows Media 内容的路径或 URL。

内容源语法

Windows Media 服务器上的文件

rtsp://ServerName/Path/FileName.wmv

从 Windows Media 服务器访问的多播流

http://WebServerName/Stations/kxyz.nsc

从 Windows Media 服务器上的某个发布点访问的单播流

mms://ServerName/PublishingPointAlias

Web 服务器上的文件

http://WebServerName/Path/Filename.wmv

网络共享上的文件

file://\\ServerName\Path\Filename.wmv

本地硬盘上的文件

file://c:\Path\Filename.wmv

将上述内容键入记事本之后,如果该文件要用于重定向一个具有 .wmv 扩展名的视频文件,则将其另存为 Filename.wvx。如果该文件要重定向一个具有 .wma 扩展名、仅包含音频的文件,则将其另存为 .wax 扩展名。通常情况下,Filename 为该 Windows Media 文件或流的名称,但是也可以是您选择的任何其他名称。检查以确保在 Windows® 资源管理器中双击该元文件名称时,该元文件能够运行。Windows Media Player 应该会打开并开始流式处理该内容。

确认该元文件能够运行之后,将其与网页一起保存到 Web 服务器中,然后通过使用 <a href>标记将该元文件与网页进行链接,或者使用 <OBJECT> 标记将其嵌入网页中。

返回页首返回页首

文件或剪辑属性

创建内容时,您可以将文件属性(如标题、作者和版权)直接插入 Windows Media 文件中,也可以将这些属性插入用于链接该内容的 Windows Media 元文件中。您输入到元文件中的任何属性都会覆盖 Windows Media 文件中包含的属性。您还可以为包含多个 Windows Media 流的整个播放列表设置属性。播放内容时,某些属性会显示在 Windows Media Player 用户界面上,其他一些属性则会显示在 Windows Media Player“属性”表中。

下面是一个播放列表元文件示例,其中包含了播放列表全局属性,还包含了 Entry 元素中所包含的各个剪辑的属性。在这里,这些属性是使用 Abstract、Author、Banner、Copyright、MoreInfo 和 Title 元素进行设置的。

<ASX version = "3.0">
   <ABSTRACT>This text will show up as a Tooltip and in the Properties 
       dialog box.</ABSTRACT>
   <TITLE>Global title of the show</TITLE>
   <AUTHOR>The name of the author</AUTHOR>
   <COPYRIGHT>2003 by Your Company</COPYRIGHT>
   <MoreInfo href = "http://www.microsoft.com/windows/windowsmedia" />
   <Entry>
      <Ref href = "rtsp://ServerName/Path/FileName.wmv " />
      <Banner href="http://Servername/Path/Banner1.gif">
          <MoreInfo href ="http://www.microsoft.com/windows/windowsmedia" />
          <Abstract>This is the description for this clip.</Abstract>
      </Banner>
   </Entry>
   <Entry>
      <Title>Markers Discussion</Title>
      <Copyright>2003 Microsoft Corporation</Copyright>
      <MoreInfo href = "http://www.microsoft.com/windows/windowsmedia" />
      <Ref href = "rtsp://ServerName/Path/markers_info.wmv" />
   </Entry>
</ASX>

MoreInfo 元素添加的功能不只是简单的文本。在此示例中,MoreInfo 元素添加了到该剪辑的超链接,并且会在 Windows Media Player 上显示文本。最终用户单击该文本即可将他们的浏览器链接到相应的网站,例如提供有关广告或音乐视频的详细信息的网站。

使用 Windows Media 元文件脚本,您可以在流播放的同时向 Windows Media Player 添加 Banner 元素。使用此元素,您可以在该播放器的“视频和可视化效果”窗格底部放置一个横幅(宽为 194 像素,高为 32 像素)图像。然后,您可以使用 MoreInfo 子元素添加一个到该横幅的超链接。

在这个播放列表示例中,播放列表第一个 Entry 元素中的 Banner 元素会在视频显示下面紧挨着的 Windows Media Player 横幅栏中显示一个图像。该 Banner 元素还包含了 MoreInfo 和 Abstract 子元素,这些元素分别添加了到该横幅的超链接和摘要文本。

返回页首返回页首

广告插入

您可以在流中发送一些脚本命令,以指示 Windows Media Player 从该流切换出去,并根据元文件中的脚本播放其他流或文件。这种脚本技术可用于在流中插入广告。例如,在一个球赛的 Internet 直播中,可以在每个商业广告的开头都发送一个脚本命令,指示每个客户端 (Windows Media Player) 播放其元文件中列出的商业广告。客户端播放完商业广告之后,元文件中的脚本会指示每个客户端切换回该直播。更深一步的话,还可以使用 Active Server Pages(ASP 页)和服务器端脚本为每个客户端临时创建元文件。可以确定地说,通过使用元文件脚本,可以为每个连接该球赛的最终用户都提供个性化的广告插入。

广告插入是通过使用 Event 元素实现的。下面的示例会在客户端收到具有 Event 类型和 Time-Out 参数的脚本命令时,向该广播单播流 BallGame 中插入广告 Advert.asf。广告播放完毕时,该客户端会继续播放前面的条目。

<ASX VERSION="3.0">
<ENTRY>
   <REF HREF="http://sample.microsoft.com/BallGame" />
</ENTRY>
<EVENT NAME="TimeOut" WHENDONE="RESUME">
   <ENTRY CLIENTSKIP="NO">
      <REF HREF="http://Server/Content/Advert.asf" />
   </ENTRY>
</EVENT>
</ASX>
返回页首返回页首

播放列表

播放列表的功能非常强大,也非常灵活。使用播放列表,您可以安排连续播放内容,还可以在某个特定的时间段之后或者在某个特定的时间点,向演示内容中插入广告或具有特殊意义的剪辑。如果 Windows Media 服务和 Windows Media Player 一起运行,则可以最短的缓冲时间或剪辑之间最短的中断时间播放播放列表中的剪辑。

最简单的播放列表是通过向元文件中添加多个 Entry 元素的方式创建的。下面是一个简单的播放列表示例:

<ASX version = "3.0">
<Title>Title</Title>
   <Entry>
      <Ref href = "rtsp://ServerName/Path/title1.wmv" />
   </Entry>
   <Entry>
      <Ref href = "rtsp://ServerName/Path/title2.wmv" />
   </Entry>
   <Entry>
      <Ref href = "rtsp://ServerName/Path/title3.wmv" />
   </Entry>
   <Entry>
      <Ref href = "rtsp://ServerName/Path/title4.wmv" />
   </Entry>
</ASX>
返回页首返回页首

服务器或协议翻转

当由于一些原因无法访问或者播放某个流时,您可以使用元文件提供一种自动切换到其他内容源的方式。这种方式称为翻转,您可以使用这种方式来指定其他服务器(甚至不同类型的服务器)上的其他内容。例如,您可以指定另一个 Windows Media 服务器上的第一备用内容。如果该内容无法播放,客户端则可以翻转到某个 Web 服务器上的第二备用内容:

<ASX version="3.0">
   <Entry>
      <ref HREF="rtsp://Server1/Path/File1.asf"/>
      <ref HREF="mms://Server2/Path/File1.asf"/>
      <ref HREF="http://WebServer/Path/File1.asf"/>
   </Entry>
</ASX>

Windows Media Services 9 Series 可以使用 RTSP、HTTP 或 MMS 进行流式处理。尝试连接 Windows Media Player 9 Series 时,它会使用 RTSP。如果尝试成功,服务器则使用 HTTP 连接该播放器。该播放器的更早版本不支持 RTSP,但是支持 MMS。如果服务器无法使用 MMS 连接该播放器,则会尝试使用 HTTP 进行连接。Windows Media Player 会根据其 Windows Media 属性设置,在尝试翻转元文件中的 URL 之前,自动尝试翻转到其他协议。

返回页首返回页首

将所有功能组合在一起

下面是一个元文件示例,其中包括了各种功能:

通过 Abstract、Author、Copyright、MoreInfo 和 Title 元素设置的文件和剪辑属性。

通过使用 Base 元素设置的 URL 相对路径,并且该 URL 是通过脚本命令接收的 URL。

使用 MoreInfo 和 Banner 元素设置的、从横幅广告到某个网页的超链接。

用于在 Windows Media Player 中添加自定义图形的 Banner 元素。

通过连续插入多个 Entry 元素创建的播放列表。第一个 Windows Media 文件仅播放 30 秒钟,这个时间在 Duration 元素中指定。

通过在一个 Entry 元素中连续放置多个 Ref 元素设置的服务器和协议翻转。

通过在 Entry 元素中设置 ClientSkip="no" 对剪辑进行配置,从而使得最终用户无法对此剪辑进行快进操作。

<ASX version = "3.0" BannerBar = "FIXED">
   <ABSTRACT>This text will show up as a ToolTip for the show.</ABSTRACT>
   <TITLE>Show Title</TITLE>
   <AUTHOR>Show Author</AUTHOR>
   <COPYRIGHT>2003 by Your Company</COPYRIGHT>
   <Base href= "http://samples.microsoft.com/" />
   <MoreInfo href = "http://www.microsoft.com/windows/windowsmedia" />
   <Entry ClientSkip = "no">
      <Ref href = "rtsp://Server1/path/File1.asf" />
      <Ref href = "rtsp://Server2/path/File1.asf" />
      <Ref href = "http://Server3/path/File1.asf" />
      <Duration value = "00:00:30" />
      <Banner href="http://AdServer/Path/Banner1.gif">      
          <MoreInfo href = "http://www.microsoft.com/windows/windowsmedia" />
          <Abstract>This is a tooltip for clip 1.</Abstract>
      </Banner>
   </Entry>
   <Entry>
      <Title>Markers Discussion</Title>
      <Copyright>2003 by Your Corporation</Copyright>
      <MoreInfo href = "http://www.microsoft.com/windows/windowsmedia" />
      <Ref href = "rtsp://Server1/Pubpoint/marker.asf" />
      <Ref href = "mms://Server1/Pubpoint/marker.asf" />
   </Entry>
</ASX>
返回页首返回页首

更多信息

要了解有关元文件的更多信息,请参阅 MSDN 网站上的 Windows Media 元文件参考资料部分,或者从 Microsoft 网站下载 Windows Media Player 9 Series 软件开发工具包 (SDK)。该 SDK 包含了元文件参考内容。

返回页首返回页首

法律声明

本软件部分基于 Independent JPEG Group 的工作成果。

GIF 解压缩代码,1990,David Koblas 版权所有。如果在所有副本中均包含上述版权声明,并在支持文档中同时包含该版权声明和本许可声明,则允许出于任何目的免费使用、复制、修改和发布本软件及其文档。本软件按“原样”提供,不包含任何明示或暗示的担保。

转到原英文页面


返回页首返回页首